Struct simple_logger::SimpleLogger
source · pub struct SimpleLogger { /* private fields */ }
Expand description
Implementations§
source§impl SimpleLogger
impl SimpleLogger
sourcepub fn new() -> SimpleLogger
pub fn new() -> SimpleLogger
Initializes the global logger with a SimpleLogger instance with
default log level set to Level::Trace
.
use simple_logger::SimpleLogger;
SimpleLogger::new().env().init().unwrap();
log::warn!("This is an example message.");
Examples found in repository?
More examples
sourcepub fn from_env() -> SimpleLogger
👎Deprecated since 1.12.0: Use <a href="#method.env"><code>env</code></a> instead. Will be removed in version 2.0.0.
pub fn from_env() -> SimpleLogger
Simulates env_logger behavior, which enables the user to choose log level by
setting a RUST_LOG
environment variable. The RUST_LOG
is not set or its value is not
recognized as one of the log levels, this function will use the Error
level by default.
You may use the various builder-style methods on this type to configure
the logger, and you must call init
in order to start logging messages.
use simple_logger::SimpleLogger;
SimpleLogger::from_env().init().unwrap();
log::warn!("This is an example message.");
sourcepub fn env(self) -> SimpleLogger
pub fn env(self) -> SimpleLogger
Simulates env_logger behavior, which enables the user to choose log
level by setting a RUST_LOG
environment variable. This will use
the default level set by with_level
if RUST_LOG
is not set or
can’t be parsed as a standard log level.
This must be called after with_level
. If called before
with_level
, it will have no effect.
sourcepub fn with_level(self, level: LevelFilter) -> SimpleLogger
pub fn with_level(self, level: LevelFilter) -> SimpleLogger
Set the ‘default’ log level.
You can override the default level for specific modules and their sub-modules using with_module_level
This must be called before env
. If called after env
, it will override the value loaded from the environment.
Examples found in repository?
More examples
sourcepub fn with_module_level(self, target: &str, level: LevelFilter) -> SimpleLogger
pub fn with_module_level(self, target: &str, level: LevelFilter) -> SimpleLogger
Override the log level for some specific modules.
This sets the log level of a specific module and all its sub-modules. When both the level for a parent module as well as a child module are set, the more specific value is taken. If the log level for the same module is specified twice, the resulting log level is implementation defined.
Examples
Silence an overly verbose crate:
use simple_logger::SimpleLogger;
use log::LevelFilter;
SimpleLogger::new().with_module_level("chatty_dependency", LevelFilter::Warn).init().unwrap();
Disable logging for all dependencies:
use simple_logger::SimpleLogger;
use log::LevelFilter;
SimpleLogger::new()
.with_level(LevelFilter::Off)
.with_module_level("my_crate", LevelFilter::Info)
.init()
.unwrap();
sourcepub fn with_target_levels(
self,
target_levels: HashMap<String, LevelFilter>
) -> SimpleLogger
👎Deprecated since 1.11.0: Use <a href="#method.with_module_level"><code>with_module_level</code></a> instead. Will be removed in version 2.0.0.
pub fn with_target_levels( self, target_levels: HashMap<String, LevelFilter> ) -> SimpleLogger
Override the log level for specific targets.
sourcepub fn with_timestamps(self, timestamps: bool) -> SimpleLogger
👎Deprecated since 1.16.0: Use [<code>with_local_timestamps</code>] or [<code>with_utc_timestamps</code>] instead. Will be removed in version 2.0.0.
pub fn with_timestamps(self, timestamps: bool) -> SimpleLogger
Control whether timestamps are printed or not.
Timestamps will be displayed in the local timezone.
This method is only available if the timestamps
feature is enabled.
sourcepub fn with_timestamp_format(
self,
format: &'static [FormatItem<'static>]
) -> SimpleLogger
pub fn with_timestamp_format( self, format: &'static [FormatItem<'static>] ) -> SimpleLogger
Control the format used for timestamps.
Without this, a default format is used depending on the timestamps type.
The syntax for the format_description macro can be found in the
time
crate book.
simple_logger::SimpleLogger::new()
.with_level(log::LevelFilter::Debug)
.env()
.with_timestamp_format(time::macros::format_description!("[year]-[month]-[day] [hour]:[minute]:[second]"))
.init()
.unwrap();
sourcepub fn without_timestamps(self) -> SimpleLogger
pub fn without_timestamps(self) -> SimpleLogger
Don’t display any timestamps.
This method is only available if the timestamps
feature is enabled.
sourcepub fn with_local_timestamps(self) -> SimpleLogger
pub fn with_local_timestamps(self) -> SimpleLogger
Display timestamps using the local timezone.
This method is only available if the timestamps
feature is enabled.
sourcepub fn with_utc_timestamps(self) -> SimpleLogger
pub fn with_utc_timestamps(self) -> SimpleLogger
Display timestamps using UTC.
This method is only available if the timestamps
feature is enabled.
sourcepub fn with_utc_offset(self, offset: UtcOffset) -> SimpleLogger
pub fn with_utc_offset(self, offset: UtcOffset) -> SimpleLogger
Display timestamps using a static UTC offset.
This method is only available if the timestamps
feature is enabled.
sourcepub fn with_colors(self, colors: bool) -> SimpleLogger
pub fn with_colors(self, colors: bool) -> SimpleLogger
Control whether messages are colored or not.
This method is only available if the colored
feature is enabled.
sourcepub fn init(self) -> Result<(), SetLoggerError>
pub fn init(self) -> Result<(), SetLoggerError>
‘Init’ the actual logger, instantiate it and configure it, this method MUST be called in order for the logger to be effective.