Skip to main content

LogExporter

Trait LogExporter 

pub trait LogExporter:
    Send
    + Sync
    + Debug {
    // Required method
    fn export(
        &self,
        batch: LogBatch<'_>,
    ) -> impl Future<Output = Result<(), OTelSdkError>> + Send;

    // Provided methods
    fn shutdown_with_timeout(
        &self,
        _timeout: Duration,
    ) -> Result<(), OTelSdkError> { ... }
    fn shutdown(&self) -> Result<(), OTelSdkError> { ... }
    fn set_resource(&mut self, _resource: &Resource) { ... }
}
Available on crate features logs and opentelemetry only.
Expand description

LogExporter defines the interface that log exporters should implement.

Required Methods§

fn export( &self, batch: LogBatch<'_>, ) -> impl Future<Output = Result<(), OTelSdkError>> + Send

Exports a batch of log records and their associated instrumentation scopes.

The export method is responsible for sending a batch of log records to an external destination. It takes a LogBatch as an argument, which contains references to the log records and their corresponding instrumentation scopes. The method returns a LogResult indicating the success or failure of the export operation.

§Arguments
  • batch - A LogBatch containing the log records and instrumentation scopes to be exported.
§Returns

A LogResult<()>, which is a result type indicating either a successful export (with Ok(())) or an error (Err(LogError)) if the export operation failed.

Provided Methods§

fn shutdown_with_timeout(&self, _timeout: Duration) -> Result<(), OTelSdkError>

Shuts down the exporter.

fn shutdown(&self) -> Result<(), OTelSdkError>

Shuts down the exporter with a default timeout.

fn set_resource(&mut self, _resource: &Resource)

Set the resource for the exporter.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

§

impl<S, H> LogExporter for OtelExporter<S, H>
where H: HeaderBag, S: Debug + Send + Sync + 'static, OtelExporter<S, H>: OtlpTransport + Send + Sync,