humanlog
Read logs from stdin
and prints them back to stdout
, but prettier.
Using it
Grab a release or :
With Go installed
$ go get -u github.com/aybabtme/humanlog/...
On linux
wget -qO- https://github.com/aybabtme/humanlog/releases/download/0.2.1/humanlog_Linux_x86_64.tar.gz | tar xvz
On OS X
brew tap aybabtme/homebrew-tap
brew install humanlog
Example
If you emit logs in JSON or in logfmt
, you will enjoy pretty logs when those
entries are encountered by humanlog
. Unrecognized lines are left unchanged.
$ humanlog < /var/log/logfile.log
Contributing
How to help:
- support more log formats: by submitting
human.Handler
implementations. - live querying: add support for filtering in log output in real time.
- charting: some key-values have semantics that could be charted in real time. For instance, durations, frequency of numeric values, etc. See the l2met project.
Usage
NAME:
humanlog - reads structured logs from stdin, makes them pretty on stdout!
USAGE:
humanlog [global options] command [command options] [arguments...]
VERSION:
0.2.1
AUTHOR:
Antoine Grondin - <antoine@digitalocean.com>
COMMANDS:
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--skip '--skip option --skip option' keys to skip when parsing a log entry
--keep '--keep option --keep option' keys to keep when parsing a log entry
--sort-longest sort by longest key after having sorted lexicographically
--skip-unchanged skip keys that have the same value than the previous entry
--truncate truncates values that are longer than --truncate-length
--truncate-length '15' truncate values that are longer than this length
--help, -h show help
--version, -v print the version