package strategy import ( "encoding/json" "fmt" "os" "time" "git.schreifuchs.ch/schreifuchs/logger" "git.schreifuchs.ch/schreifuchs/logger/lvl" ) // JSON logs to std wit the schema: // {"time":"","level":"","message":""}. func JSON(logs <-chan *logger.Log) { for log := range logs { timedLog := struct { Time time.Time `json:"time"` LVL lvl.Level `json:"level"` Message string `json:"message"` }{ Time: time.Now(), LVL: log.Level, Message: log.Message, } out, err := json.Marshal(timedLog) if err != nil { fmt.Println("Error while marshaling log: ", err) os.Exit(1) } println(string(out)) } }