Crate simplelog[][src]

Expand description

simplelog provides a series of logging facilities, that can be easily combined.

  • SimpleLogger (very basic logger that logs to stdout)
  • TermLogger (advanced terminal logger, that splits to stdout/err and has color support) (can be excluded on unsupported platforms)
  • WriteLogger (logs to a given struct implementing Write, e.g. a file)
  • CombinedLogger (can be used to form combinations of the above loggers)
  • TestLogger (specialized logger for tests. Uses print!() / println!() for tests to be able to capture the output)

Only one Logger should be initialized of the start of your program through the Logger::init(...) method. For the actual calling syntax take a look at the documentation of the specific implementation(s) you wanna use.


The CombinedLogger struct. Provides a Logger implementation that proxies multiple Loggers as one.

Configuration for the Loggers

Builder for the Logger Configurations (Config)

The SimpleLogger struct. Provides a very basic Logger implementation

The TermLogger struct. Provides a stderr/out based Logger implementation

The WriteLogger struct. Provides a Logger implementation for structs implementing Write, e.g. File


The set of available colors for the terminal foreground/background.

ColorChoice represents the color preferences of an end user.

An enum representing the available verbosity levels of the logger.

An enum representing the available verbosity level filters of the logger.

Padding to be used for logging the level

Specifies which streams should be used when logging

Mode for logging the thread name or id or both.

Padding to be used for logging the thread id/name


Trait to have a common interface to obtain the Level of Loggers