2017-09-17 01:26:19 +00:00
|
|
|
package main
|
|
|
|
|
2019-01-17 12:26:16 +00:00
|
|
|
import (
|
|
|
|
"os"
|
|
|
|
|
|
|
|
"github.com/bdlm/log"
|
|
|
|
stdLogger "github.com/bdlm/std/logger"
|
|
|
|
|
|
|
|
"github.com/FreifunkBremen/yanic/cmd"
|
|
|
|
)
|
|
|
|
|
2019-02-27 01:51:01 +00:00
|
|
|
type hook struct{}
|
2019-01-17 12:26:16 +00:00
|
|
|
|
2019-02-27 01:51:01 +00:00
|
|
|
func (h *hook) Fire(entry *log.Entry) error {
|
2019-01-17 12:26:16 +00:00
|
|
|
switch entry.Level {
|
|
|
|
case log.PanicLevel:
|
|
|
|
entry.Logger.Out = os.Stderr
|
|
|
|
case log.FatalLevel:
|
|
|
|
entry.Logger.Out = os.Stderr
|
|
|
|
case log.ErrorLevel:
|
|
|
|
entry.Logger.Out = os.Stderr
|
|
|
|
case log.WarnLevel:
|
|
|
|
entry.Logger.Out = os.Stdout
|
|
|
|
case log.InfoLevel:
|
|
|
|
entry.Logger.Out = os.Stdout
|
|
|
|
case log.DebugLevel:
|
|
|
|
entry.Logger.Out = os.Stdout
|
|
|
|
default:
|
|
|
|
}
|
|
|
|
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2019-02-27 01:51:01 +00:00
|
|
|
func (h *hook) Levels() []stdLogger.Level {
|
2019-01-17 12:26:16 +00:00
|
|
|
return log.AllLevels
|
|
|
|
}
|
2017-09-17 01:26:19 +00:00
|
|
|
|
|
|
|
func main() {
|
2019-02-27 01:51:01 +00:00
|
|
|
log.AddHook(&hook{})
|
2019-01-17 12:26:16 +00:00
|
|
|
|
2017-09-17 01:26:19 +00:00
|
|
|
cmd.Execute()
|
|
|
|
}
|