Struct pyo3_log::Logger[][src]

pub struct Logger { /* fields omitted */ }

The Logger

The actual Logger that can be installed into the Rust side and will send messages over to Python.

It can be either created directly and then installed, passed to other aggregating log systems, or the init or try_init functions may be used if defaults are good enough.

Implementations

impl Logger[src]

pub fn new(py: Python<'_>, caching: Caching) -> PyResult<Self>[src]

Creates a new logger.

It defaults to having a filter for Debug.

pub fn install(self) -> Result<ResetHandle, SetLoggerError>[src]

Installs this logger as the global one.

When installing, it also sets the corresponding maximum level, constructed using the filters in this logger.

pub fn reset_handle(&self) -> ResetHandle[src]

Provides the reset handle of this logger.

Note that installing the logger also returns a reset handle. This function is available if, for example, the logger will be passed to some other logging system that connects multiple loggers together.

pub fn filter(self, filter: LevelFilter) -> Self[src]

Configures the default logging filter.

Log messages will be filtered according a filter. If one provided by a filter_target matches, it takes preference. If none matches, this one is used.

The default filter if none set is Debug.

pub fn filter_target(self, target: String, filter: LevelFilter) -> Self[src]

Sets a filter for a specific target, overriding the default.

This’ll match targets with the same name and all the children in the module hierarchy. In case multiple match, the most specific one wins.

With this configuration, modules will log in the following levels:


Logger::default()
    .filter(LevelFilter::Warn)
    .filter_target("xy".to_owned(), LevelFilter::Debug)
    .filter_target("xy::aa".to_owned(), LevelFilter::Trace);
  • whatever => Warn
  • xy => Debug
  • xy::aa => Trace
  • xy::aabb => Debug

Trait Implementations

impl Clone for Logger[src]

impl Debug for Logger[src]

impl Default for Logger[src]

impl Log for Logger[src]

Auto Trait Implementations

impl !RefUnwindSafe for Logger

impl Send for Logger

impl Sync for Logger

impl Unpin for Logger

impl !UnwindSafe for Logger

Blanket Implementations

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

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

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

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.