doc.go 936 B

12345678910111213141516171819202122
  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.
  22. package level