Interface MetricReader
- All Superinterfaces:
AggregationTemporalitySelector
,AutoCloseable
,Closeable
,DefaultAggregationSelector
- All Known Implementing Classes:
PeriodicMetricReader
public interface MetricReader
extends AggregationTemporalitySelector, DefaultAggregationSelector, Closeable
A metric reader reads metrics from an
SdkMeterProvider
.- Since:
- 1.14.0
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
close()
Close thisMetricReader
, releasing any resources.io.opentelemetry.sdk.common.CompletableResultCode
Read and export the metrics.default Aggregation
getDefaultAggregation
(InstrumentType instrumentType) Return the default aggregation for theInstrumentType
.default io.opentelemetry.sdk.common.export.MemoryMode
Returns the memory mode used by this reader.void
register
(CollectionRegistration registration) Called bySdkMeterProvider
on initialization to supply theMetricReader
withMetricProducer
s used to collect metrics.io.opentelemetry.sdk.common.CompletableResultCode
shutdown()
Shuts down the metric reader.Methods inherited from interface io.opentelemetry.sdk.metrics.export.AggregationTemporalitySelector
getAggregationTemporality
Methods inherited from interface io.opentelemetry.sdk.metrics.export.DefaultAggregationSelector
with
-
Method Details
-
register
Called bySdkMeterProvider
on initialization to supply theMetricReader
withMetricProducer
s used to collect metrics.MetricReader
implementations callCollectionRegistration.collectAllMetrics()
to read metrics. -
getDefaultAggregation
Return the default aggregation for theInstrumentType
.- Specified by:
getDefaultAggregation
in interfaceDefaultAggregationSelector
- Since:
- 1.16.0
- See Also:
-
getMemoryMode
default io.opentelemetry.sdk.common.export.MemoryMode getMemoryMode()Returns the memory mode used by this reader.- Returns:
- The
MemoryMode
used by this instance - Since:
- 1.31.0
-
forceFlush
io.opentelemetry.sdk.common.CompletableResultCode forceFlush()Read and export the metrics.Called when
SdkMeterProvider.forceFlush()
is called.- Returns:
- the result of the flush.
-
shutdown
io.opentelemetry.sdk.common.CompletableResultCode shutdown()Shuts down the metric reader.Called when
SdkMeterProvider.shutdown()
is called.For pull based readers like prometheus, this should shut down the metric hosting endpoint or server doing such a job.
For push based readers like
MetricExporter
, this should shut down any scheduler threads.- Returns:
- the result of the shutdown.
-
close
Close thisMetricReader
, releasing any resources.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-