📚 log - Awesome Go Library for Logging

Go Gopher mascot for log

An O(1) logging system that allows you to connect one log to multiple writers (e.g. stdout, a file and a TCP connection).

🏷️ Logging
📂 Libraries for generating and working with log files.
10 stars
View on GitHub 🔗

Detailed Description of log

log

Godoc Report Tests Coverage Sponsor

An O(1) constant time logging system that allows you to connect one log to multiple writers (e.g. stdout, a file and a TCP connection).

Installation

go get -u github.com/aerogo/log/...

Example

hello := log.New()                          // Create a new log
hello.AddWriter(log.File("hello.log"))      // Add a writer

hello.Info("Hello World %d %d %d", 1, 2, 3) // Write non-critical data (buffered)
hello.Error("Something went wrong")         // Force an immediate I/O flush for error messages

Under the hood

All Write calls are queued into a channel that is read in a separate goroutine. Once the channel receives new data it writes the data to all registered outputs.

Style

Please take a look at the style guidelines if you'd like to make a pull request.

Sponsors

Cedric FungScott RayapoulléEduard Urbach
Cedric FungScott RayapoulléEduard Urbach

Want to see your own name here?