Simple log aggregator, parser.
Example configurations are in examples/
$ go install github.com/sheenobu/quicklog/cmd/...
You can embed quicklog, and only include the parts you need. See /examples/embedded/main.go
File config:
$ quicklog -configFile quicklog.json
Etcd config:
$ quicklog -etcdEndpoints "http://127.0.0.1:4001" -instanceName "myQuicklog"
runs the log input, filter, and output. Can be configured via configfile or etcd.
Loads a JSON quicklog config file into etcd under a specific instance name
Main engine
- stdin - Read from standard input
- tcp - Read from TCP input
- udp - Read from UDP input
- nats - Read the entire log entry from a nats queue
- plain - parse input as a plain message
- json - parse input as json
- otto - parse input via javascript function
- csv - parse input as a CSV entry (TODO)
- uuid - Add a randomly generated uuid to the message data, as a custom field
- uppercase - Uppercases the 'message' field
- rename_field - Renames a field
- hostname - Add the current hostname as a field
- stdout - Writes the 'message' field to standard out
- debug - Writes the 'message' field to standard out, plus each additional field on the log entry
- nats - Writes the entire log entry entry to a nats queue
- elasticsearch-http - Writes the entire JSON to elasticsearch, under the given index/type
JSON or etcd based configuration, see /examples