Class HttpExporterBuilder<T extends Marshaler>
- java.lang.Object
-
- io.opentelemetry.exporter.internal.http.HttpExporterBuilder<T>
-
public final class HttpExporterBuilder<T extends Marshaler> extends java.lang.Object
A builder forHttpExporter
.This class is internal and is hence not for public use. Its APIs are unstable and can change at any time.
-
-
Field Summary
Fields Modifier and Type Field Description private Authenticator
authenticator
private Compressor
compressor
private long
connectTimeoutNanos
private java.util.Map<java.lang.String,java.lang.String>
constantHeaders
static long
DEFAULT_CONNECT_TIMEOUT_SECS
static long
DEFAULT_TIMEOUT_SECS
private java.lang.String
endpoint
private boolean
exportAsJson
private java.lang.String
exporterName
private java.util.function.Supplier<java.util.Map<java.lang.String,java.lang.String>>
headerSupplier
private static java.util.logging.Logger
LOGGER
private java.util.function.Supplier<MeterProvider>
meterProviderSupplier
private ProxyOptions
proxyOptions
private RetryPolicy
retryPolicy
private long
timeoutNanos
private TlsConfigHelper
tlsConfigHelper
private java.lang.String
type
-
Constructor Summary
Constructors Constructor Description HttpExporterBuilder(java.lang.String exporterName, java.lang.String type, java.lang.String defaultEndpoint)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description HttpExporterBuilder<T>
addConstantHeaders(java.lang.String key, java.lang.String value)
HttpExporter<T>
build()
HttpExporterBuilder<T>
copy()
HttpExporterBuilder<T>
exportAsJson()
private static HttpSenderProvider
resolveHttpSenderProvider()
Resolve theHttpSenderProvider
.HttpExporterBuilder<T>
setAuthenticator(Authenticator authenticator)
HttpExporterBuilder<T>
setCompression(Compressor compressor)
HttpExporterBuilder<T>
setConnectTimeout(long timeout, java.util.concurrent.TimeUnit unit)
HttpExporterBuilder<T>
setEndpoint(java.lang.String endpoint)
HttpExporterBuilder<T>
setHeadersSupplier(java.util.function.Supplier<java.util.Map<java.lang.String,java.lang.String>> headerSupplier)
HttpExporterBuilder<T>
setKeyManagerFromCerts(byte[] privateKeyPem, byte[] certificatePem)
HttpExporterBuilder<T>
setMeterProvider(java.util.function.Supplier<MeterProvider> meterProviderSupplier)
HttpExporterBuilder<T>
setProxyOptions(ProxyOptions proxyOptions)
HttpExporterBuilder<T>
setRetryPolicy(RetryPolicy retryPolicy)
HttpExporterBuilder<T>
setSslContext(javax.net.ssl.SSLContext sslContext, javax.net.ssl.X509TrustManager trustManager)
HttpExporterBuilder<T>
setTimeout(long timeout, java.util.concurrent.TimeUnit unit)
HttpExporterBuilder<T>
setTrustManagerFromCerts(byte[] trustedCertificatesPem)
java.lang.String
toString()
java.lang.String
toString(boolean includePrefixAndSuffix)
-
-
-
Field Detail
-
DEFAULT_TIMEOUT_SECS
public static final long DEFAULT_TIMEOUT_SECS
- See Also:
- Constant Field Values
-
DEFAULT_CONNECT_TIMEOUT_SECS
public static final long DEFAULT_CONNECT_TIMEOUT_SECS
- See Also:
- Constant Field Values
-
LOGGER
private static final java.util.logging.Logger LOGGER
-
exporterName
private final java.lang.String exporterName
-
type
private final java.lang.String type
-
endpoint
private java.lang.String endpoint
-
timeoutNanos
private long timeoutNanos
-
compressor
@Nullable private Compressor compressor
-
connectTimeoutNanos
private long connectTimeoutNanos
-
proxyOptions
@Nullable private ProxyOptions proxyOptions
-
exportAsJson
private boolean exportAsJson
-
constantHeaders
private final java.util.Map<java.lang.String,java.lang.String> constantHeaders
-
headerSupplier
private java.util.function.Supplier<java.util.Map<java.lang.String,java.lang.String>> headerSupplier
-
tlsConfigHelper
private TlsConfigHelper tlsConfigHelper
-
retryPolicy
@Nullable private RetryPolicy retryPolicy
-
meterProviderSupplier
private java.util.function.Supplier<MeterProvider> meterProviderSupplier
-
authenticator
@Nullable private Authenticator authenticator
-
-
Method Detail
-
setTimeout
public HttpExporterBuilder<T> setTimeout(long timeout, java.util.concurrent.TimeUnit unit)
-
setConnectTimeout
public HttpExporterBuilder<T> setConnectTimeout(long timeout, java.util.concurrent.TimeUnit unit)
-
setEndpoint
public HttpExporterBuilder<T> setEndpoint(java.lang.String endpoint)
-
setCompression
public HttpExporterBuilder<T> setCompression(@Nullable Compressor compressor)
-
addConstantHeaders
public HttpExporterBuilder<T> addConstantHeaders(java.lang.String key, java.lang.String value)
-
setHeadersSupplier
public HttpExporterBuilder<T> setHeadersSupplier(java.util.function.Supplier<java.util.Map<java.lang.String,java.lang.String>> headerSupplier)
-
setAuthenticator
public HttpExporterBuilder<T> setAuthenticator(Authenticator authenticator)
-
setTrustManagerFromCerts
public HttpExporterBuilder<T> setTrustManagerFromCerts(byte[] trustedCertificatesPem)
-
setKeyManagerFromCerts
public HttpExporterBuilder<T> setKeyManagerFromCerts(byte[] privateKeyPem, byte[] certificatePem)
-
setSslContext
public HttpExporterBuilder<T> setSslContext(javax.net.ssl.SSLContext sslContext, javax.net.ssl.X509TrustManager trustManager)
-
setMeterProvider
public HttpExporterBuilder<T> setMeterProvider(java.util.function.Supplier<MeterProvider> meterProviderSupplier)
-
setRetryPolicy
public HttpExporterBuilder<T> setRetryPolicy(@Nullable RetryPolicy retryPolicy)
-
setProxyOptions
public HttpExporterBuilder<T> setProxyOptions(ProxyOptions proxyOptions)
-
exportAsJson
public HttpExporterBuilder<T> exportAsJson()
-
copy
public HttpExporterBuilder<T> copy()
-
build
public HttpExporter<T> build()
-
toString
public java.lang.String toString(boolean includePrefixAndSuffix)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
resolveHttpSenderProvider
private static HttpSenderProvider resolveHttpSenderProvider()
Resolve theHttpSenderProvider
.If no
HttpSenderProvider
is available, throwIllegalStateException
.If only one
HttpSenderProvider
is available, use it.If multiple are available and..
io.opentelemetry.exporter.internal.http.HttpSenderProvider
is empty, use the first found.io.opentelemetry.exporter.internal.http.HttpSenderProvider
is set, use the matching provider. If none match, throwIllegalStateException
.
-
-