tracing_subscriber::fmt::format

Struct Pretty

Source
pub struct Pretty { /* private fields */ }
Available on crate features fmt and std and ansi 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§

Source§

impl Pretty

Source

pub fn with_source_location(self, display_location: bool) -> Self

👎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§

Source§

impl Clone for Pretty

Source§

fn clone(&self) -> Pretty

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Pretty

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Pretty

Source§

fn default() -> Self

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

impl<'writer> FormatFields<'writer> for Pretty

Source§

fn format_fields<R: RecordFields>( &self, writer: Writer<'writer>, fields: R, ) -> Result

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

fn add_fields( &self, current: &'writer mut FormattedFields<Self>, fields: &Record<'_>, ) -> Result

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

impl PartialEq for Pretty

Source§

fn eq(&self, other: &Pretty) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for Pretty

Source§

impl StructuralPartialEq for Pretty

Auto Trait Implementations§

§

impl Freeze for Pretty

§

impl RefUnwindSafe for Pretty

§

impl Send for Pretty

§

impl Sync for Pretty

§

impl Unpin for Pretty

§

impl UnwindSafe for Pretty

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit #126799)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 1 byte