Class OtlpGrpcMetricExporterBuilder
- Since:
- 1.14.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate AggregationTemporalitySelector
private static final AggregationTemporalitySelector
private static final URI
private static final String
private static final MemoryMode
private static final long
private DefaultAggregationSelector
(package private) final GrpcExporterBuilder
<Marshaler> (package private) static final String
private static final String
private MemoryMode
-
Constructor Summary
ConstructorsConstructorDescriptionOtlpGrpcMetricExporterBuilder
(GrpcExporterBuilder<Marshaler> delegate, MemoryMode memoryMode) -
Method Summary
Modifier and TypeMethodDescriptionAdd a constant header to requests.build()
Constructs a new instance of the exporter based on the builder's values.setAggregationTemporalitySelector
(AggregationTemporalitySelector aggregationTemporalitySelector) setChannel
(io.grpc.ManagedChannel channel) Deprecated.setClientTls
(byte[] privateKeyPem, byte[] certificatePem) Sets ths client key and the certificate chain to use for verifying client when TLS is enabled.setCompression
(String compressionMethod) Sets the method used to compress payloads.setConnectTimeout
(long timeout, TimeUnit unit) Sets the maximum time to wait for new connections to be established.setConnectTimeout
(Duration timeout) Sets the maximum time to wait for new connections to be established.setDefaultAggregationSelector
(DefaultAggregationSelector defaultAggregationSelector) setEndpoint
(String endpoint) Sets the OTLP endpoint to connect to.setHeaders
(Supplier<Map<String, String>> headerSupplier) Set the supplier of headers to add to requests.setMemoryMode
(MemoryMode memoryMode) Set theMemoryMode
.setRetryPolicy
(RetryPolicy retryPolicy) Set the retry policy, ornull
to disable retry.setSslContext
(SSLContext sslContext, X509TrustManager trustManager) Sets the "bring-your-own" SSLContext for use with TLS.setTimeout
(long timeout, TimeUnit unit) Sets the maximum time to wait for the collector to process an exported batch of metrics.setTimeout
(Duration timeout) Sets the maximum time to wait for the collector to process an exported batch of metrics.setTrustedCertificates
(byte[] trustedCertificatesPem) Sets the certificate chain to use for verifying servers when TLS is enabled.
-
Field Details
-
GRPC_SERVICE_NAME
- See Also:
-
GRPC_ENDPOINT_PATH
- See Also:
-
DEFAULT_ENDPOINT_URL
- See Also:
-
DEFAULT_ENDPOINT
-
DEFAULT_TIMEOUT_SECS
private static final long DEFAULT_TIMEOUT_SECS- See Also:
-
DEFAULT_AGGREGATION_TEMPORALITY_SELECTOR
-
DEFAULT_MEMORY_MODE
-
delegate
-
aggregationTemporalitySelector
-
defaultAggregationSelector
-
memoryMode
-
-
Constructor Details
-
OtlpGrpcMetricExporterBuilder
OtlpGrpcMetricExporterBuilder(GrpcExporterBuilder<Marshaler> delegate, MemoryMode memoryMode) -
OtlpGrpcMetricExporterBuilder
OtlpGrpcMetricExporterBuilder()
-
-
Method Details
-
setChannel
Deprecated.UsesetEndpoint(String)
. If you have a use case not satisfied by the methods on this builder, please file an issue to let us know what it is.Sets the managed chanel to use when communicating with the backend. Takes precedence oversetEndpoint(String)
if both are called.Note: calling this overrides the spec compliant
User-Agent
header. To ensure spec compliance, setManagedChannelBuilder.userAgent(String)
toOtlpUserAgent.getUserAgent()
when building the channel.- Parameters:
channel
- the channel to use- Returns:
- this builder's instance
-
setTimeout
Sets the maximum time to wait for the collector to process an exported batch of metrics. If unset, defaults to 10Ls. -
setTimeout
Sets the maximum time to wait for the collector to process an exported batch of metrics. If unset, defaults to 10Ls. -
setConnectTimeout
Sets the maximum time to wait for new connections to be established. If unset, defaults to 10L<T extends Marshaler>s.- Since:
- 1.36.0
-
setConnectTimeout
Sets the maximum time to wait for new connections to be established. If unset, defaults to 10L<T extends Marshaler>s.- Since:
- 1.36.0
-
setEndpoint
Sets the OTLP endpoint to connect to. If unset, defaults to "http://localhost:4317". The endpoint must start with either http:// or https://. -
setCompression
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
. -
setTrustedCertificates
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
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 OtlpGrpcMetricExporterBuilder setSslContext(SSLContext sslContext, 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
-
addHeader
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. Applicable only ifsetChannel(ManagedChannel)
is not used to set channel.- Parameters:
key
- header keyvalue
- header value- Returns:
- this builder's instance
-
setHeaders
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. Applicable only ifsetChannel(ManagedChannel)
is not used to set channel.- Since:
- 1.33.0
-
setAggregationTemporalitySelector
public OtlpGrpcMetricExporterBuilder setAggregationTemporalitySelector(AggregationTemporalitySelector aggregationTemporalitySelector) Set theAggregationTemporalitySelector
used forAggregationTemporalitySelector.getAggregationTemporality(InstrumentType)
.If unset, defaults to
AggregationTemporalitySelector.alwaysCumulative()
.AggregationTemporalitySelector.deltaPreferred()
is a common configuration for delta backends. -
setDefaultAggregationSelector
public OtlpGrpcMetricExporterBuilder setDefaultAggregationSelector(DefaultAggregationSelector defaultAggregationSelector) Set theDefaultAggregationSelector
used forMetricExporter.getDefaultAggregation(InstrumentType)
.If unset, defaults to
DefaultAggregationSelector.getDefault()
.- Since:
- 1.16.0
-
setRetryPolicy
Set the retry policy, ornull
to disable retry. Retry policy isRetryPolicy.getDefault()
by default- Since:
- 1.28.0
-
setMemoryMode
Set theMemoryMode
. If unset, defaults toDEFAULT_MEMORY_MODE
.When memory mode is
MemoryMode.REUSABLE_DATA
, serialization is optimized to reduce memory allocation. Additionally, the value is used forMetricExporter.getMemoryMode()
, which sends a signal to the metrics SDK to reuse memory when possible. This is safe and desirable for most use cases, but should be used with caution of wrapping and delegating to the exporter. It is not safe for the wrapping exporter to hold onto references toMetricData
batches since the same data structures will be reused in subsequent calls toMetricExporter.export(Collection)
.- Since:
- 1.39.0
-
build
Constructs a new instance of the exporter based on the builder's values.- Returns:
- a new exporter's instance
-
setEndpoint(String)
.