Remove type-specific SumData (#4216)
* Remove type-specific SumData * scare
This commit is contained in:
parent
26dd896c09
commit
a6107d5590
|
@ -14,9 +14,9 @@ import io.opentelemetry.internal.testing.slf4j.SuppressLogger;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.export.MetricExporter;
|
import io.opentelemetry.sdk.metrics.export.MetricExporter;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import org.junit.jupiter.api.BeforeEach;
|
import org.junit.jupiter.api.BeforeEach;
|
||||||
|
@ -38,7 +38,7 @@ class OtlpJsonLoggingMetricExporterTest {
|
||||||
"metric1",
|
"metric1",
|
||||||
"metric1 description",
|
"metric1 description",
|
||||||
"m",
|
"m",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
true,
|
true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Arrays.asList(
|
Arrays.asList(
|
||||||
|
@ -51,7 +51,7 @@ class OtlpJsonLoggingMetricExporterTest {
|
||||||
"metric2",
|
"metric2",
|
||||||
"metric2 description",
|
"metric2 description",
|
||||||
"s",
|
"s",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
true,
|
true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Arrays.asList(
|
Arrays.asList(
|
||||||
|
|
|
@ -13,13 +13,12 @@ import io.opentelemetry.internal.testing.slf4j.SuppressLogger;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.PrintStream;
|
import java.io.PrintStream;
|
||||||
|
@ -87,7 +86,7 @@ class LoggingMetricExporterTest {
|
||||||
"counterOne",
|
"counterOne",
|
||||||
"A simple counter",
|
"A simple counter",
|
||||||
"one",
|
"one",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
true,
|
true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -102,7 +101,7 @@ class LoggingMetricExporterTest {
|
||||||
"observedValue",
|
"observedValue",
|
||||||
"an observer gauge",
|
"an observer gauge",
|
||||||
"kb",
|
"kb",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
true,
|
true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -33,8 +33,8 @@ import io.opentelemetry.sdk.common.CompletableResultCode;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
@ -329,7 +329,7 @@ class OtlpHttpMetricExporterTest {
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -45,7 +45,6 @@ import io.opentelemetry.sdk.metrics.data.DoubleExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ExponentialHistogramBuckets;
|
import io.opentelemetry.sdk.metrics.data.ExponentialHistogramBuckets;
|
||||||
|
@ -53,11 +52,11 @@ import io.opentelemetry.sdk.metrics.data.ExponentialHistogramData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ExponentialHistogramPointData;
|
import io.opentelemetry.sdk.metrics.data.ExponentialHistogramPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongExemplarData;
|
import io.opentelemetry.sdk.metrics.data.LongExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.data.PointData;
|
import io.opentelemetry.sdk.metrics.data.PointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
||||||
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
@ -465,7 +464,7 @@ class MetricsRequestMarshalerTest {
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
singletonList(LongPointData.create(123, 456, KV_ATTR, 5))))))
|
singletonList(LongPointData.create(123, 456, KV_ATTR, 5))))))
|
||||||
|
@ -500,7 +499,7 @@ class MetricsRequestMarshalerTest {
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
singletonList(DoublePointData.create(123, 456, KV_ATTR, 5.1))))))
|
singletonList(DoublePointData.create(123, 456, KV_ATTR, 5.1))))))
|
||||||
|
@ -539,7 +538,7 @@ class MetricsRequestMarshalerTest {
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
singletonList(LongPointData.create(123, 456, KV_ATTR, 5))))))
|
singletonList(LongPointData.create(123, 456, KV_ATTR, 5))))))
|
||||||
|
@ -574,7 +573,7 @@ class MetricsRequestMarshalerTest {
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
singletonList(DoublePointData.create(123, 456, KV_ATTR, 5.1))))))
|
singletonList(DoublePointData.create(123, 456, KV_ATTR, 5.1))))))
|
||||||
|
@ -885,7 +884,7 @@ class MetricsRequestMarshalerTest {
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -896,7 +895,7 @@ class MetricsRequestMarshalerTest {
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -907,7 +906,7 @@ class MetricsRequestMarshalerTest {
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -918,7 +917,7 @@ class MetricsRequestMarshalerTest {
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -22,8 +22,8 @@ import io.opentelemetry.proto.metrics.v1.ResourceMetrics;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@ -116,7 +116,7 @@ class OtlpGrpcMetricExporterTest
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -22,8 +22,8 @@ import io.opentelemetry.proto.metrics.v1.ResourceMetrics;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@ -116,7 +116,7 @@ class OtlpGrpcNettyMetricExporterTest
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -20,8 +20,8 @@ import io.opentelemetry.proto.metrics.v1.ResourceMetrics;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@ -105,7 +105,7 @@ class OtlpGrpcNettyShadedMetricExporterTest
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -20,8 +20,8 @@ import io.opentelemetry.proto.metrics.v1.ResourceMetrics;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@ -105,7 +105,7 @@ class OtlpGrpcOkHttpMetricExporterTest
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -13,15 +13,14 @@ import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleExemplarData;
|
import io.opentelemetry.sdk.metrics.data.DoubleExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ExemplarData;
|
import io.opentelemetry.sdk.metrics.data.ExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongExemplarData;
|
import io.opentelemetry.sdk.metrics.data.LongExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricDataType;
|
import io.opentelemetry.sdk.metrics.data.MetricDataType;
|
||||||
import io.opentelemetry.sdk.metrics.data.PointData;
|
import io.opentelemetry.sdk.metrics.data.PointData;
|
||||||
|
import io.opentelemetry.sdk.metrics.data.SumData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
||||||
import io.prometheus.client.Collector;
|
import io.prometheus.client.Collector;
|
||||||
import io.prometheus.client.Collector.MetricFamilySamples;
|
import io.prometheus.client.Collector.MetricFamilySamples;
|
||||||
|
@ -78,14 +77,14 @@ final class MetricAdapter {
|
||||||
case DOUBLE_GAUGE:
|
case DOUBLE_GAUGE:
|
||||||
return Collector.Type.GAUGE;
|
return Collector.Type.GAUGE;
|
||||||
case LONG_SUM:
|
case LONG_SUM:
|
||||||
LongSumData longSumData = metricData.getLongSumData();
|
SumData<LongPointData> longSumData = metricData.getLongSumData();
|
||||||
if (longSumData.isMonotonic()
|
if (longSumData.isMonotonic()
|
||||||
&& longSumData.getAggregationTemporality() == AggregationTemporality.CUMULATIVE) {
|
&& longSumData.getAggregationTemporality() == AggregationTemporality.CUMULATIVE) {
|
||||||
return Collector.Type.COUNTER;
|
return Collector.Type.COUNTER;
|
||||||
}
|
}
|
||||||
return Collector.Type.GAUGE;
|
return Collector.Type.GAUGE;
|
||||||
case DOUBLE_SUM:
|
case DOUBLE_SUM:
|
||||||
DoubleSumData doubleSumData = metricData.getDoubleSumData();
|
SumData<DoublePointData> doubleSumData = metricData.getDoubleSumData();
|
||||||
if (doubleSumData.isMonotonic()
|
if (doubleSumData.isMonotonic()
|
||||||
&& doubleSumData.getAggregationTemporality() == AggregationTemporality.CUMULATIVE) {
|
&& doubleSumData.getAggregationTemporality() == AggregationTemporality.CUMULATIVE) {
|
||||||
return Collector.Type.COUNTER;
|
return Collector.Type.COUNTER;
|
||||||
|
|
|
@ -6,9 +6,10 @@
|
||||||
package io.opentelemetry.exporter.prometheus;
|
package io.opentelemetry.exporter.prometheus;
|
||||||
|
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.data.SumData;
|
||||||
|
|
||||||
// Four types we use are same in prometheus and openmetrics format
|
// Four types we use are same in prometheus and openmetrics format
|
||||||
enum PrometheusType {
|
enum PrometheusType {
|
||||||
|
@ -29,14 +30,14 @@ enum PrometheusType {
|
||||||
case DOUBLE_GAUGE:
|
case DOUBLE_GAUGE:
|
||||||
return GAUGE;
|
return GAUGE;
|
||||||
case LONG_SUM:
|
case LONG_SUM:
|
||||||
LongSumData longSumData = metric.getLongSumData();
|
SumData<LongPointData> longSumData = metric.getLongSumData();
|
||||||
if (longSumData.isMonotonic()
|
if (longSumData.isMonotonic()
|
||||||
&& longSumData.getAggregationTemporality() == AggregationTemporality.CUMULATIVE) {
|
&& longSumData.getAggregationTemporality() == AggregationTemporality.CUMULATIVE) {
|
||||||
return COUNTER;
|
return COUNTER;
|
||||||
}
|
}
|
||||||
return GAUGE;
|
return GAUGE;
|
||||||
case DOUBLE_SUM:
|
case DOUBLE_SUM:
|
||||||
DoubleSumData doubleSumData = metric.getDoubleSumData();
|
SumData<DoublePointData> doubleSumData = metric.getDoubleSumData();
|
||||||
if (doubleSumData.isMonotonic()
|
if (doubleSumData.isMonotonic()
|
||||||
&& doubleSumData.getAggregationTemporality() == AggregationTemporality.CUMULATIVE) {
|
&& doubleSumData.getAggregationTemporality() == AggregationTemporality.CUMULATIVE) {
|
||||||
return COUNTER;
|
return COUNTER;
|
||||||
|
|
|
@ -18,16 +18,15 @@ import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongExemplarData;
|
import io.opentelemetry.sdk.metrics.data.LongExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricDataType;
|
import io.opentelemetry.sdk.metrics.data.MetricDataType;
|
||||||
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
||||||
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import io.prometheus.client.Collector;
|
import io.prometheus.client.Collector;
|
||||||
import io.prometheus.client.Collector.MetricFamilySamples;
|
import io.prometheus.client.Collector.MetricFamilySamples;
|
||||||
|
@ -56,7 +55,7 @@ class MetricAdapterTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -69,7 +68,7 @@ class MetricAdapterTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -82,7 +81,7 @@ class MetricAdapterTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.DELTA,
|
AggregationTemporality.DELTA,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -95,7 +94,7 @@ class MetricAdapterTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.DELTA,
|
AggregationTemporality.DELTA,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -108,7 +107,7 @@ class MetricAdapterTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -121,7 +120,7 @@ class MetricAdapterTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -134,7 +133,7 @@ class MetricAdapterTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.DELTA,
|
AggregationTemporality.DELTA,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -147,7 +146,7 @@ class MetricAdapterTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.DELTA,
|
AggregationTemporality.DELTA,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -16,11 +16,10 @@ import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.SdkMeterProvider;
|
import io.opentelemetry.sdk.metrics.SdkMeterProvider;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.export.MetricProducer;
|
import io.opentelemetry.sdk.metrics.export.MetricProducer;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import io.prometheus.client.CollectorRegistry;
|
import io.prometheus.client.CollectorRegistry;
|
||||||
import io.prometheus.client.exporter.common.TextFormat;
|
import io.prometheus.client.exporter.common.TextFormat;
|
||||||
|
@ -83,7 +82,7 @@ class PrometheusCollectorTest {
|
||||||
"grpc.name",
|
"grpc.name",
|
||||||
"long_description",
|
"long_description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -98,7 +97,7 @@ class PrometheusCollectorTest {
|
||||||
"http.name",
|
"http.name",
|
||||||
"double_description",
|
"double_description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -21,11 +21,10 @@ import io.opentelemetry.api.common.Attributes;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.export.MetricProducer;
|
import io.opentelemetry.sdk.metrics.export.MetricProducer;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import org.junit.jupiter.api.AfterAll;
|
import org.junit.jupiter.api.AfterAll;
|
||||||
|
@ -176,7 +175,7 @@ class PrometheusHttpServerTest {
|
||||||
"grpc.name",
|
"grpc.name",
|
||||||
"long_description",
|
"long_description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -187,7 +186,7 @@ class PrometheusHttpServerTest {
|
||||||
"http.name",
|
"http.name",
|
||||||
"double_description",
|
"double_description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -17,15 +17,14 @@ import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongExemplarData;
|
import io.opentelemetry.sdk.metrics.data.LongExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
||||||
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
@ -46,7 +45,7 @@ class SerializerTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -59,7 +58,7 @@ class SerializerTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -72,7 +71,7 @@ class SerializerTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.DELTA,
|
AggregationTemporality.DELTA,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -85,7 +84,7 @@ class SerializerTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.DELTA,
|
AggregationTemporality.DELTA,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -98,7 +97,7 @@ class SerializerTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -111,7 +110,7 @@ class SerializerTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -124,7 +123,7 @@ class SerializerTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.DELTA,
|
AggregationTemporality.DELTA,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
@ -137,7 +136,7 @@ class SerializerTest {
|
||||||
"instrument.name",
|
"instrument.name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.DELTA,
|
AggregationTemporality.DELTA,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -26,16 +26,16 @@ import io.opentelemetry.sdk.metrics.data.DoubleExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ExemplarData;
|
import io.opentelemetry.sdk.metrics.data.ExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.GaugeData;
|
import io.opentelemetry.sdk.metrics.data.GaugeData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.data.SumData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
||||||
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
@ -145,13 +145,13 @@ public final class MetricAdapter {
|
||||||
return ImmutableGaugeData.create(convertDoublePoints(censusMetric));
|
return ImmutableGaugeData.create(convertDoublePoints(censusMetric));
|
||||||
}
|
}
|
||||||
|
|
||||||
static LongSumData convertLongSum(Metric censusMetric) {
|
static SumData<LongPointData> convertLongSum(Metric censusMetric) {
|
||||||
return LongSumData.create(
|
return ImmutableSumData.create(
|
||||||
true, AggregationTemporality.CUMULATIVE, convertLongPoints(censusMetric));
|
true, AggregationTemporality.CUMULATIVE, convertLongPoints(censusMetric));
|
||||||
}
|
}
|
||||||
|
|
||||||
static DoubleSumData convertDoubleSum(Metric censusMetric) {
|
static SumData<DoublePointData> convertDoubleSum(Metric censusMetric) {
|
||||||
return DoubleSumData.create(
|
return ImmutableSumData.create(
|
||||||
true, AggregationTemporality.CUMULATIVE, convertDoublePoints(censusMetric));
|
true, AggregationTemporality.CUMULATIVE, convertDoublePoints(censusMetric));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -31,8 +31,8 @@ import io.opentelemetry.sdk.logs.data.LogData;
|
||||||
import io.opentelemetry.sdk.logs.data.LogDataBuilder;
|
import io.opentelemetry.sdk.logs.data.LogDataBuilder;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import io.opentelemetry.sdk.testing.trace.TestSpanData;
|
import io.opentelemetry.sdk.testing.trace.TestSpanData;
|
||||||
import io.opentelemetry.sdk.trace.data.SpanData;
|
import io.opentelemetry.sdk.trace.data.SpanData;
|
||||||
|
@ -151,7 +151,7 @@ class OtlpGrpcServerExtension extends ServerExtension {
|
||||||
"metric_name",
|
"metric_name",
|
||||||
"metric_description",
|
"metric_description",
|
||||||
"ms",
|
"ms",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
false,
|
false,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -26,8 +26,8 @@ import io.opentelemetry.sdk.logs.data.LogData;
|
||||||
import io.opentelemetry.sdk.logs.data.LogDataBuilder;
|
import io.opentelemetry.sdk.logs.data.LogDataBuilder;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import io.opentelemetry.sdk.testing.trace.TestSpanData;
|
import io.opentelemetry.sdk.testing.trace.TestSpanData;
|
||||||
import io.opentelemetry.sdk.trace.data.SpanData;
|
import io.opentelemetry.sdk.trace.data.SpanData;
|
||||||
|
@ -134,7 +134,7 @@ class OtlpHttpServerExtension extends ServerExtension {
|
||||||
"metric_name",
|
"metric_name",
|
||||||
"metric_description",
|
"metric_description",
|
||||||
"ms",
|
"ms",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
false,
|
false,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright The OpenTelemetry Authors
|
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
package io.opentelemetry.sdk.testing.assertj;
|
|
||||||
|
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import org.assertj.core.api.AbstractIterableAssert;
|
|
||||||
import org.assertj.core.api.Assertions;
|
|
||||||
|
|
||||||
/** Test assertions for {@link DoubleSumData}. */
|
|
||||||
public class DoubleSumDataAssert extends AbstractSumDataAssert<DoubleSumDataAssert, DoubleSumData> {
|
|
||||||
protected DoubleSumDataAssert(DoubleSumData actual) {
|
|
||||||
super(actual, DoubleSumDataAssert.class);
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Returns convenience API to assert against the {@code points} field. */
|
|
||||||
public AbstractIterableAssert<
|
|
||||||
?, ? extends Iterable<? extends DoublePointData>, DoublePointData, ?>
|
|
||||||
points() {
|
|
||||||
isNotNull();
|
|
||||||
return Assertions.assertThat(actual.getPoints());
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,24 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright The OpenTelemetry Authors
|
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
package io.opentelemetry.sdk.testing.assertj;
|
|
||||||
|
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import org.assertj.core.api.AbstractIterableAssert;
|
|
||||||
import org.assertj.core.api.Assertions;
|
|
||||||
|
|
||||||
/** Test assertions for {@link LongSumData}. */
|
|
||||||
public class LongSumDataAssert extends AbstractSumDataAssert<LongSumDataAssert, LongSumData> {
|
|
||||||
protected LongSumDataAssert(LongSumData actual) {
|
|
||||||
super(actual, LongSumDataAssert.class);
|
|
||||||
}
|
|
||||||
|
|
||||||
public AbstractIterableAssert<?, ? extends Iterable<? extends LongPointData>, LongPointData, ?>
|
|
||||||
points() {
|
|
||||||
isNotNull();
|
|
||||||
return Assertions.assertThat(actual.getPoints());
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -8,7 +8,6 @@ package io.opentelemetry.sdk.testing.assertj;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ExemplarData;
|
import io.opentelemetry.sdk.metrics.data.ExemplarData;
|
||||||
|
@ -16,9 +15,9 @@ import io.opentelemetry.sdk.metrics.data.ExponentialHistogramBuckets;
|
||||||
import io.opentelemetry.sdk.metrics.data.ExponentialHistogramPointData;
|
import io.opentelemetry.sdk.metrics.data.ExponentialHistogramPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.GaugeData;
|
import io.opentelemetry.sdk.metrics.data.GaugeData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.data.PointData;
|
import io.opentelemetry.sdk.metrics.data.PointData;
|
||||||
|
import io.opentelemetry.sdk.metrics.data.SumData;
|
||||||
import org.assertj.core.api.Assertions;
|
import org.assertj.core.api.Assertions;
|
||||||
|
|
||||||
/** Test assertions for data heading to exporters within the Metrics SDK. */
|
/** Test assertions for data heading to exporters within the Metrics SDK. */
|
||||||
|
@ -69,9 +68,9 @@ public final class MetricAssertions extends Assertions {
|
||||||
return new DoublePointDataAssert(point);
|
return new DoublePointDataAssert(point);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Returns an assertion for {@link DoubleSumData}. */
|
/** Returns an assertion for {@link SumData}. */
|
||||||
public static DoubleSumDataAssert assertThat(DoubleSumData point) {
|
public static <T extends PointData> SumDataAssert<T> assertThat(SumData<T> point) {
|
||||||
return new DoubleSumDataAssert(point);
|
return new SumDataAssert<>(point);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Returns an assertion for {@link LongPointData}. */
|
/** Returns an assertion for {@link LongPointData}. */
|
||||||
|
@ -79,11 +78,6 @@ public final class MetricAssertions extends Assertions {
|
||||||
return new LongPointDataAssert(point);
|
return new LongPointDataAssert(point);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Returns an assertion for {@link LongSumData}. */
|
|
||||||
public static LongSumDataAssert assertThat(LongSumData metric) {
|
|
||||||
return new LongSumDataAssert(metric);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static ExemplarDataAssert assertThat(ExemplarData exemplar) {
|
public static ExemplarDataAssert assertThat(ExemplarData exemplar) {
|
||||||
return new ExemplarDataAssert(exemplar);
|
return new ExemplarDataAssert(exemplar);
|
||||||
}
|
}
|
||||||
|
|
|
@ -152,7 +152,7 @@ public class MetricDataAssert extends AbstractAssert<MetricDataAssert, MetricDat
|
||||||
*
|
*
|
||||||
* @return convenience API to assert against the {@code DoubleSum}.
|
* @return convenience API to assert against the {@code DoubleSum}.
|
||||||
*/
|
*/
|
||||||
public DoubleSumDataAssert hasDoubleSum() {
|
public SumDataAssert<DoublePointData> hasDoubleSum() {
|
||||||
isNotNull();
|
isNotNull();
|
||||||
if (actual.getType() != MetricDataType.DOUBLE_SUM) {
|
if (actual.getType() != MetricDataType.DOUBLE_SUM) {
|
||||||
failWithActualExpectedAndMessage(
|
failWithActualExpectedAndMessage(
|
||||||
|
@ -162,7 +162,7 @@ public class MetricDataAssert extends AbstractAssert<MetricDataAssert, MetricDat
|
||||||
MetricDataType.DOUBLE_SUM,
|
MetricDataType.DOUBLE_SUM,
|
||||||
actual.getType());
|
actual.getType());
|
||||||
}
|
}
|
||||||
return new DoubleSumDataAssert(actual.getDoubleSumData());
|
return new SumDataAssert<>(actual.getDoubleSumData());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -188,7 +188,7 @@ public class MetricDataAssert extends AbstractAssert<MetricDataAssert, MetricDat
|
||||||
*
|
*
|
||||||
* @return convenience API to assert against the {@code LongSum}.
|
* @return convenience API to assert against the {@code LongSum}.
|
||||||
*/
|
*/
|
||||||
public LongSumDataAssert hasLongSum() {
|
public SumDataAssert<LongPointData> hasLongSum() {
|
||||||
isNotNull();
|
isNotNull();
|
||||||
if (actual.getType() != MetricDataType.LONG_SUM) {
|
if (actual.getType() != MetricDataType.LONG_SUM) {
|
||||||
failWithActualExpectedAndMessage(
|
failWithActualExpectedAndMessage(
|
||||||
|
@ -198,7 +198,7 @@ public class MetricDataAssert extends AbstractAssert<MetricDataAssert, MetricDat
|
||||||
MetricDataType.LONG_SUM,
|
MetricDataType.LONG_SUM,
|
||||||
actual.getType());
|
actual.getType());
|
||||||
}
|
}
|
||||||
return new LongSumDataAssert(actual.getLongSumData());
|
return new SumDataAssert<>(actual.getLongSumData());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -6,19 +6,21 @@
|
||||||
package io.opentelemetry.sdk.testing.assertj;
|
package io.opentelemetry.sdk.testing.assertj;
|
||||||
|
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
|
import io.opentelemetry.sdk.metrics.data.PointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.SumData;
|
import io.opentelemetry.sdk.metrics.data.SumData;
|
||||||
import org.assertj.core.api.AbstractAssert;
|
import org.assertj.core.api.AbstractAssert;
|
||||||
|
import org.assertj.core.api.AbstractIterableAssert;
|
||||||
|
import org.assertj.core.api.Assertions;
|
||||||
|
|
||||||
/** Test assertions for {@link SumData}. */
|
/** Test assertions for {@link SumData}. */
|
||||||
public class AbstractSumDataAssert<
|
public class SumDataAssert<T extends PointData>
|
||||||
SumAssertT extends AbstractSumDataAssert<SumAssertT, SumT>, SumT extends SumData<?>>
|
extends AbstractAssert<SumDataAssert<T>, SumData<T>> {
|
||||||
extends AbstractAssert<SumAssertT, SumT> {
|
protected SumDataAssert(SumData<T> actual) {
|
||||||
protected AbstractSumDataAssert(SumT actual, Class<SumAssertT> assertClass) {
|
super(actual, SumDataAssert.class);
|
||||||
super(actual, assertClass);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Ensures that {@code is_monotonic} field is true. */
|
/** Ensures that {@code is_monotonic} field is true. */
|
||||||
public SumAssertT isMonotonic() {
|
public SumDataAssert<T> isMonotonic() {
|
||||||
isNotNull();
|
isNotNull();
|
||||||
if (!actual.isMonotonic()) {
|
if (!actual.isMonotonic()) {
|
||||||
failWithActualExpectedAndMessage(
|
failWithActualExpectedAndMessage(
|
||||||
|
@ -28,7 +30,7 @@ public class AbstractSumDataAssert<
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Ensures that {@code is_monotonic} field is false. */
|
/** Ensures that {@code is_monotonic} field is false. */
|
||||||
public SumAssertT isNotMonotonic() {
|
public SumDataAssert<T> isNotMonotonic() {
|
||||||
isNotNull();
|
isNotNull();
|
||||||
if (actual.isMonotonic()) {
|
if (actual.isMonotonic()) {
|
||||||
failWithActualExpectedAndMessage(
|
failWithActualExpectedAndMessage(
|
||||||
|
@ -41,7 +43,7 @@ public class AbstractSumDataAssert<
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Ensures that {@code aggregation_temporality} field is {@code CUMULATIVE}. */
|
/** Ensures that {@code aggregation_temporality} field is {@code CUMULATIVE}. */
|
||||||
public SumAssertT isCumulative() {
|
public SumDataAssert<T> isCumulative() {
|
||||||
isNotNull();
|
isNotNull();
|
||||||
if (actual.getAggregationTemporality() != AggregationTemporality.CUMULATIVE) {
|
if (actual.getAggregationTemporality() != AggregationTemporality.CUMULATIVE) {
|
||||||
failWithActualExpectedAndMessage(
|
failWithActualExpectedAndMessage(
|
||||||
|
@ -54,7 +56,7 @@ public class AbstractSumDataAssert<
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Ensures that {@code aggregation_temporality} field is {@code DELTA}. */
|
/** Ensures that {@code aggregation_temporality} field is {@code DELTA}. */
|
||||||
public SumAssertT isDelta() {
|
public SumDataAssert<T> isDelta() {
|
||||||
isNotNull();
|
isNotNull();
|
||||||
if (actual.getAggregationTemporality() != AggregationTemporality.DELTA) {
|
if (actual.getAggregationTemporality() != AggregationTemporality.DELTA) {
|
||||||
failWithActualExpectedAndMessage(
|
failWithActualExpectedAndMessage(
|
||||||
|
@ -65,4 +67,10 @@ public class AbstractSumDataAssert<
|
||||||
}
|
}
|
||||||
return myself;
|
return myself;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Returns convenience API to assert against the {@code points} field. */
|
||||||
|
public AbstractIterableAssert<?, ? extends Iterable<? extends T>, T, ?> points() {
|
||||||
|
isNotNull();
|
||||||
|
return Assertions.assertThat(actual.getPoints());
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -19,16 +19,15 @@ import io.opentelemetry.sdk.metrics.data.DoubleExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleHistogramPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryData;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
import io.opentelemetry.sdk.metrics.data.DoubleSummaryPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ExponentialHistogramData;
|
import io.opentelemetry.sdk.metrics.data.ExponentialHistogramData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongExemplarData;
|
import io.opentelemetry.sdk.metrics.data.LongExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
import io.opentelemetry.sdk.metrics.data.ValueAtPercentile;
|
||||||
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@ -116,7 +115,7 @@ public class MetricAssertionsTest {
|
||||||
/* name= */ "sum",
|
/* name= */ "sum",
|
||||||
/* description= */ "description",
|
/* description= */ "description",
|
||||||
/* unit= */ "unit",
|
/* unit= */ "unit",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
true,
|
true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
// Points
|
// Points
|
||||||
|
@ -129,7 +128,7 @@ public class MetricAssertionsTest {
|
||||||
/* name= */ "sum_delta",
|
/* name= */ "sum_delta",
|
||||||
/* description= */ "description",
|
/* description= */ "description",
|
||||||
/* unit= */ "unit",
|
/* unit= */ "unit",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
false,
|
false,
|
||||||
AggregationTemporality.DELTA,
|
AggregationTemporality.DELTA,
|
||||||
// Points
|
// Points
|
||||||
|
@ -171,7 +170,7 @@ public class MetricAssertionsTest {
|
||||||
/* name= */ "sum",
|
/* name= */ "sum",
|
||||||
/* description= */ "description",
|
/* description= */ "description",
|
||||||
/* unit= */ "unit",
|
/* unit= */ "unit",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
true,
|
true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
// Points
|
// Points
|
||||||
|
@ -184,7 +183,7 @@ public class MetricAssertionsTest {
|
||||||
/* name= */ "sum_delta",
|
/* name= */ "sum_delta",
|
||||||
/* description= */ "description",
|
/* description= */ "description",
|
||||||
/* unit= */ "unit",
|
/* unit= */ "unit",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
false,
|
false,
|
||||||
AggregationTemporality.DELTA,
|
AggregationTemporality.DELTA,
|
||||||
// Points
|
// Points
|
||||||
|
|
|
@ -11,8 +11,8 @@ import io.opentelemetry.api.common.Attributes;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@ -34,7 +34,7 @@ class InMemoryMetricExporterTest {
|
||||||
"name",
|
"name",
|
||||||
"description",
|
"description",
|
||||||
"1",
|
"1",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true,
|
/* isMonotonic= */ true,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(
|
Collections.singletonList(
|
||||||
|
|
|
@ -1,28 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright The OpenTelemetry Authors
|
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
package io.opentelemetry.sdk.metrics.data;
|
|
||||||
|
|
||||||
import com.google.auto.value.AutoValue;
|
|
||||||
import java.util.Collection;
|
|
||||||
import java.util.Collections;
|
|
||||||
import javax.annotation.concurrent.Immutable;
|
|
||||||
|
|
||||||
/** {@link SumData} recorded uses {@code double}s. */
|
|
||||||
@Immutable
|
|
||||||
@AutoValue
|
|
||||||
public abstract class DoubleSumData implements SumData<DoublePointData> {
|
|
||||||
|
|
||||||
static final DoubleSumData EMPTY =
|
|
||||||
DoubleSumData.create(
|
|
||||||
/* isMonotonic= */ false, AggregationTemporality.CUMULATIVE, Collections.emptyList());
|
|
||||||
|
|
||||||
DoubleSumData() {}
|
|
||||||
|
|
||||||
public static DoubleSumData create(
|
|
||||||
boolean isMonotonic, AggregationTemporality temporality, Collection<DoublePointData> points) {
|
|
||||||
return new AutoValue_DoubleSumData(points, isMonotonic, temporality);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,28 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright The OpenTelemetry Authors
|
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
package io.opentelemetry.sdk.metrics.data;
|
|
||||||
|
|
||||||
import com.google.auto.value.AutoValue;
|
|
||||||
import java.util.Collection;
|
|
||||||
import java.util.Collections;
|
|
||||||
import javax.annotation.concurrent.Immutable;
|
|
||||||
|
|
||||||
/** {@link SumData} recorded uses {@code long}s. */
|
|
||||||
@Immutable
|
|
||||||
@AutoValue
|
|
||||||
public abstract class LongSumData implements SumData<LongPointData> {
|
|
||||||
|
|
||||||
static final LongSumData EMPTY =
|
|
||||||
LongSumData.create(
|
|
||||||
/* isMonotonic= */ false, AggregationTemporality.CUMULATIVE, Collections.emptyList());
|
|
||||||
|
|
||||||
public static LongSumData create(
|
|
||||||
boolean isMonotonic, AggregationTemporality temporality, Collection<LongPointData> points) {
|
|
||||||
return new AutoValue_LongSumData(points, isMonotonic, temporality);
|
|
||||||
}
|
|
||||||
|
|
||||||
LongSumData() {}
|
|
||||||
}
|
|
|
@ -7,6 +7,7 @@ package io.opentelemetry.sdk.metrics.data;
|
||||||
|
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import javax.annotation.concurrent.Immutable;
|
import javax.annotation.concurrent.Immutable;
|
||||||
|
|
||||||
|
@ -72,7 +73,7 @@ public interface MetricData {
|
||||||
String name,
|
String name,
|
||||||
String description,
|
String description,
|
||||||
String unit,
|
String unit,
|
||||||
DoubleSumData data) {
|
SumData<DoublePointData> data) {
|
||||||
return MetricDataImpl.create(
|
return MetricDataImpl.create(
|
||||||
resource,
|
resource,
|
||||||
instrumentationLibraryInfo,
|
instrumentationLibraryInfo,
|
||||||
|
@ -94,7 +95,7 @@ public interface MetricData {
|
||||||
String name,
|
String name,
|
||||||
String description,
|
String description,
|
||||||
String unit,
|
String unit,
|
||||||
LongSumData data) {
|
SumData<LongPointData> data) {
|
||||||
return MetricDataImpl.create(
|
return MetricDataImpl.create(
|
||||||
resource,
|
resource,
|
||||||
instrumentationLibraryInfo,
|
instrumentationLibraryInfo,
|
||||||
|
@ -262,11 +263,12 @@ public interface MetricData {
|
||||||
* @return the {@code DoubleSumData} if type is {@link MetricDataType#DOUBLE_SUM}, otherwise a
|
* @return the {@code DoubleSumData} if type is {@link MetricDataType#DOUBLE_SUM}, otherwise a
|
||||||
* default empty data.
|
* default empty data.
|
||||||
*/
|
*/
|
||||||
default DoubleSumData getDoubleSumData() {
|
@SuppressWarnings("unchecked")
|
||||||
|
default SumData<DoublePointData> getDoubleSumData() {
|
||||||
if (getType() == MetricDataType.DOUBLE_SUM) {
|
if (getType() == MetricDataType.DOUBLE_SUM) {
|
||||||
return (DoubleSumData) getData();
|
return (ImmutableSumData<DoublePointData>) getData();
|
||||||
}
|
}
|
||||||
return DoubleSumData.EMPTY;
|
return ImmutableSumData.empty();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -276,11 +278,12 @@ public interface MetricData {
|
||||||
* @return the {@code LongSumData} if type is {@link MetricDataType#LONG_SUM}, otherwise a default
|
* @return the {@code LongSumData} if type is {@link MetricDataType#LONG_SUM}, otherwise a default
|
||||||
* empty data.
|
* empty data.
|
||||||
*/
|
*/
|
||||||
default LongSumData getLongSumData() {
|
@SuppressWarnings("unchecked")
|
||||||
|
default SumData<LongPointData> getLongSumData() {
|
||||||
if (getType() == MetricDataType.LONG_SUM) {
|
if (getType() == MetricDataType.LONG_SUM) {
|
||||||
return (LongSumData) getData();
|
return (SumData<LongPointData>) getData();
|
||||||
}
|
}
|
||||||
return LongSumData.EMPTY;
|
return ImmutableSumData.empty();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -19,10 +19,10 @@ public enum MetricDataType {
|
||||||
*/
|
*/
|
||||||
DOUBLE_GAUGE,
|
DOUBLE_GAUGE,
|
||||||
|
|
||||||
/** A sum of non negative long (int64) values. Reports {@link LongSumData} data. */
|
/** A sum of non negative long (int64) values. */
|
||||||
LONG_SUM,
|
LONG_SUM,
|
||||||
|
|
||||||
/** A sum of non negative double values. Reports {@link DoubleSumData} data. */
|
/** A sum of non negative double values. */
|
||||||
DOUBLE_SUM,
|
DOUBLE_SUM,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -9,12 +9,12 @@ import io.opentelemetry.api.common.Attributes;
|
||||||
import io.opentelemetry.context.Context;
|
import io.opentelemetry.context.Context;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.DoubleSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.ExemplarData;
|
import io.opentelemetry.sdk.metrics.data.ExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.exemplar.ExemplarReservoir;
|
import io.opentelemetry.sdk.metrics.exemplar.ExemplarReservoir;
|
||||||
import io.opentelemetry.sdk.metrics.internal.concurrent.AdderUtil;
|
import io.opentelemetry.sdk.metrics.internal.concurrent.AdderUtil;
|
||||||
import io.opentelemetry.sdk.metrics.internal.concurrent.DoubleAdder;
|
import io.opentelemetry.sdk.metrics.internal.concurrent.DoubleAdder;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.metrics.internal.descriptor.InstrumentDescriptor;
|
import io.opentelemetry.sdk.metrics.internal.descriptor.InstrumentDescriptor;
|
||||||
import io.opentelemetry.sdk.metrics.internal.descriptor.MetricDescriptor;
|
import io.opentelemetry.sdk.metrics.internal.descriptor.MetricDescriptor;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
|
@ -85,7 +85,7 @@ public final class DoubleSumAggregator extends AbstractSumAggregator<DoubleAccum
|
||||||
descriptor.getName(),
|
descriptor.getName(),
|
||||||
descriptor.getDescription(),
|
descriptor.getDescription(),
|
||||||
descriptor.getUnit(),
|
descriptor.getUnit(),
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
isMonotonic(),
|
isMonotonic(),
|
||||||
temporality,
|
temporality,
|
||||||
MetricDataUtils.toDoublePointList(
|
MetricDataUtils.toDoublePointList(
|
||||||
|
|
|
@ -9,11 +9,11 @@ import io.opentelemetry.api.common.Attributes;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.ExemplarData;
|
import io.opentelemetry.sdk.metrics.data.ExemplarData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
import io.opentelemetry.sdk.metrics.exemplar.ExemplarReservoir;
|
import io.opentelemetry.sdk.metrics.exemplar.ExemplarReservoir;
|
||||||
import io.opentelemetry.sdk.metrics.internal.concurrent.AdderUtil;
|
import io.opentelemetry.sdk.metrics.internal.concurrent.AdderUtil;
|
||||||
import io.opentelemetry.sdk.metrics.internal.concurrent.LongAdder;
|
import io.opentelemetry.sdk.metrics.internal.concurrent.LongAdder;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.metrics.internal.descriptor.InstrumentDescriptor;
|
import io.opentelemetry.sdk.metrics.internal.descriptor.InstrumentDescriptor;
|
||||||
import io.opentelemetry.sdk.metrics.internal.descriptor.MetricDescriptor;
|
import io.opentelemetry.sdk.metrics.internal.descriptor.MetricDescriptor;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
|
@ -72,7 +72,7 @@ public final class LongSumAggregator extends AbstractSumAggregator<LongAccumulat
|
||||||
descriptor.getName(),
|
descriptor.getName(),
|
||||||
descriptor.getDescription(),
|
descriptor.getDescription(),
|
||||||
descriptor.getUnit(),
|
descriptor.getUnit(),
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
isMonotonic(),
|
isMonotonic(),
|
||||||
temporality,
|
temporality,
|
||||||
MetricDataUtils.toLongPointList(
|
MetricDataUtils.toLongPointList(
|
||||||
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
* Copyright The OpenTelemetry Authors
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.opentelemetry.sdk.metrics.internal.data;
|
||||||
|
|
||||||
|
import com.google.auto.value.AutoValue;
|
||||||
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
|
import io.opentelemetry.sdk.metrics.data.DoublePointData;
|
||||||
|
import io.opentelemetry.sdk.metrics.data.PointData;
|
||||||
|
import io.opentelemetry.sdk.metrics.data.SumData;
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.Collections;
|
||||||
|
import javax.annotation.concurrent.Immutable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@link SumData} recorded uses {@code double}s.
|
||||||
|
*
|
||||||
|
* <p>This class is internal and is hence not for public use. Its APIs are unstable and can change
|
||||||
|
* at any time.
|
||||||
|
*/
|
||||||
|
@Immutable
|
||||||
|
@AutoValue
|
||||||
|
public abstract class ImmutableSumData<T extends PointData> implements SumData<T> {
|
||||||
|
|
||||||
|
static final ImmutableSumData<DoublePointData> EMPTY =
|
||||||
|
ImmutableSumData.create(
|
||||||
|
/* isMonotonic= */ false, AggregationTemporality.CUMULATIVE, Collections.emptyList());
|
||||||
|
|
||||||
|
// Type doesn't matter for an empty list.
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
public static <T extends PointData> ImmutableSumData<T> empty() {
|
||||||
|
return (ImmutableSumData<T>) EMPTY;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T extends PointData> ImmutableSumData<T> create(
|
||||||
|
boolean isMonotonic, AggregationTemporality temporality, Collection<T> points) {
|
||||||
|
return new AutoValue_ImmutableSumData<>(points, isMonotonic, temporality);
|
||||||
|
}
|
||||||
|
|
||||||
|
ImmutableSumData() {}
|
||||||
|
}
|
|
@ -13,6 +13,7 @@ import io.opentelemetry.api.common.AttributeKey;
|
||||||
import io.opentelemetry.api.common.Attributes;
|
import io.opentelemetry.api.common.Attributes;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@ -98,7 +99,7 @@ class MetricDataImplTest {
|
||||||
"metric_name",
|
"metric_name",
|
||||||
"metric_description",
|
"metric_description",
|
||||||
"ms",
|
"ms",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(LONG_POINT)));
|
Collections.singletonList(LONG_POINT)));
|
||||||
|
@ -130,7 +131,7 @@ class MetricDataImplTest {
|
||||||
"metric_name",
|
"metric_name",
|
||||||
"metric_description",
|
"metric_description",
|
||||||
"ms",
|
"ms",
|
||||||
DoubleSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ false,
|
/* isMonotonic= */ false,
|
||||||
AggregationTemporality.CUMULATIVE,
|
AggregationTemporality.CUMULATIVE,
|
||||||
Collections.singletonList(DOUBLE_POINT)));
|
Collections.singletonList(DOUBLE_POINT)));
|
||||||
|
|
|
@ -20,8 +20,8 @@ import io.opentelemetry.sdk.common.CompletableResultCode;
|
||||||
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
import io.opentelemetry.sdk.common.InstrumentationLibraryInfo;
|
||||||
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
import io.opentelemetry.sdk.metrics.data.AggregationTemporality;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
import io.opentelemetry.sdk.metrics.data.LongPointData;
|
||||||
import io.opentelemetry.sdk.metrics.data.LongSumData;
|
|
||||||
import io.opentelemetry.sdk.metrics.data.MetricData;
|
import io.opentelemetry.sdk.metrics.data.MetricData;
|
||||||
|
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
|
||||||
import io.opentelemetry.sdk.resources.Resource;
|
import io.opentelemetry.sdk.resources.Resource;
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
@ -57,7 +57,7 @@ class PeriodicMetricReaderTest {
|
||||||
"my metric",
|
"my metric",
|
||||||
"my metric description",
|
"my metric description",
|
||||||
"us",
|
"us",
|
||||||
LongSumData.create(
|
ImmutableSumData.create(
|
||||||
/* isMonotonic= */ true, AggregationTemporality.CUMULATIVE, LONG_POINT_LIST));
|
/* isMonotonic= */ true, AggregationTemporality.CUMULATIVE, LONG_POINT_LIST));
|
||||||
|
|
||||||
@Mock private MetricProducer metricProducer;
|
@Mock private MetricProducer metricProducer;
|
||||||
|
|
Loading…
Reference in New Issue