[][src]Struct slog::Record

pub struct Record<'a> { /* fields omitted */ }

One logging record

Corresponds to one logging statement like info!(...) and carries all its data: eg. message, immediate key-value pairs and key-value pairs of Logger used to execute it.

Record is passed to a Logger, which delivers it to its own Drain, where actual logging processing is implemented.


impl<'a> Record<'a>[src]

pub fn new(
    s: &'a RecordStatic<'a>,
    msg: &'a Arguments<'a>,
    kv: BorrowedKV<'a>
) -> Self

Create a new Record

Most of the time, it is slightly more performant to construct a Record via the record! macro because it enforces that the entire RecordStatic is built at compile-time.

Use this if runtime record creation is a requirement, as is the case with slog-async, for example.

pub fn msg(&self) -> &Arguments<'_>[src]

Get a log record message

pub fn level(&self) -> Level[src]

Get record logging level

pub fn line(&self) -> u32[src]

Get line number

pub fn location(&self) -> &RecordLocation[src]

Get line number

pub fn column(&self) -> u32[src]

Get error column

pub fn file(&self) -> &'static str[src]

Get file path

pub fn tag(&self) -> &str[src]

Get tag

Tag is information that can be attached to Record that is not meant to be part of the normal key-value pairs, but only as an ad-hoc control flag for quick lookup in the Drains. As such should be used carefully and mostly in application code (as opposed to libraries) - where tag meaning across the system can be coordinated. When used in libraries, make sure to prefix it with something reasonably distinct, like create name.

pub fn module(&self) -> &'static str[src]

Get module

pub fn function(&self) -> &'static str[src]

Get function (placeholder)

There's currently no way to obtain that information in Rust at compile time, so it is not implemented.

It will be implemented at first opportunity, and it will not be considered a breaking change.

pub fn kv(&self) -> BorrowedKV<'_>[src]

Get key-value pairs

Auto Trait Implementations

impl<'a> !RefUnwindSafe for Record<'a>

impl<'a> !Send for Record<'a>

impl<'a> !Sync for Record<'a>

impl<'a> Unpin for Record<'a>

impl<'a> !UnwindSafe for Record<'a>

Blanket Implementations

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

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

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

impl<T> From<T> for T[src]

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

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.