An open API service indexing awesome lists of open source software.

https://github.com/orandin/lumberjackrus

A local file system hook for sirupsen/logrus
https://github.com/orandin/lumberjackrus

logrus logrus-hook

Last synced: 9 months ago
JSON representation

A local file system hook for sirupsen/logrus

Awesome Lists containing this project

README

          

# lumberjackrus | local filesystem hook for Logrus

## Example

```golang
package main

import (
"github.com/sirupsen/logrus"
"github.com/orandin/lumberjackrus"
)

func init() {
logrus.SetFormatter(&logrus.TextFormatter{})
logrus.SetLevel(logrus.DebugLevel)

hook, err := lumberjackrus.NewHook(
&lumberjackrus.LogFile{
Filename: "/tmp/general.log",
MaxSize: 100,
MaxBackups: 1,
MaxAge: 1,
Compress: false,
LocalTime: false,
},
logrus.InfoLevel,
&logrus.TextFormatter{},
&lumberjackrus.LogFileOpts{
logrus.InfoLevel: &lumberjackrus.LogFile{
Filename: "/tmp/info.log",
},
logrus.ErrorLevel: &lumberjackrus.LogFile{
Filename: "/tmp/error.log",
MaxSize: 100, // optional
MaxBackups: 1, // optional
MaxAge: 1, // optional
Compress: false, // optional
LocalTime: false, // optional
},
},
)

if err != nil {
panic(err)
}

logrus.AddHook(hook)
}

func main() {
logrus.Debug("Debug message") // It is not written to a file (because debug level < minLevel)
logrus.Info("Info message") // Written in /tmp/info.log
logrus.Warn("Warn message") // Written in /tmp/general.log
logrus.Error("Error message") // Written in /tmp/error.log
}
```