aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMayur Kale <mayurkale@google.com>2018-09-17 15:11:48 -0700
committerGitHub <noreply@github.com>2018-09-17 15:11:48 -0700
commit69360e984884902e60c0ffafe4c73a18702896ad (patch)
treed87abfff61b3f29d59ae0ead56d0aa901563fab0
parent3d98a788798898ca653d3d2ac0aa984410e2a436 (diff)
downloadopencensus-java-69360e984884902e60c0ffafe4c73a18702896ad.tar.gz
allow arbitrary metric prefixes (#1440)
-rw-r--r--CHANGELOG.md3
-rw-r--r--exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorker.java8
-rw-r--r--exporters/stats/stackdriver/src/test/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorkerTest.java5
3 files changed, 6 insertions, 10 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 463abda5..c3d346b7 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,7 @@
## Unreleased
- Add `AttributeValueDouble` to `AttributeValue`.
-
+- Allow users to report metrics for their registered domain (using custom prefix). This could be a
+ breaking change if you have custom prefix without (registered) domain.
## 0.16.0 - 2018-09-14
- Add APIs to register gRPC client and server views separately.
diff --git a/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorker.java b/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorker.java
index ecafeab0..5ffed9d5 100644
--- a/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorker.java
+++ b/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorker.java
@@ -68,7 +68,6 @@ final class StackdriverExporterWorker implements Runnable {
@VisibleForTesting static final String DEFAULT_DISPLAY_NAME_PREFIX = "OpenCensus/";
@VisibleForTesting static final String CUSTOM_METRIC_DOMAIN = "custom.googleapis.com/";
- @VisibleForTesting static final String EXTERNAL_METRIC_DOMAIN = "external.googleapis.com/";
@VisibleForTesting
static final String CUSTOM_OPENCENSUS_DOMAIN = CUSTOM_METRIC_DOMAIN + "opencensus/";
@@ -252,11 +251,10 @@ final class StackdriverExporterWorker implements Runnable {
if (Strings.isNullOrEmpty(metricNamePrefix)) {
domain = CUSTOM_OPENCENSUS_DOMAIN;
} else {
- if (metricNamePrefix.startsWith(CUSTOM_METRIC_DOMAIN)
- || metricNamePrefix.startsWith(EXTERNAL_METRIC_DOMAIN)) {
- domain = metricNamePrefix;
+ if (!metricNamePrefix.endsWith("/")) {
+ domain = metricNamePrefix + '/';
} else {
- domain = CUSTOM_METRIC_DOMAIN + metricNamePrefix + '/';
+ domain = metricNamePrefix;
}
}
return domain;
diff --git a/exporters/stats/stackdriver/src/test/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorkerTest.java b/exporters/stats/stackdriver/src/test/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorkerTest.java
index 17ef0a5d..27593829 100644
--- a/exporters/stats/stackdriver/src/test/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorkerTest.java
+++ b/exporters/stats/stackdriver/src/test/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorkerTest.java
@@ -110,8 +110,6 @@ public class StackdriverExporterWorkerTest {
public void testConstants() {
assertThat(StackdriverExporterWorker.MAX_BATCH_EXPORT_SIZE).isEqualTo(200);
assertThat(StackdriverExporterWorker.CUSTOM_METRIC_DOMAIN).isEqualTo("custom.googleapis.com/");
- assertThat(StackdriverExporterWorker.EXTERNAL_METRIC_DOMAIN)
- .isEqualTo("external.googleapis.com/");
assertThat(StackdriverExporterWorker.CUSTOM_OPENCENSUS_DOMAIN)
.isEqualTo("custom.googleapis.com/opencensus/");
assertThat(StackdriverExporterWorker.DEFAULT_DISPLAY_NAME_PREFIX).isEqualTo("OpenCensus/");
@@ -283,8 +281,7 @@ public class StackdriverExporterWorkerTest {
.isEqualTo("custom.googleapis.com/myorg/");
assertThat(StackdriverExporterWorker.getDomain("external.googleapis.com/prometheus/"))
.isEqualTo("external.googleapis.com/prometheus/");
- assertThat(StackdriverExporterWorker.getDomain("myorg"))
- .isEqualTo("custom.googleapis.com/myorg/");
+ assertThat(StackdriverExporterWorker.getDomain("myorg")).isEqualTo("myorg/");
}
@Test