Struct slog_term::FullFormatBuilder
source · pub struct FullFormatBuilder<D>where
D: Decorator,{ /* private fields */ }
Expand description
Streamer builder
Implementations§
source§impl<D> FullFormatBuilder<D>where
D: Decorator,
impl<D> FullFormatBuilder<D>where
D: Decorator,
sourcepub fn use_utc_timestamp(self) -> Self
pub fn use_utc_timestamp(self) -> Self
Use the UTC time zone for the timestamp
sourcepub fn use_local_timestamp(self) -> Self
pub fn use_local_timestamp(self) -> Self
Use the local time zone for the timestamp (default)
sourcepub fn use_custom_timestamp<F>(self, f: F) -> Selfwhere
F: ThreadSafeTimestampFn,
pub fn use_custom_timestamp<F>(self, f: F) -> Selfwhere
F: ThreadSafeTimestampFn,
Provide a custom function to generate the timestamp
sourcepub fn use_file_location(self) -> Self
pub fn use_file_location(self) -> Self
Enable the file location in log in this format [file:line:column]
sourcepub fn use_original_order(self) -> Self
pub fn use_original_order(self) -> Self
Use the original ordering of key-value pairs
By default, key-values are printed in a reversed order. This option will change it to the order in which key-values were added.
sourcepub fn use_custom_header_print<F>(self, f: F) -> Selfwhere
F: ThreadSafeHeaderFn,
pub fn use_custom_header_print<F>(self, f: F) -> Selfwhere
F: ThreadSafeHeaderFn,
Provide a function that print the header
If not used, slog_term::print_msg_header
will be used.
The header is the part before the log message and key-values. It usually contains the time, the log level.
The default function:
ⓘ
pub fn print_msg_header(
fn_timestamp: &dyn ThreadSafeTimestampFn<Output = io::Result<()>>,
mut rd: &mut dyn RecordDecorator,
record: &Record,
use_file_location: bool,
) -> io::Result<bool> {
rd.start_timestamp()?;
fn_timestamp(&mut rd)?;
rd.start_whitespace()?;
write!(rd, " ")?;
rd.start_level()?;
write!(rd, "{}", record.level().as_short_str())?;
if use_file_location {
rd.start_location()?;
write!(
rd,
"[{}:{}:{}]",
record.location().file,
record.location().line,
record.location().column
)?;
}
rd.start_whitespace()?;
write!(rd, " ")?;
rd.start_msg()?;
let mut count_rd = CountingWriter::new(&mut rd);
write!(count_rd, "{}", record.msg())?;
Ok(count_rd.count() != 0)
}
produces this output:
Oct 19 09:20:37.962 INFO an event log, my_key: my_value
the Oct 19 09:20:37.962 INFO
part is the header.
sourcepub fn build(self) -> FullFormat<D>
pub fn build(self) -> FullFormat<D>
Build FullFormat
Auto Trait Implementations§
impl<D> RefUnwindSafe for FullFormatBuilder<D>where
D: RefUnwindSafe,
impl<D> Send for FullFormatBuilder<D>where
D: Send,
impl<D> Sync for FullFormatBuilder<D>where
D: Sync,
impl<D> Unpin for FullFormatBuilder<D>where
D: Unpin,
impl<D> UnwindSafe for FullFormatBuilder<D>where
D: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more