1// Package level implements leveled logging on top of Go kit's log package. To 2// use the level package, create a logger as per normal in your func main, and 3// wrap it with level.NewFilter. 4// 5// var logger log.Logger 6// logger = log.NewLogfmtLogger(os.Stderr) 7// logger = level.NewFilter(logger, level.AllowInfo()) // <-- 8// logger = log.With(logger, "ts", log.DefaultTimestampUTC) 9// 10// Then, at the callsites, use one of the level.Debug, Info, Warn, or Error 11// helper methods to emit leveled log events. 12// 13// logger.Log("foo", "bar") // as normal, no level 14// level.Debug(logger).Log("request_id", reqID, "trace_data", trace.Get()) 15// if value > 100 { 16// level.Error(logger).Log("value", value) 17// } 18// 19// NewFilter allows precise control over what happens when a log event is 20// emitted without a level key, or if a squelched level is used. Check the 21// Option functions for details. 22package level 23