Package tint provides a slog.Handler that writes tinted logs. The output format is inspired by the zerolog.ConsoleWriter.
go get github.com/lmittmann/tint
Note
slogis an experimental structured logging package, that will be included in the standard library in Go 1.21. See #56345 for tracking the progress.
// create a new logger
logger := slog.New(tint.NewHandler(os.Stderr))
// set global logger with custom options
slog.SetDefault(slog.New(tint.Options{
Level: slog.LevelDebug,
TimeFormat: time.Kitchen,
}.NewHandler(os.Stderr)))ANSI color support in the terminal on Windows can be enabled by using e.g. go-colorable.
logger := slog.New(tint.NewHandler(colorable.NewColorableStderr()))