Awesome Go

logrusiowriter

CategoryLogging
SubcategoryLogging
Stars0

`io.Writer` implementation using [logrus](https://github.com/sirupsen/logrus) logger

About logrusiowriter

logrusiowriter

io.Writer implementation using logrus

Travis CI build status GoDoc Coverage Status Mentioned in Awesome Go

Motivation

Many golang libraries use the golang's log package to print their logs. This means that if your application uses logrus to print structured logging, those packages will print a format that is (probably) incompatible with yours, and you may end losing logs in your logs collector because they can't be parsed properly.

Solution

Print the logs written using log.Printf through logrus, by setting log.SetOutput to an io.Writer implementation that uses logrus as output, i.e.:

	log.SetOutput(logrusiowriter.New())

See example_*_test.go files to find testable examples that serve as documentation.

Simple solution

Or... you can simply use the standard APIs that logrus provides, i.e., this does the same as this package:

    log.SetOutput(logrus.WithFields(logrus.Fields{"logger": "stdlib"}).WriterLevel(logrus.InfoLevel))

So, unless you want this to be configurable using an envconfig-filled struct, there's no reason to use this library.

Frequently Asked Questions

What is logrusiowriter?

logrusiowriter is a Logging library for the Go programming language. `io.Writer` implementation using [logrus](https://github.com/sirupsen/logrus) logger

How do I install logrusiowriter?

Install logrusiowriter with the Go module system using `go get cabify/logrusiowriter`. Check the repository for the current installation instructions.

What category does logrusiowriter belong to?

logrusiowriter is listed under Logging, specifically Logging.

← Back to Logging