aboutsummaryrefslogtreecommitdiff
path: root/exporters/stats/stackdriver
diff options
context:
space:
mode:
authorYang Song <songy23@users.noreply.github.com>2018-06-13 11:27:12 -0700
committerGitHub <noreply@github.com>2018-06-13 11:27:12 -0700
commit529688f2b63ec98e4e78bf071f8d1b4fbde96eb5 (patch)
treee298d83c34f253acd4a94052d28f198ce511c451 /exporters/stats/stackdriver
parentb00051babb89f35581489bd64a4e3addeafc9e3e (diff)
downloadopencensus-java-529688f2b63ec98e4e78bf071f8d1b4fbde96eb5.tar.gz
Stackdriver Stats Exporter: don't set StartTime for Gauge values. (#1253)
Diffstat (limited to 'exporters/stats/stackdriver')
-rw-r--r--exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtils.java9
-rw-r--r--exporters/stats/stackdriver/src/test/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtilsTest.java13
2 files changed, 16 insertions, 6 deletions
diff --git a/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtils.java b/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtils.java
index 799231ff..e87170b7 100644
--- a/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtils.java
+++ b/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtils.java
@@ -271,21 +271,24 @@ final class StackdriverExportUtils {
ViewData.AggregationWindowData windowData,
Aggregation aggregation) {
Point.Builder builder = Point.newBuilder();
- builder.setInterval(createTimeInterval(windowData));
+ builder.setInterval(createTimeInterval(windowData, aggregation));
builder.setValue(createTypedValue(aggregation, aggregationData));
return builder.build();
}
// Convert AggregationWindowData to TimeInterval, currently only support CumulativeData.
@VisibleForTesting
- static TimeInterval createTimeInterval(ViewData.AggregationWindowData windowData) {
+ static TimeInterval createTimeInterval(
+ ViewData.AggregationWindowData windowData, final Aggregation aggregation) {
final TimeInterval.Builder builder = TimeInterval.newBuilder();
windowData.match(
new Function<ViewData.AggregationWindowData.CumulativeData, Void>() {
@Override
public Void apply(ViewData.AggregationWindowData.CumulativeData arg) {
- builder.setStartTime(convertTimestamp(arg.getStart()));
builder.setEndTime(convertTimestamp(arg.getEnd()));
+ if (!(aggregation instanceof LastValue)) {
+ builder.setStartTime(convertTimestamp(arg.getStart()));
+ }
return null;
}
},
diff --git a/exporters/stats/stackdriver/src/test/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtilsTest.java b/exporters/stats/stackdriver/src/test/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtilsTest.java
index b99193e2..1adf652b 100644
--- a/exporters/stats/stackdriver/src/test/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtilsTest.java
+++ b/exporters/stats/stackdriver/src/test/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtilsTest.java
@@ -240,12 +240,19 @@ public class StackdriverExportUtilsTest {
Timestamp censusTimestamp2 = Timestamp.create(200, 0);
assertThat(
StackdriverExportUtils.createTimeInterval(
- CumulativeData.create(censusTimestamp1, censusTimestamp2)))
+ CumulativeData.create(censusTimestamp1, censusTimestamp2), DISTRIBUTION))
.isEqualTo(
TimeInterval.newBuilder()
.setStartTime(StackdriverExportUtils.convertTimestamp(censusTimestamp1))
.setEndTime(StackdriverExportUtils.convertTimestamp(censusTimestamp2))
.build());
+ assertThat(
+ StackdriverExportUtils.createTimeInterval(
+ CumulativeData.create(censusTimestamp1, censusTimestamp2), LAST_VALUE))
+ .isEqualTo(
+ TimeInterval.newBuilder()
+ .setEndTime(StackdriverExportUtils.convertTimestamp(censusTimestamp2))
+ .build());
}
@Test
@@ -253,7 +260,7 @@ public class StackdriverExportUtilsTest {
IntervalData intervalData = IntervalData.create(Timestamp.create(200, 0));
// Only Cumulative view will supported in this version.
thrown.expect(IllegalArgumentException.class);
- StackdriverExportUtils.createTimeInterval(intervalData);
+ StackdriverExportUtils.createTimeInterval(intervalData, SUM);
}
@Test
@@ -318,7 +325,7 @@ public class StackdriverExportUtilsTest {
assertThat(StackdriverExportUtils.createPoint(sumDataDouble, cumulativeData, SUM))
.isEqualTo(
Point.newBuilder()
- .setInterval(StackdriverExportUtils.createTimeInterval(cumulativeData))
+ .setInterval(StackdriverExportUtils.createTimeInterval(cumulativeData, SUM))
.setValue(StackdriverExportUtils.createTypedValue(SUM, sumDataDouble))
.build());
}