github.com/crowdsecurity/crowdsec@v1.6.1/cmd/crowdsec/fatalhook.go (about) 1 package main 2 3 import ( 4 "io" 5 6 log "github.com/sirupsen/logrus" 7 ) 8 9 // FatalHook is used to log fatal messages to stderr when the rest goes to a file 10 type FatalHook struct { 11 Writer io.Writer 12 LogLevels []log.Level 13 } 14 15 func (hook *FatalHook) Fire(entry *log.Entry) error { 16 line, err := entry.String() 17 if err != nil { 18 return err 19 } 20 21 _, err = hook.Writer.Write([]byte(line)) 22 23 return err 24 } 25 26 func (hook *FatalHook) Levels() []log.Level { 27 return hook.LogLevels 28 }