Class OtlpHttpSpanExporterBuilder
- java.lang.Object
-
- io.opentelemetry.exporter.otlp.http.trace.OtlpHttpSpanExporterBuilder
-
public final class OtlpHttpSpanExporterBuilder extends java.lang.ObjectBuilder utility forOtlpHttpSpanExporter.- Since:
- 1.5.0
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.StringDEFAULT_ENDPOINTprivate static MemoryModeDEFAULT_MEMORY_MODEprivate HttpExporterBuilder<Marshaler>delegateprivate MemoryModememoryMode
-
Constructor Summary
Constructors Constructor Description OtlpHttpSpanExporterBuilder()OtlpHttpSpanExporterBuilder(HttpExporterBuilder<Marshaler> delegate, MemoryMode memoryMode)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description OtlpHttpSpanExporterBuilderaddHeader(java.lang.String key, java.lang.String value)Add a constant header to requests.OtlpHttpSpanExporterbuild()Constructs a new instance of the exporter based on the builder's values.OtlpHttpSpanExporterBuildersetClientTls(byte[] privateKeyPem, byte[] certificatePem)Sets ths client key and the certificate chain to use for verifying client when TLS is enabled.OtlpHttpSpanExporterBuildersetCompression(java.lang.String compressionMethod)Sets the method used to compress payloads.OtlpHttpSpanExporterBuildersetConnectTimeout(long timeout, java.util.concurrent.TimeUnit unit)Sets the maximum time to wait for new connections to be established.OtlpHttpSpanExporterBuildersetConnectTimeout(java.time.Duration timeout)Sets the maximum time to wait for new connections to be established.OtlpHttpSpanExporterBuildersetEndpoint(java.lang.String endpoint)Sets the OTLP endpoint to connect to.OtlpHttpSpanExporterBuildersetHeaders(java.util.function.Supplier<java.util.Map<java.lang.String,java.lang.String>> headerSupplier)Set the supplier of headers to add to requests.OtlpHttpSpanExporterBuildersetMemoryMode(MemoryMode memoryMode)Set theMemoryMode.OtlpHttpSpanExporterBuildersetMeterProvider(MeterProvider meterProvider)Sets theMeterProviderto use to collect metrics related to export.OtlpHttpSpanExporterBuildersetMeterProvider(java.util.function.Supplier<MeterProvider> meterProviderSupplier)Sets theMeterProvidersupplier to use to collect metrics related to export.OtlpHttpSpanExporterBuildersetProxy(ProxyOptions proxyOptions)Sets the proxy options.OtlpHttpSpanExporterBuildersetRetryPolicy(RetryPolicy retryPolicy)Set the retry policy, ornullto disable retry.OtlpHttpSpanExporterBuildersetSslContext(javax.net.ssl.SSLContext sslContext, javax.net.ssl.X509TrustManager trustManager)Sets the "bring-your-own" SSLContext for use with TLS.OtlpHttpSpanExporterBuildersetTimeout(long timeout, java.util.concurrent.TimeUnit unit)Sets the maximum time to wait for the collector to process an exported batch of spans.OtlpHttpSpanExporterBuildersetTimeout(java.time.Duration timeout)Sets the maximum time to wait for the collector to process an exported batch of spans.OtlpHttpSpanExporterBuildersetTrustedCertificates(byte[] trustedCertificatesPem)Sets the certificate chain to use for verifying servers when TLS is enabled.
-
-
-
Field Detail
-
DEFAULT_ENDPOINT
private static final java.lang.String DEFAULT_ENDPOINT
- See Also:
- Constant Field Values
-
DEFAULT_MEMORY_MODE
private static final MemoryMode DEFAULT_MEMORY_MODE
-
delegate
private final HttpExporterBuilder<Marshaler> delegate
-
memoryMode
private MemoryMode memoryMode
-
-
Constructor Detail
-
OtlpHttpSpanExporterBuilder
OtlpHttpSpanExporterBuilder(HttpExporterBuilder<Marshaler> delegate, MemoryMode memoryMode)
-
OtlpHttpSpanExporterBuilder
OtlpHttpSpanExporterBuilder()
-
-
Method Detail
-
setTimeout
public OtlpHttpSpanExporterBuilder setTimeout(long timeout, java.util.concurrent.TimeUnit unit)
Sets the maximum time to wait for the collector to process an exported batch of spans. If unset, defaults to 10Ls.
-
setTimeout
public OtlpHttpSpanExporterBuilder setTimeout(java.time.Duration timeout)
Sets the maximum time to wait for the collector to process an exported batch of spans. If unset, defaults to 10Ls.
-
setConnectTimeout
public OtlpHttpSpanExporterBuilder setConnectTimeout(long timeout, java.util.concurrent.TimeUnit unit)
Sets the maximum time to wait for new connections to be established. If unset, defaults to 10Ls.- Since:
- 1.33.0
-
setConnectTimeout
public OtlpHttpSpanExporterBuilder setConnectTimeout(java.time.Duration timeout)
Sets the maximum time to wait for new connections to be established. If unset, defaults to 10Ls.- Since:
- 1.33.0
-
setEndpoint
public OtlpHttpSpanExporterBuilder setEndpoint(java.lang.String endpoint)
Sets the OTLP endpoint to connect to. If unset, defaults to "http://localhost:4318/v1/traces". The endpoint must start with either http:// or https://, and include the full HTTP path.
-
setCompression
public OtlpHttpSpanExporterBuilder setCompression(java.lang.String compressionMethod)
Sets the method used to compress payloads. If unset, compression is disabled. Compression method "gzip" and "none" are supported out of the box. Support for additional compression methods is available by implementingCompressorandCompressorProvider.
-
addHeader
public OtlpHttpSpanExporterBuilder addHeader(java.lang.String key, java.lang.String value)
Add a constant header to requests. If thekeycollides with another constant header name or a one fromsetHeaders(Supplier), the values from both are included.
-
setHeaders
public OtlpHttpSpanExporterBuilder setHeaders(java.util.function.Supplier<java.util.Map<java.lang.String,java.lang.String>> headerSupplier)
Set the supplier of headers to add to requests. If a key from the map collides with a constant fromaddHeader(String, String), the values from both are included.- Since:
- 1.33.0
-
setTrustedCertificates
public OtlpHttpSpanExporterBuilder setTrustedCertificates(byte[] trustedCertificatesPem)
Sets the certificate chain to use for verifying servers when TLS is enabled. Thebyte[]should contain an X.509 certificate collection in PEM format. If not set, TLS connections will use the system default trusted certificates.
-
setClientTls
public OtlpHttpSpanExporterBuilder setClientTls(byte[] privateKeyPem, byte[] certificatePem)
Sets ths client key and the certificate chain to use for verifying client when TLS is enabled. The key must be PKCS8, and both must be in PEM format.
-
setSslContext
public OtlpHttpSpanExporterBuilder setSslContext(javax.net.ssl.SSLContext sslContext, javax.net.ssl.X509TrustManager trustManager)
Sets the "bring-your-own" SSLContext for use with TLS. Users should call this _or_ set raw certificate bytes, but not both.- Since:
- 1.26.0
-
setRetryPolicy
public OtlpHttpSpanExporterBuilder setRetryPolicy(@Nullable RetryPolicy retryPolicy)
Set the retry policy, ornullto disable retry. Retry policy isRetryPolicy.getDefault()by default- Since:
- 1.28.0
-
setProxy
public OtlpHttpSpanExporterBuilder setProxy(ProxyOptions proxyOptions)
Sets the proxy options. Proxying is disabled by default.- Since:
- 1.36.0
-
setMeterProvider
public OtlpHttpSpanExporterBuilder setMeterProvider(MeterProvider meterProvider)
Sets theMeterProviderto use to collect metrics related to export. If not set, usesGlobalOpenTelemetry.getMeterProvider().
-
setMeterProvider
public OtlpHttpSpanExporterBuilder setMeterProvider(java.util.function.Supplier<MeterProvider> meterProviderSupplier)
Sets theMeterProvidersupplier to use to collect metrics related to export. If not set, usesGlobalOpenTelemetry.getMeterProvider().- Since:
- 1.32.0
-
setMemoryMode
public OtlpHttpSpanExporterBuilder setMemoryMode(MemoryMode memoryMode)
Set theMemoryMode. If unset, defaults toDEFAULT_MEMORY_MODE.When memory mode is
MemoryMode.REUSABLE_DATA, serialization is optimized to reduce memory allocation.- Since:
- 1.39.0
-
build
public OtlpHttpSpanExporter build()
Constructs a new instance of the exporter based on the builder's values.- Returns:
- a new exporter's instance
-
-