Browse Source

(micrometer) don't add . to empty unit with prometheus naming conventions (#8872)

Gregor Zeitlinger 1 year ago
parent
commit
b3932c7089

+ 1 - 1
instrumentation/micrometer/micrometer-1.5/library/src/main/java/io/opentelemetry/instrumentation/micrometer/v1_5/PrometheusModeNamingConvention.java

@@ -20,7 +20,7 @@ enum PrometheusModeNamingConvention implements NamingConvention {
     if (type == Meter.Type.COUNTER
         || type == Meter.Type.DISTRIBUTION_SUMMARY
         || type == Meter.Type.GAUGE) {
-      if (baseUnit != null && !name.endsWith("." + baseUnit)) {
+      if (baseUnit != null && !baseUnit.equals("") && !name.endsWith("." + baseUnit)) {
         name = name + "." + baseUnit;
       }
     }

+ 3 - 3
instrumentation/micrometer/micrometer-1.5/testing/src/main/java/io/opentelemetry/instrumentation/micrometer/v1_5/AbstractPrometheusModeTest.java

@@ -34,7 +34,7 @@ public abstract class AbstractPrometheusModeTest {
         Counter.builder("testPrometheusCounter")
             .description("This is a test counter")
             .tags("tag", "value")
-            .baseUnit("items")
+            .baseUnit("")
             .register(Metrics.globalRegistry);
 
     // when
@@ -44,13 +44,13 @@ public abstract class AbstractPrometheusModeTest {
     testing()
         .waitAndAssertMetrics(
             INSTRUMENTATION_NAME,
-            "testPrometheusCounter.items",
+            "testPrometheusCounter",
             metrics ->
                 metrics.anySatisfy(
                     metric ->
                         assertThat(metric)
                             .hasDescription("This is a test counter")
-                            .hasUnit("items")
+                            .hasUnit("")
                             .hasDoubleSumSatisfying(
                                 sum ->
                                     sum.isMonotonic()