AMQP stream for the Bunyan logger
$ npm install bunyan-amqp-logger
"use strict";
var bunyan = require('bunyan');
var bunyanamqp = require('bunyan-amqp-logger');
var amq_stream = bunyanamqp.createStream({
login : 'admin',
password : 'UbpdMksr0ons',
exchange : {
routingKey : 'logs'
}
}).on('connect', function () {
console.log("Connected to amqp");
}).on('close', function (e) {
console.log("Closed connection to amqp");
}).on('error', console.log);
var log = bunyan.createLogger({
name : 'example',
streams : [{
level : 'debug',
stream : process.stdout
}, {
level : 'debug',
type : 'raw',
stream : amq_stream
}]
});A raw bunyan stream can be created using the module createStream(options)method.
The options object accepts the following fields:
| Parameter | Type | Default | Description |
|---|---|---|---|
| host | string | localhost |
AMQP host |
| port | number | 5672 |
AMQP port |
| vhost | string | / |
AMQP virtual host |
| login | string | guest |
AMQP username |
| password | string | guest |
AMQP password |
| sslEnable | boolean | false |
Enable AMQP SSL |
| sslKey | string | '' |
AMQP SSL private key file path |
| sslCert | string | '' |
AMQP SSL certificate file path |
| sslCA | string | '' |
AMQP SSL CA file path |
| sslRejectUnauthorized | boolean | true |
Verify AMQP SSL certificate against CA |
| exchange | object | undefined |
AMQP exchange options |
| level | string | info |
Message level |
| server | string | os.hostname() |
Message source server |
| application | string | process.title |
Message source application |
| pid | string | process.pid |
Message pid |
| tags | string array | ["bunyan"] |
Message tags |
| type | string | undefined |
Message type |
| bufferSize | number | 100 |
Outstanding message buffer size |
| messageFormatter | function | undefined |
Optional message formatting function |
The exchange object accepts the following fields:
| Parameter | Type | Default | Description |
|---|---|---|---|
| name | string | undefined |
AMQP exchange name |
| routingKey | string | message.level |
AMQP message routing key |
| properties | object | {} |
AMQP exchange options |
The stream will emit open, close and error events from the underlying AMQP connection.
This module is heavily based on bunyan-logstash-amqp.