pub struct SimpleLogProcessor<T: LogExporter> { /* private fields */ }
Expand description
A LogProcessor
designed for testing and debugging purpose, that immediately
exports log records as they are emitted. Log records are exported synchronously
in the same thread that emits the log record.
When using this processor with the OTLP Exporter, the following exporter
features are supported:
grpc-tonic
: This requires LoggerProvider to be created within a tokio runtime. Logs can be emitted from any thread, including tokio runtime threads.reqwest-blocking-client
: LoggerProvider may be created anywhere, but logs must be emitted from a non-tokio runtime thread.reqwest-client
: LoggerProvider may be created anywhere, but logs must be emitted from a tokio runtime thread.
§Example
§Using a SimpleLogProcessor
use opentelemetry_sdk::logs::{SimpleLogProcessor, LoggerProvider, LogExporter};
use opentelemetry::global;
use opentelemetry_sdk::logs::InMemoryLogExporter;
let exporter = InMemoryLogExporter::default(); // Replace with an actual exporter
let provider = LoggerProvider::builder()
.with_simple_exporter(exporter)
.build();
Trait Implementations§
Source§impl<T: Debug + LogExporter> Debug for SimpleLogProcessor<T>
impl<T: Debug + LogExporter> Debug for SimpleLogProcessor<T>
Source§impl<T: LogExporter> LogProcessor for SimpleLogProcessor<T>
impl<T: LogExporter> LogProcessor for SimpleLogProcessor<T>
Source§fn emit(
&self,
record: &mut SdkLogRecord,
instrumentation: &InstrumentationScope,
)
fn emit( &self, record: &mut SdkLogRecord, instrumentation: &InstrumentationScope, )
Called when a log record is ready to processed and exported. Read more
Source§fn force_flush(&self) -> OTelSdkResult
fn force_flush(&self) -> OTelSdkResult
Force the logs lying in the cache to be exported.
Source§fn shutdown(&self) -> OTelSdkResult
fn shutdown(&self) -> OTelSdkResult
Shuts down the processor.
After shutdown returns the log processor should stop processing any logs.
It’s up to the implementation on when to drop the LogProcessor.
Source§fn set_resource(&self, resource: &Resource)
fn set_resource(&self, resource: &Resource)
Set the resource for the log processor.
Auto Trait Implementations§
impl<T> !Freeze for SimpleLogProcessor<T>
impl<T> RefUnwindSafe for SimpleLogProcessor<T>
impl<T> Send for SimpleLogProcessor<T>
impl<T> Sync for SimpleLogProcessor<T>
impl<T> Unpin for SimpleLogProcessor<T>where
T: Unpin,
impl<T> UnwindSafe for SimpleLogProcessor<T>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more