Module lumber
Simple and Modular logging library for Lua.
This is the core module of Lumber where most of the magic happens here.
Functions
new ([options={}]) | Creates a new logger object. |
Options
format | Formatter function. |
out | IO object to write output to. |
level | Log level. |
filter | Filter function for non-function values. |
Class Logger
Logger:log (level, message[, ...]) | Logs a message with a given level |
Logger:fatal (message[, ...]) | Logs a message with fatal level |
Logger:error (message[, ...]) | Logs a message with error level |
Logger:warn (message[, ...]) | Logs a message with warn level |
Logger:info (message[, ...]) | Logs a message with info level |
Logger:debug (message[, ...]) | Logs a message with debug level |
Functions
- new ([options={}])
-
Creates a new logger object.
When an options table is passed in, it is returned after assigning it a new metatable.
Parameters:
- options table A table with options for the logger (default {})
Returns:
-
A new logger object.
Usage:
local lumber = require 'lumber' local log = lumber.new { level = 5; out = io.stderr; -- etc. }
Options
Each of these options can be set for every logger object.
They can also be overridden globally by modifying the defaults
in the lumber table directly, but this is not recommended.
- format
- Formatter function. This function receives the log level and the concatenated log message as a string and should return the final string that is written to the output object.
- out
-
IO object to write output to.
This must be an object with a
write
method, but otherwise doesn’t have to be an actual IO object. - level
- Log level. Everything logged with a higher level than this will be ignored.
- filter
- Filter function for non-function values.
Class Logger
The actual logger object which does the logging.
Usage:
local log = lumber.new { level = 3 } log:info("Something happened") log.level = 2 -- Options can be changed later on
- Logger:log (level, message[, ...])
-
Logs a message with a given level
Parameters:
- level {index=number,name=string} The level to which to log
- message String or function that returns one
- ... Further log messages (optional)
- Logger:fatal (message[, ...])
-
Logs a message with fatal level
Parameters:
- message String or function that returns one
- ... Further log messages (optional)
- Logger:error (message[, ...])
-
Logs a message with error level
Parameters:
- message String or function that returns one
- ... Further log messages (optional)
- Logger:warn (message[, ...])
-
Logs a message with warn level
Parameters:
- message String or function that returns one
- ... Further log messages (optional)
- Logger:info (message[, ...])
-
Logs a message with info level
Parameters:
- message String or function that returns one
- ... Further log messages (optional)
- Logger:debug (message[, ...])
-
Logs a message with debug level
Parameters:
- message String or function that returns one
- ... Further log messages (optional)