7 "github.com/go-kit/kit/log"
8 "github.com/go-kit/kit/log/term"
11 func ExampleNewLogger_redErrors() {
13 colorFn := func(keyvals ...interface{}) term.FgBgColor {
14 for i := 1; i < len(keyvals); i += 2 {
15 if _, ok := keyvals[i].(error); ok {
16 return term.FgBgColor{Fg: term.White, Bg: term.Red}
19 return term.FgBgColor{}
22 logger := term.NewLogger(os.Stdout, log.NewLogfmtLogger, colorFn)
24 logger.Log("msg", "default color", "err", nil)
25 logger.Log("msg", "colored because of error", "err", errors.New("coloring error"))
28 func ExampleNewLogger_levelColors() {
29 // Color by level value
30 colorFn := func(keyvals ...interface{}) term.FgBgColor {
31 for i := 0; i < len(keyvals)-1; i += 2 {
32 if keyvals[i] != "level" {
37 return term.FgBgColor{Fg: term.DarkGray}
39 return term.FgBgColor{Fg: term.Gray}
41 return term.FgBgColor{Fg: term.Yellow}
43 return term.FgBgColor{Fg: term.Red}
45 return term.FgBgColor{Fg: term.Gray, Bg: term.DarkRed}
47 return term.FgBgColor{}
50 return term.FgBgColor{}
53 logger := term.NewLogger(os.Stdout, log.NewJSONLogger, colorFn)
55 logger.Log("level", "warn", "msg", "yellow")
56 logger.Log("level", "debug", "msg", "dark gray")