Documentation ¶
Overview ¶
Package log provides a global logger for zerolog.
Example ¶
This example uses command-line flags to demonstrate various outputs depending on the chosen log level.
setup() debug := flag.Bool("debug", false, "sets log level to debug") flag.Parse() // Default level for this example is info, unless debug flag is present zerolog.SetGlobalLevel(zerolog.InfoLevel) if *debug { zerolog.SetGlobalLevel(zerolog.DebugLevel) } log.Debug().Msg("This message appears only when log level set to Debug") log.Info().Msg("This message appears when log level set to Debug or Info") if e := log.Debug(); e.Enabled() { // Compute log output only if enabled. value := "bar" e.Str("foo", value).Msg("some debug message") }
Output: {"level":"info","time":1199811905,"message":"This message appears when log level set to Debug or Info"}
Index ¶
- Variables
- func Ctx(ctx context.Context) *zerolog.Logger
- func Debug() *zerolog.Event
- func Err(err error) *zerolog.Event
- func Error() *zerolog.Event
- func Fatal() *zerolog.Event
- func Hook(h zerolog.Hook) zerolog.Logger
- func Info() *zerolog.Event
- func Level(level zerolog.Level) zerolog.Logger
- func Log() *zerolog.Event
- func Output(w io.Writer) zerolog.Logger
- func Panic() *zerolog.Event
- func Print(v ...interface{})
- func Printf(format string, v ...interface{})
- func Sample(s zerolog.Sampler) zerolog.Logger
- func Trace() *zerolog.Event
- func Warn() *zerolog.Event
- func With() zerolog.Context
- func WithLevel(level zerolog.Level) *zerolog.Event
Examples ¶
Constants ¶
This section is empty.
Variables ¶
var Logger = zerolog.New(os.Stderr).With().Timestamp().Logger()
Logger is the global logger.
Functions ¶
func Ctx ¶
Ctx returns the Logger associated with the ctx. If no logger is associated, a disabled logger is returned.
func Debug ¶
func Debug() *zerolog.Event
Debug starts a new message with debug level.
You must call Msg on the returned event in order to send the event.
Example ¶
Example of a log at a particular "level" (in this case, "debug")
setup() log.Debug().Msg("hello world")
Output: {"level":"debug","time":1199811905,"message":"hello world"}
func Err ¶ added in v1.26.3
func Err(err error) *zerolog.Event
Err starts a new message with error level with err as a field if not nil or with info level if err is nil.
You must call Msg on the returned event in order to send the event.
Example ¶
Example of a conditional level based on the presence of an error.
setup() err := errors.New("some error") log.Err(err).Msg("hello world") log.Err(nil).Msg("hello world")
Output: {"level":"error","error":"some error","time":1199811905,"message":"hello world"} {"level":"info","time":1199811905,"message":"hello world"}
func Error ¶
func Error() *zerolog.Event
Error starts a new message with error level.
You must call Msg on the returned event in order to send the event.
Example ¶
Example of a log at a particular "level" (in this case, "error")
setup() log.Error().Msg("hello world")
Output: {"level":"error","time":1199811905,"message":"hello world"}
func Fatal ¶
func Fatal() *zerolog.Event
Fatal starts a new message with fatal level. The os.Exit(1) function is called by the Msg method.
You must call Msg on the returned event in order to send the event.
Example ¶
Example of a log at a particular "level" (in this case, "fatal")
setup() err := errors.New("A repo man spends his life getting into tense situations") service := "myservice" log.Fatal(). Err(err). Str("service", service). Msgf("Cannot start %s", service) // Outputs: {"level":"fatal","time":1199811905,"error":"A repo man spends his life getting into tense situations","service":"myservice","message":"Cannot start myservice"}
Output:
func Hook ¶ added in v1.4.0
func Hook(h zerolog.Hook) zerolog.Logger
Hook returns a logger with the h Hook.
func Info ¶
func Info() *zerolog.Event
Info starts a new message with info level.
You must call Msg on the returned event in order to send the event.
Example ¶
Example of a log at a particular "level" (in this case, "info")
setup() log.Info().Msg("hello world")
Output: {"level":"info","time":1199811905,"message":"hello world"}
func Level ¶
func Level(level zerolog.Level) zerolog.Logger
Level creates a child logger with the minimum accepted level set to level.
func Log ¶
func Log() *zerolog.Event
Log starts a new message with no level. Setting zerolog.GlobalLevel to zerolog.Disabled will still disable events produced by this method.
You must call Msg on the returned event in order to send the event.
Example ¶
Example of a log with no particular "level"
setup() log.Log().Msg("hello world")
Output: {"time":1199811905,"message":"hello world"}
func Panic ¶
func Panic() *zerolog.Event
Panic starts a new message with panic level. The message is also sent to the panic function.
You must call Msg on the returned event in order to send the event.
func Print ¶ added in v1.3.0
func Print(v ...interface{})
Print sends a log event using debug level and no extra field. Arguments are handled in the manner of fmt.Print.
Example ¶
Simple logging example using the Print function in the log package Note that both Print and Printf are at the debug log level by default
setup() log.Print("hello world")
Output: {"level":"debug","time":1199811905,"message":"hello world"}
func Printf ¶ added in v1.3.0
func Printf(format string, v ...interface{})
Printf sends a log event using debug level and no extra field. Arguments are handled in the manner of fmt.Printf.
Example ¶
Simple logging example using the Printf function in the log package
setup() log.Printf("hello %s", "world")
Output: {"level":"debug","time":1199811905,"message":"hello world"}
func Sample ¶
func Sample(s zerolog.Sampler) zerolog.Logger
Sample returns a logger with the s sampler.
func Trace ¶ added in v1.26.3
func Trace() *zerolog.Event
Trace starts a new message with trace level.
You must call Msg on the returned event in order to send the event.
Example ¶
Example of a log at a particular "level" (in this case, "trace")
setup() log.Trace().Msg("hello world")
Output: {"level":"trace","time":1199811905,"message":"hello world"}
func Warn ¶
func Warn() *zerolog.Event
Warn starts a new message with warn level.
You must call Msg on the returned event in order to send the event.
Example ¶
Example of a log at a particular "level" (in this case, "warn")
setup() log.Warn().Msg("hello world")
Output: {"level":"warn","time":1199811905,"message":"hello world"}
Types ¶
This section is empty.