pub struct TonicExporterBuilder { /* private fields */ }
Available on crate feature grpc-tonic only.
Expand description

Build a trace exporter that uses tonic as grpc layer and opentelemetry protocol.

It allows users to

  • add additional metadata
  • set tls config(with tls feature enabled)
  • bring custom channel

Implementations§

source§

impl TonicExporterBuilder

source

pub fn with_tls_config(self, tls_config: ClientTlsConfig) -> Self

Available on crate feature tls only.

Set the TLS settings for the collector endpoint.

source

pub fn with_metadata(self, metadata: MetadataMap) -> Self

Set custom metadata entries to send to the collector.

source

pub fn with_compression(self, compression: Compression) -> Self

Set the compression algorithm to use when communicating with the collector.

source

pub fn with_channel(self, channel: Channel) -> Self

Use channel as tonic’s transport channel. this will override tls config and should only be used when working with non-HTTP transports.

Users MUST make sure the ExportConfig::timeout is the same as the channel’s timeout.

source

pub fn with_interceptor<I>(self, interceptor: I) -> Selfwhere I: Interceptor + Send + 'static,

Use a custom interceptor to modify each outbound request. this can be used to modify the grpc metadata, for example to inject auth tokens.

Trait Implementations§

source§

impl Debug for TonicExporterBuilder

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for TonicExporterBuilder

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl From<TonicExporterBuilder> for LogExporterBuilder

Available on crate feature logs only.
source§

fn from(exporter: TonicExporterBuilder) -> Self

Converts to this type from the input type.
source§

impl From<TonicExporterBuilder> for MetricsExporterBuilder

Available on crate feature metrics only.
source§

fn from(exporter: TonicExporterBuilder) -> Self

Converts to this type from the input type.
source§

impl From<TonicExporterBuilder> for SpanExporterBuilder

Available on crate feature trace only.
source§

fn from(exporter: TonicExporterBuilder) -> Self

Converts to this type from the input type.
source§

impl HasExportConfig for TonicExporterBuilder

source§

fn export_config(&mut self) -> &mut ExportConfig

Return a mutable reference to the export config within the exporter builders.

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FutureExt for T

source§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
source§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

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

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

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

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<B> WithExportConfig for Bwhere B: HasExportConfig,

source§

fn with_endpoint<T>(self, endpoint: T) -> Bwhere T: Into<String>,

Set the address of the OTLP collector. If not set, the default address is used.
source§

fn with_protocol(self, protocol: Protocol) -> B

Set the protocol to use when communicating with the collector. Read more
source§

fn with_timeout(self, timeout: Duration) -> B

Set the timeout to the collector.
source§

fn with_env(self) -> B

Set the trace provider configuration from the given environment variables. Read more
source§

fn with_export_config(self, exporter_config: ExportConfig) -> B

Set export config. This will override all previous configuration.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more