logstash-client
General purpose logstash with multiple transport support
Features
- tcp uses juliangruber's reconnect-net for handling reconnection
- logging library independent (there are some logstash clients for winston, bunyan etc)
TODOS
- TCP Transport
- UDP Transport
- Memory Transport (for testing)
- AMQP Transport
- Codec support
Example
var Logstash = ; var logstash = type: 'udp' // udp, tcp, memory host: 'logstash.example.org' port: 13333;logstash;
API
Constructor
Takes the following parameters:
- type: type of connection, currently supported tcp, udp, memory
- host: remote hostname
- port: remote port
- format (optional): formatter function (by default the message gets JSON.stringified)
- maxQueueSize (optional): Restricts the amount of messages queued when there is no connection. If not specified the queue is not limited in size.
Example:
type: 'tcp' host: 'logstash.example.org' port: 8099 { messageformattedAt = ; messagepassword = '!FILTERED!'; return JSON; } maxQueueSize: 1000;
Client#send
Takes the following parameters:
- message: an object what you are trying to send to your logstash instance
- callback (optional): a function called when the message has been sent
Example:
var client = type: 'tcp' host: 'example.org' port: 1337;client;
License
MIT