Skip to content

Commit 67d8998

Browse files
committed
Validate javaagent suppression keys
1 parent f30601d commit 67d8998

File tree

25 files changed

+96
-23
lines changed

25 files changed

+96
-23
lines changed
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
#!/bin/bash -e
2+
3+
# shellcheck disable=SC2044
4+
for file in $(find instrumentation -name "*Module.java"); do
5+
6+
if ! grep -q "extends InstrumentationModule" "$file"; then
7+
continue
8+
fi
9+
10+
if [[ "$file" != *"/javaagent/src/"* ]]; then
11+
continue
12+
fi
13+
14+
# shellcheck disable=SC2001
15+
module_name=$(echo "$file" | sed 's#.*/\([^/]*\)/javaagent/src/.*#\1#')
16+
# shellcheck disable=SC2001
17+
simple_module_name=$(echo "$module_name" | sed 's/-[0-9.]*$//')
18+
19+
if [[ "$simple_module_name" == *jaxrs* ]]; then
20+
# TODO these need some work still
21+
continue
22+
fi
23+
if [[ "$simple_module_name" == *jaxws* ]]; then
24+
# TODO these need some work still
25+
continue
26+
fi
27+
if [[ "$simple_module_name" == jdbc ]]; then
28+
# TODO split jdbc-datasource out into separate instrumentation?
29+
continue
30+
fi
31+
if [[ "$simple_module_name" == kafka-clients ]]; then
32+
# TODO split kafka client metrics out into separate instrumentation?
33+
continue
34+
fi
35+
if [[ "$simple_module_name" == quarkus-resteasy-reactive ]]; then
36+
# TODO module is missing a base version
37+
continue
38+
fi
39+
40+
if [ "$module_name" == "$simple_module_name" ]; then
41+
expected="super\(\n? *\"$simple_module_name\""
42+
else
43+
expected="super\(\n? *\"$simple_module_name\",\n? *\"$module_name\""
44+
fi
45+
46+
echo "$module_name"
47+
48+
matches=$(perl -0 -ne "print if /$expected/" "$file" | wc -l)
49+
if [ "$matches" == 0 ]; then
50+
echo "Expected to find $expected in $file"
51+
exit 1
52+
fi
53+
54+
done

.github/workflows/build-common.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,13 @@ jobs:
119119
exit 1
120120
fi
121121
122+
check-javaagent-suppression-keys:
123+
runs-on: ubuntu-latest
124+
steps:
125+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
126+
127+
- run: .github/scripts/check-javaagent-suppression-keys.sh
128+
122129
build:
123130
runs-on: ubuntu-latest
124131
steps:

instrumentation/akka/akka-actor-fork-join-2.5/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/akkaactor/AkkaActorForkJoinInstrumentationModule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
@AutoService(InstrumentationModule.class)
1616
public class AkkaActorForkJoinInstrumentationModule extends InstrumentationModule {
1717
public AkkaActorForkJoinInstrumentationModule() {
18-
super("akka-actor", "akka-actor-fork-join", "akka-actor-fork-join-2.5");
18+
super("akka-actor-fork-join", "akka-actor-fork-join-2.5", "akka-actor");
1919
}
2020

2121
@Override

instrumentation/armeria/armeria-grpc-1.14/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/armeria/grpc/v1_14/ArmeriaGrpcInstrumentationModule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
@AutoService(InstrumentationModule.class)
1616
public class ArmeriaGrpcInstrumentationModule extends InstrumentationModule {
1717
public ArmeriaGrpcInstrumentationModule() {
18-
super("armeria", "armeria-1.14", "armeria-grpc-1.14");
18+
super("armeria-grpc", "armeria-grpc-1.14", "armeria", "armeria-1.14");
1919
}
2020

2121
@Override

instrumentation/clickhouse-client-0.5/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/clickhouse/ClickHouseInstrumentationModule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
public class ClickHouseInstrumentationModule extends InstrumentationModule {
1717

1818
public ClickHouseInstrumentationModule() {
19-
super("clickhouse", "clickhouse-client-0.5");
19+
super("clickhouse-client", "clickhouse-client-0.5", "clickhouse");
2020
}
2121

2222
@Override

instrumentation/elasticsearch/elasticsearch-rest-6.4/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/elasticsearch/rest/v6_4/ElasticsearchRest6InstrumentationModule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
@AutoService(InstrumentationModule.class)
1919
public class ElasticsearchRest6InstrumentationModule extends InstrumentationModule {
2020
public ElasticsearchRest6InstrumentationModule() {
21-
super("elasticsearch-rest", "elasticsearch-rest-6.0", "elasticsearch");
21+
super("elasticsearch-rest", "elasticsearch-rest-6.4", "elasticsearch");
2222
}
2323

2424
@Override

instrumentation/finagle-http-23.11/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/finaglehttp/v23_11/TwitterUtilCoreInstrumentationModule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public class TwitterUtilCoreInstrumentationModule extends InstrumentationModule
1818
implements ExperimentalInstrumentationModule {
1919

2020
public TwitterUtilCoreInstrumentationModule() {
21-
super("twitter-util-core");
21+
super("finagle-http", "finagle-http-23.11");
2222
}
2323

2424
@Override

instrumentation/internal/internal-application-logger/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/internal/logging/ApplicationLoggingInstrumentationModule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
public class ApplicationLoggingInstrumentationModule extends InstrumentationModule {
1818

1919
public ApplicationLoggingInstrumentationModule() {
20-
super("internal-application-logging");
20+
super("internal-application-logger");
2121
}
2222

2323
@Override

instrumentation/javalin-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/javalin/v5_0/JavalinInstrumentationModule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
public class JavalinInstrumentationModule extends InstrumentationModule {
2020

2121
public JavalinInstrumentationModule() {
22-
super("javalin", "javalin-5");
22+
super("javalin", "javalin-5.0");
2323
}
2424

2525
@Override

instrumentation/kotlinx-coroutines/kotlinx-coroutines-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/kotlinxcoroutines/KotlinCoroutinesInstrumentationModule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public class KotlinCoroutinesInstrumentationModule extends InstrumentationModule
1818
implements ExperimentalInstrumentationModule {
1919

2020
public KotlinCoroutinesInstrumentationModule() {
21-
super("kotlinx-coroutines");
21+
super("kotlinx-coroutines", "kotlinx-coroutines-1.0");
2222
}
2323

2424
@Override

0 commit comments

Comments
 (0)