OtelTracerProvider.Builder - DataDog/dd-sdk-android GitHub Wiki

class Builder

A builder for creating TracerProvider instances.

Constructors

Builder

@JvmOverloads

constructor(sdkCore: SdkCore = Datadog.getInstance())

Parameters
sdkCore SDK instance to bind to. If not provided, default instance will be used.

Functions

addTag

fun addTag(key: String, value: String): OtelTracerProvider.Builder

Adds a global tag which will be appended to all spans created with the built tracer.

Parameters
key the tag key
value the tag value

build

fun build(): TracerProvider

Builds a TracerProvider based on the current state of this Builder.

setBundleWithRumEnabled

fun setBundleWithRumEnabled(enabled: Boolean): OtelTracerProvider.Builder

Enables the trace bundling with the current active View. If this feature is enabled all the spans from this moment on will be bundled with the current view information and you will be able to see all the traces sent during a specific view in the RUM Explorer.

Parameters
enabled true by default

setPartialFlushThreshold

fun setPartialFlushThreshold(threshold: Int): OtelTracerProvider.Builder

Sets the partial flush threshold. When this threshold is reached (you have a specific amount of spans closed waiting) the flush mechanism will be triggered and all the pending closed spans will be processed in order to be sent to the intake.

Parameters
threshold the threshold value (default = 5)

setSampleRate

fun setSampleRate(@FloatRange(from = 0.0, to = 100.0)sampleRate: Double): OtelTracerProvider.Builder

Sets the sample rate of spans.

Parameters
sampleRate the sample rate as a percentage between 0 and 100 (default is 100%)

setService

fun setService(service: String): OtelTracerProvider.Builder

Sets the service name that will appear in your traces.

Parameters
service the service name (default = application package name)

setTraceRateLimit

fun setTraceRateLimit(@IntRange(from = 1, to = 2147483647)traceRateLimit: Int): OtelTracerProvider.Builder

Sets the trace rate limit. This is the maximum number of traces per second that will be accepted. Please not that this property is used in conjunction with the sample rate. If no sample rate is provided this property and its related logic will be ignored.

Parameters
traceRateLimit the trace rate limit as a value between 1 and Int.MAX_VALUE (default is Int.MAX_VALUE)

setTracingHeaderTypes

fun setTracingHeaderTypes(headerTypes: Set<TracingHeaderType>): OtelTracerProvider.Builder

Sets the tracing header styles that may be injected by this tracer.

Parameters
headerTypes the list of header types injected (default = datadog style headers)