logo
pub struct Pretty { /* private fields */ }
This is supported on crate features fmt and std only.
Expand description

An excessively pretty, human-readable event formatter.

Unlike the Full, Compact, and Json formatters, this is a multi-line output format. Each individual event may output multiple lines of text.

Example Output

:; cargo run --example fmt-pretty
    Finished dev [unoptimized + debuginfo] target(s) in 0.08s
     Running `target/debug/examples/fmt-pretty`
  2022-02-15T18:44:24.535324Z  INFO fmt_pretty: preparing to shave yaks, number_of_yaks: 3
    at examples/examples/fmt-pretty.rs:16 on main

  2022-02-15T18:44:24.535403Z  INFO fmt_pretty::yak_shave: shaving yaks
    at examples/examples/fmt/yak_shave.rs:41 on main
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535442Z TRACE fmt_pretty::yak_shave: hello! I'm gonna shave a yak, excitement: "yay!"
    at examples/examples/fmt/yak_shave.rs:16 on main
    in fmt_pretty::yak_shave::shave with yak: 1
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535469Z TRACE fmt_pretty::yak_shave: yak shaved successfully
    at examples/examples/fmt/yak_shave.rs:25 on main
    in fmt_pretty::yak_shave::shave with yak: 1
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535502Z DEBUG yak_events: yak: 1, shaved: true
    at examples/examples/fmt/yak_shave.rs:46 on main
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535524Z TRACE fmt_pretty::yak_shave: yaks_shaved: 1
    at examples/examples/fmt/yak_shave.rs:55 on main
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535551Z TRACE fmt_pretty::yak_shave: hello! I'm gonna shave a yak, excitement: "yay!"
    at examples/examples/fmt/yak_shave.rs:16 on main
    in fmt_pretty::yak_shave::shave with yak: 2
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535573Z TRACE fmt_pretty::yak_shave: yak shaved successfully
    at examples/examples/fmt/yak_shave.rs:25 on main
    in fmt_pretty::yak_shave::shave with yak: 2
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535600Z DEBUG yak_events: yak: 2, shaved: true
    at examples/examples/fmt/yak_shave.rs:46 on main
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535618Z TRACE fmt_pretty::yak_shave: yaks_shaved: 2
    at examples/examples/fmt/yak_shave.rs:55 on main
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535644Z TRACE fmt_pretty::yak_shave: hello! I'm gonna shave a yak, excitement: "yay!"
    at examples/examples/fmt/yak_shave.rs:16 on main
    in fmt_pretty::yak_shave::shave with yak: 3
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535670Z  WARN fmt_pretty::yak_shave: could not locate yak
    at examples/examples/fmt/yak_shave.rs:18 on main
    in fmt_pretty::yak_shave::shave with yak: 3
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535698Z DEBUG yak_events: yak: 3, shaved: false
    at examples/examples/fmt/yak_shave.rs:46 on main
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535720Z ERROR fmt_pretty::yak_shave: failed to shave yak, yak: 3, error: missing yak, error.sources: [out of space, out of cash]
    at examples/examples/fmt/yak_shave.rs:51 on main
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535742Z TRACE fmt_pretty::yak_shave: yaks_shaved: 2
    at examples/examples/fmt/yak_shave.rs:55 on main
    in fmt_pretty::yak_shave::shaving_yaks with yaks: 3

  2022-02-15T18:44:24.535765Z  INFO fmt_pretty: yak shaving completed, all_yaks_shaved: false
    at examples/examples/fmt-pretty.rs:19 on main

Implementations

👎 Deprecated since 0.3.6:

all formatters now support configurable source locations. Use Format::with_source_location instead.

Sets whether the event’s source code location is displayed.

This defaults to true.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Format the provided fields to the provided Writer, returning a result.

Record additional field(s) on an existing span. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into #41263)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more