pub struct Record<'a> {
pub(crate) metadata: Metadata<'a>,
pub(crate) args: Arguments<'a>,
pub(crate) module_path: Option<MaybeStaticStr<'a>>,
pub(crate) file: Option<MaybeStaticStr<'a>>,
pub(crate) line: Option<u32>,
}
Expand description
The “payload” of a log message.
§Use
Record
structures are passed as parameters to the log
method of the Log
trait. Logger implementors manipulate these
structures in order to display log messages. Record
s are automatically
created by the log!
macro and so are not seen by log users.
Note that the level()
and target()
accessors are equivalent to
self.metadata().level()
and self.metadata().target()
respectively.
These methods are provided as a convenience for users of this structure.
§Example
The following example shows a simple logger that displays the level,
module path, and message of any Record
that is passed to it.
struct SimpleLogger;
impl log::Log for SimpleLogger {
fn enabled(&self, _metadata: &log::Metadata) -> bool {
true
}
fn log(&self, record: &log::Record) {
if !self.enabled(record.metadata()) {
return;
}
println!("{}:{} -- {}",
record.level(),
record.target(),
record.args());
}
fn flush(&self) {}
}
Fields§
§metadata: Metadata<'a>
§args: Arguments<'a>
§module_path: Option<MaybeStaticStr<'a>>
§file: Option<MaybeStaticStr<'a>>
§line: Option<u32>
Implementations§
source§impl<'a> Record<'a>
impl<'a> Record<'a>
sourcepub fn builder() -> RecordBuilder<'a>
pub fn builder() -> RecordBuilder<'a>
Returns a new builder.
sourcepub fn module_path(&self) -> Option<&'a str>
pub fn module_path(&self) -> Option<&'a str>
The module path of the message.
sourcepub fn module_path_static(&self) -> Option<&'static str>
pub fn module_path_static(&self) -> Option<&'static str>
The module path of the message, if it is a 'static
string.
sourcepub fn file_static(&self) -> Option<&'static str>
pub fn file_static(&self) -> Option<&'static str>
The source file containing the message, if it is a 'static
string.