std/log
On this page
Index
- type
Logger- method
Logger.with - method
Logger.debug - method
Logger.info - method
Logger.warn - method
Logger.error
- method
- type
Level - type
Format - type
Record - fn
debug - fn
info - fn
warn - fn
error - fn
enabled - fn
configure - fn
with
Types
Logger
struct Logger {}A logger that adds fields to every record it writes (log/slog’s Logger.With; decision 0413): a value, so a handler can make one per request and pass it on. A record’s own fields override a logger’s of the same name. A logger made in a dependency’s code keeps that dependency as its records’ module (decision 0173).
Logger.with
fn (l: Logger) with(fields: Map[Str, Debug]) -> LoggerLogger.debug
fn (l: Logger) debug(msg: Str, fields: Map[Str, Debug] = {}) uses logLogger.info
fn (l: Logger) info(msg: Str, fields: Map[Str, Debug] = {}) uses logLogger.warn
fn (l: Logger) warn(msg: Str, fields: Map[Str, Debug] = {}) uses logLogger.error
fn (l: Logger) error(msg: Str, fields: Map[Str, Debug] = {}) uses logLevel
enum Level {
Debug
Info
Warn
Error
}Format
enum Format {
Text
Json
}Record
struct Record {
level: Level
msg: Str
fields: Map[Str, Str]
module: Str
}One log record as captured in tests (std.md 6, 8.6). Field values are their text form. module is the dependency that wrote the record ("<module path>@<version>", decision 0173), "" for the main module.
Functions
debug
fn debug(msg: Str, fields: Map[Str, Debug] = {}) uses loginfo
fn info(msg: Str, fields: Map[Str, Debug] = {}) uses logwarn
fn warn(msg: Str, fields: Map[Str, Debug] = {}) uses logerror
fn error(msg: Str, fields: Map[Str, Debug] = {}) uses logenabled
fn enabled(level: Level) -> Bool uses logWhether a record of level would be written under the configured
level (decision 0558): a call to debug, info, warn or error
is compiled as if enabled(level) { call }, so its arguments are not
evaluated otherwise; also for work that is not an argument (a costly
dump).
configure
fn configure(out: Stdio, level: Level = Level.Info, format: Format = Format.Text) uses stdiowith
fn with(fields: Map[Str, Debug]) -> Logger