pub trait LogProcessor:
Send
+ Sync
+ Debug {
// Required methods
fn emit(&self, data: &mut LogRecord, instrumentation: &InstrumentationScope);
fn force_flush(&self) -> LogResult<()>;
fn shutdown(&self) -> LogResult<()>;
// Provided method
fn set_resource(&self, _resource: &Resource) { ... }
}
Expand description
The interface for plugging into a Logger
.
Required Methods§
sourcefn emit(&self, data: &mut LogRecord, instrumentation: &InstrumentationScope)
fn emit(&self, data: &mut LogRecord, instrumentation: &InstrumentationScope)
Called when a log record is ready to processed and exported.
This method receives a mutable reference to LogRecord
. If the processor
needs to handle the export asynchronously, it should clone the data to
ensure it can be safely processed without lifetime issues. Any changes
made to the log data in this method will be reflected in the next log
processor in the chain.
§Parameters
record
: A mutable reference toLogRecord
representing the log record.instrumentation
: The instrumentation scope associated with the log record.
sourcefn force_flush(&self) -> LogResult<()>
fn force_flush(&self) -> LogResult<()>
Force the logs lying in the cache to be exported.
Provided Methods§
sourcefn set_resource(&self, _resource: &Resource)
fn set_resource(&self, _resource: &Resource)
Set the resource for the log processor.