[go: up one dir, main page]

formatter

Function formatter 

Source
pub fn formatter(
    fmt: impl CologStyle + Sync + Send,
) -> impl Fn(&mut Formatter, &Record<'_>) -> Result<(), Error> + Sync + Send
Expand description

Convenience function to create binding formatter closure

This functions creates a move closure, which is useful when setting up logging with a custom styling. So instead of this:

let mut builder = Builder::new();
builder.format(|buf, rec| CustomStyle.format(buf, rec));
/* ... */

One can write this:

let mut builder = Builder::new();
builder.format(colog::formatter(CustomStyle));
/* ... */
Examples found in repository?
examples/custom-level-tokens.rs (line 24)
22fn main() {
23    let mut builder = Builder::new();
24    builder.format(colog::formatter(CustomLevelToken));
25    builder.filter(None, LevelFilter::Trace);
26    builder.init();
27    error!("error message");
28    error!("error with fmt: {}", 42);
29    warn!("warn message");
30    info!("info message");
31    debug!("debug message");
32    trace!("trace message");
33}
More examples
Hide additional examples
examples/custom-level-colors.rs (line 27)
25fn main() {
26    let mut builder = Builder::new();
27    builder.format(colog::formatter(CustomLevelColors));
28    builder.filter(None, LevelFilter::Trace);
29    builder.init();
30    error!("error message");
31    error!("error with fmt: {}", 42);
32    warn!("warn message");
33    info!("info message");
34    debug!("debug message");
35    trace!("trace message");
36}
examples/custom-level-prefix.rs (line 24)
22fn main() {
23    let mut builder = Builder::new();
24    builder.format(colog::formatter(CustomPrefixToken));
25    builder.filter(None, LevelFilter::Trace);
26    builder.init();
27    error!("error message");
28    error!("error with fmt: {}", 42);
29    warn!("warn message");
30    info!("info message");
31    debug!("debug message");
32    trace!("trace message");
33}
examples/custom-stateful-logger.rs (line 45)
43fn main() {
44    let mut builder = Builder::new();
45    builder.format(colog::formatter(CustomStatefulLogger::default()));
46    builder.filter(None, LevelFilter::Trace);
47    builder.init();
48    error!("error message");
49    error!("error with fmt: {}", 42);
50    warn!("warn message");
51    info!("info1 message");
52    info!("info2 message");
53    info!("info3 message");
54    debug!("debug message");
55    trace!("trace message");
56}