hapi-good-logstash

1.0.0 • Public • Published

Logstash reporter for good

A good reporter to communicate directly with a logstash instance using the lumberjack-protocol client

Install

npm install --save hapi-good-logstash

Usage

Starting with version 6 good established a new interface for good reporters. If you are using good < 6, then please install v0.0.4 of the logstash reporter and install v1 and greater when using good 6.

Example for sending all ops events to logstash

connection.register({
    register: require('good'),
    options: {
      opsInterval: 15000,
        reporters: [{
          reporter: "hapi-good-logstash",
          args: [{
              ops: '*'
          }, {
              tlsOptions: {
                  host: "localhost",
                  port: 8001,
                  ca: [fs.readFileSync('path to .crt')],
                  key: [fs.readFileSync('path to .key')],
                  cert: [fs.readFileSync('path to .crt')]
              },
              clientOptions: {
                  maxQueueSize: 500
              }
          }]
      }]
    } 
}, function (err) {
    if (err) {
        console.log('Failed loading good plugin', err);
    }
});

The clientoptions are passed to the lumberjack-protocol module and the tlsOptions are passed to the node.js tls socket connection directly.

Security

We use a patched version of logstash and the lumberjack input, which only accepts ssl certificates configured in the logstash config, so the socket connection will be reset, if you provide a wrong certificate. This is unfortunately not the default behavior of the official Logstash release. The official logstash package accepts inputs even if provided a completley different certificate.

We published a blog post with a guide how to use our patched setup on our homepages tech section.

Readme

Keywords

Package Sidebar

Install

npm i hapi-good-logstash

Weekly Downloads

67

Version

1.0.0

License

ISC

Last publish

Collaborators

  • atroo