Converts bunyan logs to GELF-compatible format.
Unlike other similar packages, bunyan-gelf-formatter
doesn't send logs to Graylog on its own, so it's ideal for usage with centralized log processors like Fluentd.
Raw bunyan logs cannot be processed by Fluentd GELF plugin due to incompatible level
field. This package takes care of properly formatting the log level as well as other default GELF fields and flattening the JSON payloads.
npm i -S bunyan-gelf-formatter
Add it as a bunyan stream:
const bunyan = require('bunyan')
const { GelfStream } = require('bunyan-gelf-formatter')
const gelfStream = new GelfStream({})
gelfStream.pipe(process.stdout)
const logger = bunyan.createLogger({
name: 'logger',
streams: [{ type: 'raw', stream: gelfStream }]
})