Skip to content

Commit 78cfd7a

Browse files
add metric annotation instrumentation
1 parent 43c12c5 commit 78cfd7a

File tree

4 files changed

+11
-10
lines changed

4 files changed

+11
-10
lines changed

docs/apidiffs/current_vs_latest/opentelemetry-instrumentation-annotations.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ Comparing source compatibility of against
2525
+++ CLASS FILE FORMAT VERSION: 52.0 <- n.a.
2626
+++ NEW INTERFACE: java.lang.annotation.Annotation
2727
+++ NEW SUPERCLASS: java.lang.Object
28-
+++ NEW METHOD: PUBLIC(+) ABSTRACT(+) java.lang.String[] attributes()
28+
+++ NEW METHOD: PUBLIC(+) ABSTRACT(+) java.lang.String[] additionalAttributes()
2929
+++ NEW METHOD: PUBLIC(+) ABSTRACT(+) java.lang.String description()
3030
+++ NEW METHOD: PUBLIC(+) ABSTRACT(+) java.lang.String returnValueAttribute()
31-
+++ NEW METHOD: PUBLIC(+) ABSTRACT(+) java.util.concurrent.TimeUnit unit()
31+
+++ NEW METHOD: PUBLIC(+) ABSTRACT(+) java.lang.String unit()
3232
+++ NEW METHOD: PUBLIC(+) ABSTRACT(+) java.lang.String value()
3333
+++ NEW ANNOTATION: java.lang.annotation.Target
3434
+++ NEW ELEMENT: value=java.lang.annotation.ElementType.METHOD,java.lang.annotation.ElementType.CONSTRUCTOR (+)

instrumentation/opentelemetry-instrumentation-annotations-1.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/instrumentationannotations/AnnotationSingletons.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
import application.io.opentelemetry.instrumentation.annotations.Counted;
1111
import application.io.opentelemetry.instrumentation.annotations.MetricAttribute;
1212
import application.io.opentelemetry.instrumentation.annotations.Timed;
13-
import application.io.opentelemetry.instrumentation.annotations.WithSpan;
13+
import io.opentelemetry.instrumentation.annotations.WithSpan;
1414
// import io.opentelemetry.javaagent.instrumentation.instrumentationannotations.annotations.Counted;
1515
// import
1616
// io.opentelemetry.javaagent.instrumentation.instrumentationannotations.annotations.MetricAttribute;
@@ -20,8 +20,8 @@
2020
import io.opentelemetry.api.common.Attributes;
2121
import io.opentelemetry.api.common.AttributesBuilder;
2222
import io.opentelemetry.api.internal.StringUtils;
23-
import io.opentelemetry.api.metrics.DoubleHistogram;
2423
import io.opentelemetry.api.metrics.LongCounter;
24+
import io.opentelemetry.api.metrics.LongHistogram;
2525
import io.opentelemetry.api.metrics.Meter;
2626
import io.opentelemetry.api.trace.SpanKind;
2727
import io.opentelemetry.instrumentation.api.annotation.support.MethodSpanAttributesExtractor;
@@ -46,7 +46,7 @@ public final class AnnotationSingletons {
4646
createInstrumenterWithAttributes();
4747
private static final SpanAttributesExtractor ATTRIBUTES = createAttributesExtractor();
4848

49-
private static final ConcurrentMap<String, DoubleHistogram> HISTOGRAMS =
49+
private static final ConcurrentMap<String, LongHistogram> HISTOGRAMS =
5050
new ConcurrentHashMap<>();
5151

5252
private static final ConcurrentMap<String, LongCounter> COUNTERS = new ConcurrentHashMap<>();
@@ -206,14 +206,15 @@ private static String spanNameFromMethod(Method method) {
206206
return spanName;
207207
}
208208

209-
private static DoubleHistogram getHistogram(Timed timedAnnotation) {
209+
private static LongHistogram getHistogram(Timed timedAnnotation) {
210210
if (!HISTOGRAMS.containsKey(timedAnnotation.value())) {
211211
synchronized (timedAnnotation.value()) {
212212
if (!HISTOGRAMS.containsKey(timedAnnotation.value())) {
213213
HISTOGRAMS.put(
214214
timedAnnotation.value(),
215215
METER
216216
.histogramBuilder(timedAnnotation.value())
217+
.ofLongs()
217218
.setDescription(timedAnnotation.description())
218219
.setUnit(timedAnnotation.unit())
219220
.build());

instrumentation/opentelemetry-instrumentation-annotations-1.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/instrumentationannotations/CountedInstrumentationsModule.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@
88
import static io.opentelemetry.javaagent.extension.matcher.AgentElementMatchers.hasClassesNamed;
99
import static java.util.Arrays.asList;
1010

11-
import application.io.opentelemetry.instrumentation.annotations.Counted;
11+
//import application.io.opentelemetry.instrumentation.annotations.Counted;
1212
import com.google.auto.service.AutoService;
1313
import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule;
1414
import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation;
1515
import java.util.List;
1616
import net.bytebuddy.matcher.ElementMatcher;
1717

18-
@AutoService(CountedInstrumentationsModule.class)
18+
@AutoService(InstrumentationModule.class)
1919
public class CountedInstrumentationsModule extends InstrumentationModule {
2020

2121
public CountedInstrumentationsModule() {

instrumentation/opentelemetry-instrumentation-annotations-1.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/instrumentationannotations/TimedInstrumentationsModule.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@
88
import static io.opentelemetry.javaagent.extension.matcher.AgentElementMatchers.hasClassesNamed;
99
import static java.util.Arrays.asList;
1010

11-
import application.io.opentelemetry.instrumentation.annotations.Timed;
11+
//import application.io.opentelemetry.instrumentation.annotations.Timed;
1212
import com.google.auto.service.AutoService;
1313
import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule;
1414
import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation;
1515
import java.util.List;
1616
import net.bytebuddy.matcher.ElementMatcher;
1717

18-
@AutoService(TimedInstrumentationsModule.class)
18+
@AutoService(InstrumentationModule.class)
1919
public class TimedInstrumentationsModule extends InstrumentationModule {
2020

2121
public TimedInstrumentationsModule() {

0 commit comments

Comments
 (0)