Graylog2 client library for node.js
JavaScript Shell Makefile
Pull request Compare This branch is 42 commits ahead of stelcheck:master.
Latest commit 742d9a6 Nov 12, 2015 @ronkorving ronkorving Merge pull request #14 from erwinw/patch-2
close if nothing to send when exiting

README.md

node-graylog2

NPM version NPM license

Graylog2 client library for Node.js, based on node-graylog. This has been heavily modified to the point where there is not much left of the original; however, this library should still be compatible with the old one, except for configuration and the GLOBAL function setup (some optional arguments in logging calls are not supported; they will be logged as additional data).

** New: ** Chunked GELF is now supported.

Synopsis

Available functions

  • graylog.emergency
  • graylog.alert
  • graylog.critical
  • graylog.error
  • graylog.warning
  • graylog.notice
  • graylog.info
  • graylog.debug

Code snippets

var graylog2 = require("graylog2");
var logger = new graylog2.graylog({
    servers: [
        { 'host': 127.0.0.1, port: 12201 },
        { 'host': 127.0.0.2, port: 12201 }
    ],
    hostname: 'server.name', // the name of this host
                             // (optional, default: os.hostname())
    facility: 'Node.js',     // the facility for these log messages
                             // (optional, default: "Node.js")
    bufferSize: 1350         // max UDP packet size, should never exceed the
                             // MTU of your system (optional, default: 1400)
});

logger.on('error', function (error) {
    console.error('Error while trying to write to graylog2:', error);
});

Short message:

logger.log("What we've got here is...failure to communicate");

Long message:

logger.log("What we've got here is...failure to communicate", "Some men you just
    can't reach. So you get what we had here last week, which is the way he wants
    it... well, he gets it. I don't like it any more than you men.");

Short with additional data:

logger.log("What we've got here is...failure to communicate", { cool: 'beans' });

Long with additional data:

logger.log("What we've got here is...failure to communicate", "Some men you just
    can't reach. So you get what we had here last week, which is the way he wants
    it... well, he gets it. I don't like it any more than you men.",
    {
        cool: "beans"
    }
);

Flush all log messages and close down:

logger.close(function(){
    console.log('All done - cookie now?');
    process.exit();
});

Example

See test.js.

What is graylog2 after all?

It's a miracle. Get it at http://www.graylog2.org/

Installation

npm install graylog2