Enum LogLevel

Source
pub enum LogLevel {
    Trace,
    Debug,
    Info,
    Warn,
    Error,
    Fatal,
}
Expand description

Logging severity levels in ascending order of importance.

The levels follow the common convention:

  • Trace: Very detailed information, typically only needed when debugging specific issues
  • Debug: Detailed information useful for debugging
  • Info: General information about application progress
  • Warn: Potentially harmful situations that might need attention
  • Error: Error events that might still allow the application to continue running

Variants§

§

Trace

Very detailed information for debugging specific issues

§

Debug

Detailed information useful for debugging

§

Info

General information about application progress

§

Warn

Potentially harmful situations

§

Error

Error events, Could still allow the application to continue running

§

Fatal

Fatal error events that lead to application termination

Implementations§

Source§

impl LogLevel

Source

pub fn default_coloring(&self) -> String

Returns the level string with appropriate color formatting.

Each log level has an associated color:

  • Trace: Cyan
  • Debug: Blue
  • Info: Green
  • Warn: Yellow
  • Error: Red
§Returns

The formatted string with ANSI color codes applied

Examples found in repository?
examples/custom-format.rs (line 9)
6    fn format(&self, record: &traccia::Record) -> String {
7        format!(
8            "{}: {}",
9            record.level.default_coloring().to_lowercase(),
10            record.message
11        )
12    }
More examples
Hide additional examples
examples/threads.rs (line 12)
6    fn format(&self, record: &Record) -> String {
7        let id_str = format!("{:?}", record.thread_id);
8        let id_str = id_str.replace("ThreadId(", "").replace(")", "");
9
10        format!(
11            "[{}] [thread:{}] {}",
12            record.level.default_coloring(),
13            id_str,
14            record.message,
15        )
16    }

Trait Implementations§

Source§

impl Clone for LogLevel

Source§

fn clone(&self) -> LogLevel

Returns a duplicate 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 LogLevel

Source§

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

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

impl Default for LogLevel

The default log level is info

Source§

fn default() -> Self

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

impl Display for LogLevel

Source§

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

Formats the log level as a string.

§Returns

A capitalized string representation of the log level.

Source§

impl FromStr for LogLevel

Parse the log level from &str.

Useful for things like clap to parse the log level via command-line arguments.

Source§

type Err = Error

The associated error which can be returned from parsing.
Source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
Source§

impl Hash for LogLevel

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Ord for LogLevel

Source§

fn cmp(&self, other: &LogLevel) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for LogLevel

Source§

fn eq(&self, other: &LogLevel) -> 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 PartialOrd for LogLevel

Source§

fn partial_cmp(&self, other: &LogLevel) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl TryFrom<LogLevel> for u8

TryFrom log level implementation for u8

Source§

type Error = Error

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

fn try_from(value: LogLevel) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl TryFrom<u8> for LogLevel

Tryfrom u8 parsing implementation

Source§

type Error = Error

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

fn try_from(value: u8) -> Result<Self, Error>

Performs the conversion.
Source§

impl ValueEnum for LogLevel

Implementation of the clap’s ValueEnum trait for LogLevel when the “clap” feature is enabled.

This allows using LogLevel directly with clap’s derive API and provides several ways to specify log levels on the command line:

§Command-line examples:

myapp --log-level debug

myapp --log-level DEBUG

myapp --log-level Debug

This implementation provides the list of all possible log level variants and defines how they can be specified from command-line arguments, supporting case-insensitive matching.

Source§

fn value_variants<'a>() -> &'a [Self]

Returns an array slice containing all variants of LogLevel.

This is used by clap to validate and parse command-line arguments.

Source§

fn to_possible_value(&self) -> Option<PossibleValue>

Converts a LogLevel variant to its string representation with aliases.

For each log level, this provides:

  • A lowercase default (e.g., “debug”)
  • An uppercase alias (e.g., “DEBUG”)
  • A title case alias (e.g., “Debug”)

This allows users to specify the log level in any case they prefer.

Source§

fn from_str(input: &str, ignore_case: bool) -> Result<Self, String>

Parse an argument into Self.
Source§

impl Copy for LogLevel

Source§

impl Eq for LogLevel

Source§

impl StructuralPartialEq for LogLevel

Auto Trait Implementations§

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, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. 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.