hapi-good-logstash-tcp
TypeScript icon, indicating that this package has built-in type declarations

0.0.1 • 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

Example for sending all ops events to logstash

connection.register({
    register: require('good'),
    options: {
      opsInterval: 15000,
        reporters: [{
          reporter: require("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-tcp

Weekly Downloads

1

Version

0.0.1

License

ISC

Last publish

Collaborators

  • panferov-s