Class OtlpHttpLogRecordExporterBuilder
- java.lang.Object
-
- io.opentelemetry.exporter.otlp.http.logs.OtlpHttpLogRecordExporterBuilder
-
public final class OtlpHttpLogRecordExporterBuilder extends java.lang.Object
Builder utility forOtlpHttpLogRecordExporter
.- Since:
- 1.27.0
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
DEFAULT_ENDPOINT
private static MemoryMode
DEFAULT_MEMORY_MODE
private HttpExporterBuilder<Marshaler>
delegate
private MemoryMode
memoryMode
-
Constructor Summary
Constructors Constructor Description OtlpHttpLogRecordExporterBuilder()
OtlpHttpLogRecordExporterBuilder(HttpExporterBuilder<Marshaler> delegate, MemoryMode memoryMode)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description OtlpHttpLogRecordExporterBuilder
addHeader(java.lang.String key, java.lang.String value)
Add a constant header to requests.OtlpHttpLogRecordExporter
build()
Constructs a new instance of the exporter based on the builder's values.OtlpHttpLogRecordExporterBuilder
setClientTls(byte[] privateKeyPem, byte[] certificatePem)
Sets ths client key and the certificate chain to use for verifying client when TLS is enabled.OtlpHttpLogRecordExporterBuilder
setCompression(java.lang.String compressionMethod)
Sets the method used to compress payloads.OtlpHttpLogRecordExporterBuilder
setConnectTimeout(long timeout, java.util.concurrent.TimeUnit unit)
Sets the maximum time to wait for new connections to be established.OtlpHttpLogRecordExporterBuilder
setConnectTimeout(java.time.Duration timeout)
Sets the maximum time to wait for new connections to be established.OtlpHttpLogRecordExporterBuilder
setEndpoint(java.lang.String endpoint)
Sets the OTLP endpoint to connect to.OtlpHttpLogRecordExporterBuilder
setHeaders(java.util.function.Supplier<java.util.Map<java.lang.String,java.lang.String>> headerSupplier)
Set the supplier of headers to add to requests.OtlpHttpLogRecordExporterBuilder
setMemoryMode(MemoryMode memoryMode)
Set theMemoryMode
.OtlpHttpLogRecordExporterBuilder
setMeterProvider(MeterProvider meterProvider)
Sets theMeterProvider
to use to collect metrics related to export.OtlpHttpLogRecordExporterBuilder
setMeterProvider(java.util.function.Supplier<MeterProvider> meterProviderSupplier)
Sets theMeterProvider
supplier used to collect metrics related to export.OtlpHttpLogRecordExporterBuilder
setProxyOptions(ProxyOptions proxyOptions)
Sets the proxy options.OtlpHttpLogRecordExporterBuilder
setRetryPolicy(RetryPolicy retryPolicy)
Set the retry policy, ornull
to disable retry.OtlpHttpLogRecordExporterBuilder
setSslContext(javax.net.ssl.SSLContext sslContext, javax.net.ssl.X509TrustManager trustManager)
Sets the "bring-your-own" SSLContext for use with TLS.OtlpHttpLogRecordExporterBuilder
setTimeout(long timeout, java.util.concurrent.TimeUnit unit)
Sets the maximum time to wait for the collector to process an exported batch of logs.OtlpHttpLogRecordExporterBuilder
setTimeout(java.time.Duration timeout)
Sets the maximum time to wait for the collector to process an exported batch of logs.OtlpHttpLogRecordExporterBuilder
setTrustedCertificates(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
-
OtlpHttpLogRecordExporterBuilder
OtlpHttpLogRecordExporterBuilder(HttpExporterBuilder<Marshaler> delegate, MemoryMode memoryMode)
-
OtlpHttpLogRecordExporterBuilder
OtlpHttpLogRecordExporterBuilder()
-
-
Method Detail
-
setTimeout
public OtlpHttpLogRecordExporterBuilder setTimeout(long timeout, java.util.concurrent.TimeUnit unit)
Sets the maximum time to wait for the collector to process an exported batch of logs. If unset, defaults to 10Ls.
-
setTimeout
public OtlpHttpLogRecordExporterBuilder setTimeout(java.time.Duration timeout)
Sets the maximum time to wait for the collector to process an exported batch of logs. If unset, defaults to 10Ls.
-
setConnectTimeout
public OtlpHttpLogRecordExporterBuilder 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 OtlpHttpLogRecordExporterBuilder 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 OtlpHttpLogRecordExporterBuilder setEndpoint(java.lang.String endpoint)
Sets the OTLP endpoint to connect to. If unset, defaults to "http://localhost:4318/v1/logs". The endpoint must start with either http:// or https://, and include the full HTTP path.
-
setCompression
public OtlpHttpLogRecordExporterBuilder 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 implementingCompressor
andCompressorProvider
.
-
addHeader
public OtlpHttpLogRecordExporterBuilder addHeader(java.lang.String key, java.lang.String value)
Add a constant header to requests. If thekey
collides with another constant header name or a one fromsetHeaders(Supplier)
, the values from both are included.
-
setHeaders
public OtlpHttpLogRecordExporterBuilder 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 OtlpHttpLogRecordExporterBuilder 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 OtlpHttpLogRecordExporterBuilder 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 OtlpHttpLogRecordExporterBuilder 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.
-
setRetryPolicy
public OtlpHttpLogRecordExporterBuilder setRetryPolicy(@Nullable RetryPolicy retryPolicy)
Set the retry policy, ornull
to disable retry. Retry policy isRetryPolicy.getDefault()
by default- Since:
- 1.28.0
-
setProxyOptions
public OtlpHttpLogRecordExporterBuilder setProxyOptions(ProxyOptions proxyOptions)
Sets the proxy options. Proxying is disabled by default.- Since:
- 1.36.0
-
setMeterProvider
public OtlpHttpLogRecordExporterBuilder setMeterProvider(MeterProvider meterProvider)
Sets theMeterProvider
to use to collect metrics related to export. If not set, usesGlobalOpenTelemetry.getMeterProvider()
.
-
setMeterProvider
public OtlpHttpLogRecordExporterBuilder setMeterProvider(java.util.function.Supplier<MeterProvider> meterProviderSupplier)
Sets theMeterProvider
supplier used to collect metrics related to export. If not set, usesGlobalOpenTelemetry.getMeterProvider()
.- Since:
- 1.32.0
-
setMemoryMode
public OtlpHttpLogRecordExporterBuilder 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 OtlpHttpLogRecordExporter build()
Constructs a new instance of the exporter based on the builder's values.- Returns:
- a new exporter's instance
-
-