Skip to content

Logging framework for Cybozu Go products

License

Notifications You must be signed in to change notification settings

itchyny/cybozu-go-log

 
 

Repository files navigation

GitHub release CI PkgGoDev Go Report Card

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.

Requirements

Go 1.13 or greater is required.

Usage

Read the documentation.

Log structure

Read SPEC.md.

About

Logging framework for Cybozu Go products

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 100.0%