Skip to content

Logging

Structured logging with debug, info, warn, and error levels.

local logger = require("logger")
logger:debug("message", {key = "value"})
ParameterTypeDescription
messagestringLog message
fieldstable?Contextual key-value pairs
logger:info("message", {key = "value"})
ParameterTypeDescription
messagestringLog message
fieldstable?Contextual key-value pairs
logger:warn("message", {key = "value"})
ParameterTypeDescription
messagestringLog message
fieldstable?Contextual key-value pairs
logger:error("message", {key = "value"})
ParameterTypeDescription
messagestringLog message
fieldstable?Contextual key-value pairs

Create a child logger with persistent fields.

local child = logger:with({request_id = id})
child:info("message")
ParameterTypeDescription
fieldstableFields to attach to all logs

Returns: Logger

Create a named child logger.

local named = logger:named("auth")
named:info("message")
ParameterTypeDescription
namestringLogger name

Returns: Logger

ConditionKindRetryable
Empty name stringerrors.INVALIDno

See Error Handling for working with errors.