Crate mod_logger

source ·
Expand description

A consumer for the log crate

The crate implements a logger that allows module-wise configuration of logging through configuration files or an API.

Features

  • Log output can be written to stdout, stderr, to file or to a memory buffer.
  • Log output can be colored.
  • Features can be set using a configuration file or the API

The configuration file can be enabled by setting the environment variable LOG_CONFIG to the path of the file. The configuration is specified in YAML format and allows to set the following values. All values are optional.

  • default_level: The default log level, one of trace, debug, info, warn, error, defaults to info
  • mod_level: A list of module name and log level pairs
  • log_dest: One of stdout, stderr, stream, buffer, streamstdout, streamstderr, bufferstdout, bufferstderr.
  • log_stream: The log file name for stream variants of log_dest
  • color: one of true or false
  • brief_info: one of true or false

Sample:

log_level: warn
log_dest: streamstderr
log_stream: debug.log
color: true
brief_info: true
mod_level:
  'test_mod': debug
  'test_mod::test_test': trace

Structs

  • The Logger struct holds a singleton containing all relevant information.

Enums

Constants