Interface Aggregator<T extends PointData,U extends ExemplarData>
- All Known Implementing Classes:
AbstractSumAggregator
,DoubleBase2ExponentialHistogramAggregator
,DoubleExplicitBucketHistogramAggregator
,DoubleLastValueAggregator
,DoubleSumAggregator
,DropAggregator
,LongLastValueAggregator
,LongSumAggregator
Aggregator represents the abstract class for all the available aggregations that can be computed
during the collection phase for all the instruments.
This class is internal and is hence not for public use. Its APIs are unstable and can change at any time.
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
Copiespoint
intotoReusablePoint
.Returns a newAggregatorHandle
.default T
Creates a new reusable point.default T
Returns a new DELTA point by computing the difference between two cumulative points.default void
diffInPlace
(T previousCumulativeReusable, T currentCumulative) Resets one reusable point to be a DELTA point by computing the difference between two cumulative points.static Aggregator
<?, DoubleExemplarData> drop()
Returns the drop aggregator, an aggregator that drops measurements.toMetricData
(Resource resource, InstrumentationScopeInfo instrumentationScopeInfo, MetricDescriptor metricDescriptor, Collection<T> points, AggregationTemporality temporality) Returns theMetricData
that thisAggregation
will produce.default T
toPoint
(Measurement measurement) Return a new point representing the measurement.default void
toPoint
(Measurement measurement, T reusablePoint) ResetsreusablePoint
to represent themeasurement
.
-
Method Details
-
drop
Returns the drop aggregator, an aggregator that drops measurements. -
createHandle
AggregatorHandle<T,U> createHandle()Returns a newAggregatorHandle
. This MUST by used by the synchronous to aggregate recorded measurements during the collection cycle.- Returns:
- a new
AggregatorHandle
.
-
diff
Returns a new DELTA point by computing the difference between two cumulative points.Aggregators MUST implement diff if it can be used with asynchronous instruments.
- Parameters:
previousCumulative
- the previously captured point.currentCumulative
- the newly captured (cumulative) point.- Returns:
- The resulting delta point.
-
diffInPlace
Resets one reusable point to be a DELTA point by computing the difference between two cumulative points.The delta between the two points is set on
previousCumulativeReusable
Aggregators MUST implement diff if it can be used with asynchronous instruments.
- Parameters:
previousCumulativeReusable
- the previously captured point.currentCumulative
- the newly captured (cumulative) point.
-
toPoint
Return a new point representing the measurement.Aggregators MUST implement diff if it can be used with asynchronous instruments.
-
toPoint
ResetsreusablePoint
to represent themeasurement
.Aggregators MUST implement diff if it can be used with asynchronous instruments.
-
createReusablePoint
Creates a new reusable point. -
copyPoint
Copiespoint
intotoReusablePoint
. -
toMetricData
MetricData toMetricData(Resource resource, InstrumentationScopeInfo instrumentationScopeInfo, MetricDescriptor metricDescriptor, Collection<T> points, AggregationTemporality temporality) Returns theMetricData
that thisAggregation
will produce.- Parameters:
resource
- the resource producing the metric.instrumentationScopeInfo
- the scope that instrumented the metric.metricDescriptor
- the name, description and unit of the metric.points
- list of pointstemporality
- the temporality of the metric.- Returns:
- the
MetricDataType
that thisAggregation
will produce.
-