[][src]Module cex::log

Extrusive logging and backtrace support

Example

Change

use enumx_derive::EnumX;
use enumx::prelude::*;

#[derive( EnumX )]
enum Error {
    IO(    std::io::Error ),
    Parse( std::num::ParseIntError ),
}

to

use enumx_derive::EnumX;
use enumx::prelude::*;

use cex_derive::Logger;
use cex::*;

#[derive( EnumX, Logger )]
enum Error {
    IO(    Log<std::io::Error> ),
    Parse( Log<std::num::ParseIntError> ),
}

Structs

Env

Environment variable controlled log level.

Frame

A struct for store one frame for tracing.

Log

A wrapper struct for logging inner value.

Enums

LogLevel

Readable log level names

Traits

LogAgent

Log agent.

Logger

Appends a log item.

MapErrLog

Appends a log item to the Err variant.

MapErrToLog

Wraps the Err variant with Log

MapLog

Appends a log item to the Ok variant.

MapToLog

Wraps the Ok variant with Log

ToLog

Wraps a type with Log.

Functions

log_level

Read from the environment variable CEX_LOG_LEVEL to get a log level value in u32. Note that human readable names are also supported.

Type Definitions

NoLog

A type alias for opt-out logging at compile time.