Class PushMetricExporter

Class Documentation

class PushMetricExporter

PushMetricExporter defines the interface to be used by metrics libraries to push metrics data to the OpenTelemetry exporters.

Public Functions

virtual ~PushMetricExporter() = default
virtual opentelemetry::sdk::common::ExportResult Export(const ResourceMetrics &data) noexcept = 0

Exports a batch of metrics data. This method must not be called concurrently for the same exporter instance.


data – metrics data

virtual AggregationTemporality GetAggregationTemporality(InstrumentType instrument_type) const noexcept = 0

Get the AggregationTemporality for given Instrument Type for this exporter.



virtual bool ForceFlush(std::chrono::microseconds timeout = (std::chrono::microseconds::max)()) noexcept = 0

Force flush the exporter.

virtual bool Shutdown(std::chrono::microseconds timeout = std::chrono::microseconds(0)) noexcept = 0

Shut down the metric exporter.


timeout – an optional timeout.


return the status of the operation.