log4js-fluent-appender

Custom appender for log4js based on fluent-logger

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
log4js-fluent-appender
1.0.16 years ago6 years agoMinified + gzip package size for log4js-fluent-appender in KB

Readme

log4js appender for fluent-logger
This package provides log4js-node appender for fluent-logger.
NPM
Build Status

Install

$ npm install log4js-fluent-appender

Prerequistes

Fluent daemon should listen on TCP port.
Simple configuration is following:
<source>
  @type forward
  port 24224
</source>

<match **.*>
  @type stdout
</match>

Usage

const log4js = require('log4js');

log4js.configure({
  appenders: {
    fluent: {
      type: 'log4js-fluent-appender',
      tag_prefix: 'tag_prefix',
      options: {
        levelTag: true,
        host: 'localhost',
        port: 24224
      }
    }
  },
  categories: {
    default: {
      appenders: ['fluent'],
      level: 'info'
    }
  }
});

const logger = log4js.getLogger();

logger.info('This is info message!');

setTimeout(() => {
  log4js.shutdown(() => {});
}, 1000);

See also:

Events

const log4js = require('log4js');

const fluentAppender = log4js.configure({
  appenders: {
    fluent: {
      type: 'log4js-fluent-appender',
      tag_prefix: 'tag_prefix',
      options: {
        levelTag: true,
        host: 'localhost',
        port: 24224
      }
    }
  },
  categories: {
    default: {
      appenders: ['fluent'],
      level: 'info'
    }
  }
});

fluentAppender.on('connect', () => {
  console.log('connect event!');
});
fluentAppender.on('error', (error) => {
  console.log('error occured!');
});

Options

levelTag
If false, tag is "mytag". Otherwise tag is "mytag.INFO". If you want to omit level tag such as .INFO, you must specify this value to false.
See fluent-logger.

License

Apache License, Version 2.0.