Expand description
Convenience macros for logging with optional slog Logger
s.
Example
#[derive(Default)]
struct HasOptLogger {
logger: Option<Logger>,
}
let mut opt_logger: HasOptLogger = Default::default();
try_info!(opt_logger.logger, "You won't see me output. The logger is None."; "opt" => "None");
try_info!(opt_logger.logger, #"imatag", "You won't see me output. The logger is None."; "opt" => "None");
// Setup a `Logger`
opt_logger.logger = Some(logger);
try_info!(opt_logger.logger, "You will see me output!"; "opt" => "Some");
try_info!(opt_logger.logger, #"imatag", "You will see me output!"; "opt" => "Some");
Macros
Log critical level record
Log debug level record
Log error level record
Log info level record
Log trace level record
Log a crit level message if the given logger is
Some
,, otherwise do nothing.Log a debug level message if the given logger is
Some
, otherwise do nothing.Log an error level message if the given logger is
Some
, otherwise do nothing.Log an info level message if the given logger is
Some
, otherwise do nothing.Log a trace level message if the given logger is
Some
, otherwise do nothing.Log a warn level message if the given logger is
Some
, otherwise do nothing.Log warning level record