Expand description
A basic logger implementation for system-wide logging in Theseus.
This enables Theseus crates to use the log
crate’s macros anywhere,
such as error!()
, warn!()
, info!()
, debug!()
, and trace!()
.
Currently, log statements are written to one or more writers,
which are objects that implement the core::fmt::Write
trait.
Early log messages (before memory management is initialized) are saved to a static fixed-sized buffer such that they are not lost and can be retrieved once logging sinks are ready to be used.
Constants
- By default, Theseus will print all log levels, including
Trace
and above. - The size of the buffer used to save early log messages.
- The maximum number of output streams that a logger can write to.
Functions
- Initializes Theseus’s early system logger for use before memory management is set up.
- Initialize the fully-featured Theseus system logger.
- Set the log level, which determines whether a given log message is actually logged.
- Removes all of the writers (output streams) from the early logger and returns them.
- Convenience function for writing formatted arguments to the logger.
- Convenience function for writing a simple string to the logger.