Logging framework for Go
This is a logging framework mainly for our Go products.
Be warned that this is a framework rather than a library.
Most features cannot be configured.
Features
-
Light-weight.
Hard-coded maximum log buffer size and 1-pass formatters
help cybozu-go/log be memory- and CPU- efficient.
Benchmark results
show that it can format about 340K logs per second in JSON.
-
Built-in logfmt and JSON Lines formatters.
By default, logs are formatted in syslog-like plain text.
logfmt and JSON Lines formatters can be used alternatively.
-
Automatic redirect for Go standard logs.
The framework automatically redirects Go standard logs
to itself.
-
Reopen handler.
The framework comes with a handy writer that reopens the log file
upon signal reception. Useful for work with log rotating programs.
Only for non-Windows systems.
Usage
Read the documentation.
Log structure
Read SPEC.md.