Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
682 changes: 661 additions & 21 deletions docs/instrumentation-list.yaml

Large diffs are not rendered by default.

34 changes: 34 additions & 0 deletions instrumentation-docs/collect.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ fi

readonly INSTRUMENTATIONS=(
# <module path (colon-separated)> : <javaagent|library> : [ gradle-task-suffix ]
"akka:akka-http-10.0:javaagent:test"
"apache-httpasyncclient-4.1:javaagent:test"
"alibaba-druid-1.0:javaagent:test"
"alibaba-druid-1.0:javaagent:testStableSemconv"
"apache-dbcp-2.0:javaagent:test"
Expand All @@ -23,6 +25,38 @@ readonly INSTRUMENTATIONS=(
"c3p0-0.9:javaagent:testStableSemconv"
"clickhouse-client-0.5:javaagent:test"
"clickhouse-client-0.5:javaagent:testStableSemconv"
"aws-sdk:aws-sdk-1.11:javaagent:test"
"google-http-client-1.19:javaagent:test"
"http-url-connection:javaagent:test"
"java-http-client:javaagent:test"
"jetty-httpclient:jetty-httpclient-9.2:javaagent:test"
"jetty-httpclient:jetty-httpclient-12.0:javaagent:test"
"jodd-http-4.2:javaagent:test"
"netty:netty-3.8:javaagent:test"
"netty:netty-4.0:javaagent:test"
"netty:netty-4.1:javaagent:test"
"okhttp:okhttp-2.2:javaagent:test"
"okhttp:okhttp-3.0:javaagent:test"
"pekko:pekko-http-1.0:javaagent:test"
"play:play-ws:play-ws-1.0:javaagent:test"
"play:play-ws:play-ws-2.0:javaagent:test"
"play:play-ws:play-ws-2.1:javaagent:test"
"reactor:reactor-netty:reactor-netty-0.9:javaagent:test"
"reactor:reactor-netty:reactor-netty-1.0:javaagent:test"
"spring:spring-webflux:spring-webflux-5.0:javaagent:test"
"vertx:vertx-http-client:vertx-http-client-3.0:javaagent:test"
"vertx:vertx-http-client:vertx-http-client-4.0:javaagent:test"
"vertx:vertx-http-client:vertx-http-client-5.0:javaagent:test"
"vertx:vertx-redis-client-4.0:javaagent:test"
"vertx:vertx-redis-client-4.0:javaagent:testStableSemconv"
"vertx:vertx-sql-client:vertx-sql-client-4.0:javaagent:test"
"vertx:vertx-sql-client:vertx-sql-client-4.0:javaagent:testStableSemconv"
"vertx:vertx-sql-client:vertx-sql-client-5.0:javaagent:test"
"vertx:vertx-sql-client:vertx-sql-client-5.0:javaagent:testStableSemconv"
"aws-sdk:aws-sdk-1.11:javaagent:testStableSemconv"
"aws-sdk:aws-sdk-2.2:javaagent:test"
"aws-sdk:aws-sdk-2.2:javaagent:testStableSemconv"
"aws-sdk:aws-sdk-2.2:javaagent:testBedrockRuntime"
"hikaricp-3.0:javaagent:test"
"hikaricp-3.0:javaagent:testStableSemconv"
"tomcat:tomcat-jdbc:javaagent:test"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ tasks {
jvmArgs("-XX:+IgnoreUnrecognizedVMOptions")

systemProperty("testLatestDeps", findProperty("testLatestDeps") as Boolean)
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}

check {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,9 @@ muzzle {
dependencies {
library("org.apache.httpcomponents:httpasyncclient:4.1")
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,8 @@ testing {
}
}

val collectMetadata = findProperty("collectMetadata")?.toString() ?: "false"

tasks {
if (!(findProperty("testLatestDeps") as Boolean)) {
check {
Expand All @@ -143,6 +145,9 @@ tasks {

val testStableSemconv by registering(Test::class) {
jvmArgs("-Dotel.semconv-stability.opt-in=database")

systemProperty("collectMetadata", collectMetadata)
systemProperty("metaDataConfig", "otel.semconv-stability.opt-in=database")
}

check {
Expand All @@ -151,6 +156,7 @@ tasks {

test {
usesService(gradle.sharedServices.registrations["testcontainersBuildService"].service)
systemProperty("collectMetadata", collectMetadata)
}

withType<Test>().configureEach {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@ dependencies {
}

val latestDepTest = findProperty("testLatestDeps") as Boolean
val collectMetadata = findProperty("collectMetadata")?.toString() ?: "false"

testing {
suites {
Expand Down Expand Up @@ -161,6 +162,7 @@ testing {
testTask.configure {
// TODO run tests both with and without genai message capture
systemProperty("otel.instrumentation.genai.capture-message-content", "true")
systemProperty("collectMetadata", collectMetadata)
}
}
}
Expand Down Expand Up @@ -189,6 +191,7 @@ tasks {
excludeTestsMatching("Aws2SqsSuppressReceiveSpansTest")
}
systemProperty("otel.instrumentation.messaging.experimental.receive-telemetry.enabled", "true")
systemProperty("collectMetadata", collectMetadata)
}

check {
Expand All @@ -202,6 +205,7 @@ tasks {
systemProperty("otel.instrumentation.aws-sdk.experimental-span-attributes", "true")
systemProperty("otel.instrumentation.aws-sdk.experimental-record-individual-http-error", "true")
systemProperty("testLatestDeps", findProperty("testLatestDeps") as Boolean)
systemProperty("collectMetadata", collectMetadata)
}

withType<com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar>().configureEach {
Expand All @@ -216,6 +220,8 @@ tasks {
}
systemProperty("otel.instrumentation.messaging.experimental.receive-telemetry.enabled", "true")
jvmArgs("-Dotel.semconv-stability.opt-in=database")

systemProperty("metaDataConfig", "otel.semconv-stability.opt-in=database")
}

check {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
configurations:
- name: otel.instrumentation.elasticsearch.capture-search-query
description: |
Enable the capture of search query bodies. It is important to note that Elasticsearch queries
may contain personal or sensitive information.
type: boolean
default: false
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
configurations:
- name: otel.instrumentation.elasticsearch.capture-search-query
description: >
Enable the capture of search query bodies. It is important to note that Elasticsearch queries
may contain personal or sensitive information.
type: boolean
default: false
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
configurations:
- name: otel.instrumentation.elasticsearch.capture-search-query
description: >
Enable the capture of search query bodies. It is important to note that Elasticsearch queries
may contain personal or sensitive information.
type: boolean
default: false
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ public static Instrumenter<ElasticsearchRestRequest, Response> create(
boolean captureSearchQuery) {
ElasticsearchDbAttributesGetter dbClientAttributesGetter =
new ElasticsearchDbAttributesGetter(captureSearchQuery);
ElasticsearchClientAttributeExtractor esClientAtrributesExtractor =
ElasticsearchClientAttributeExtractor esClientAttributesExtractor =
new ElasticsearchClientAttributeExtractor(knownMethods);
SpanNameExtractor<? super ElasticsearchRestRequest> spanNameExtractor =
spanNameExtractorTransformer.apply(
Expand All @@ -46,7 +46,7 @@ public static Instrumenter<ElasticsearchRestRequest, Response> create(
return Instrumenter.<ElasticsearchRestRequest, Response>builder(
openTelemetry, instrumentationName, spanNameExtractor)
.addAttributesExtractor(DbClientAttributesExtractor.create(dbClientAttributesGetter))
.addAttributesExtractor(esClientAtrributesExtractor)
.addAttributesExtractor(esClientAttributesExtractor)
.addAttributesExtractors(attributesExtractors)
.addOperationMetrics(DbClientMetrics.get())
.buildInstrumenter(SpanKindExtractor.alwaysClient());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,9 @@ muzzle {
dependencies {
library("com.google.http-client:google-http-client:1.19.0")
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,9 @@ muzzle {
coreJdk()
}
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
6 changes: 6 additions & 0 deletions instrumentation/java-http-client/javaagent/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,9 @@ dependencies {
implementation(project(":instrumentation:java-http-client:library"))
testImplementation(project(":instrumentation:java-http-client:testing"))
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,9 @@ dependencies {

testImplementation(project(":instrumentation:jetty-httpclient:jetty-httpclient-12.0:testing"))
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,3 +24,9 @@ dependencies {

latestDepTestLibrary("org.eclipse.jetty:jetty-client:9.+") // documented limitation
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
6 changes: 6 additions & 0 deletions instrumentation/jodd-http-4.2/javaagent/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,9 @@ dependencies {
testImplementation(project(":instrumentation:jodd-http-4.2:javaagent"))
testImplementation(project(":instrumentation-api-incubator"))
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
6 changes: 6 additions & 0 deletions instrumentation/netty/netty-3.8/javaagent/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -50,3 +50,9 @@ if (!(findProperty("testLatestDeps") as Boolean)) {
}
}
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
2 changes: 2 additions & 0 deletions instrumentation/netty/netty-4.0/javaagent/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,8 @@ tasks {
}

test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")

filter {
excludeTestsMatching("Netty40ConnectionSpanTest")
excludeTestsMatching("Netty40ClientSslTest")
Expand Down
9 changes: 9 additions & 0 deletions instrumentation/netty/netty-4.0/metadata.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
configurations:
- name: otel.instrumentation.netty.connection-telemetry.enabled
description: Enable the creation of Connect and DNS spans
default: false
type: boolean
- name: otel.instrumentation.netty.ssl-telemetry.enabled
description: Enable SSL telemetry
default: false
type: boolean
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ tasks {

test {
systemProperty("testLatestDeps", findProperty("testLatestDeps") as Boolean)
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")

filter {
excludeTestsMatching("Netty41ConnectionSpanTest")
Expand Down
9 changes: 9 additions & 0 deletions instrumentation/netty/netty-4.1/metadata.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
configurations:
- name: otel.instrumentation.netty.connection-telemetry.enabled
description: Enable the creation of Connect and DNS spans
default: false
type: boolean
- name: otel.instrumentation.netty.ssl-telemetry.enabled
description: Enable SSL telemetry
default: false
type: boolean
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,9 @@ dependencies {

latestDepTestLibrary("com.squareup.okhttp:okhttp:2.+") // see okhttp-3.0 module
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -43,4 +43,8 @@ tasks {
check {
dependsOn(testing.suites)
}

test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ tasks {
jvmArgs("-XX:+IgnoreUnrecognizedVMOptions")

systemProperty("testLatestDeps", findProperty("testLatestDeps") as Boolean)
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}

check {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,9 @@ dependencies {

latestDepTestLibrary("com.typesafe.play:play-ahc-ws-standalone_$scalaVersion:1.+") // see play-ws-2.0 module
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -45,3 +45,9 @@ dependencies {

latestDepTestLibrary("com.typesafe.play:play-ahc-ws-standalone_$scalaVersion:2.0.+") // see play-ws-2.1 module
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,10 @@ tasks {
enabled = testLatestDeps
}

test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}

check {
dependsOn(testing.suites)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,9 @@ val scalaVersion = "2.12"
dependencies {
compileOnly("com.typesafe.play:play-ahc-ws-standalone_$scalaVersion:1.0.2")
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ tasks {
}

test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")

filter {
excludeTestsMatching("ReactorNettyConnectionSpanTest")
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,8 @@ tasks {
}

test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")

filter {
excludeTestsMatching("ReactorNettyConnectionSpanTest")
excludeTestsMatching("ReactorNettyClientSslTest")
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
configurations:
- name: otel.instrumentation.reactor-netty.connection-telemetry.enabled
description: Enable the creation of Connect and DNS spans.
type: boolean
default: false
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ tasks.withType<Test>().configureEach {
jvmArgs("-Dotel.instrumentation.common.experimental.controller-telemetry.enabled=true")

systemProperty("testLatestDeps", findProperty("testLatestDeps") as Boolean)
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}

val latestDepTest = findProperty("testLatestDeps") as Boolean
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,5 +37,6 @@ dependencies {
tasks {
withType<Test>().configureEach {
systemProperty("testLatestDeps", findProperty("testLatestDeps") as Boolean)
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,3 +24,9 @@ dependencies {
latestDepTestLibrary("io.vertx:vertx-core:4.+") // see vertx-http-client-5.0 module
latestDepTestLibrary("io.vertx:vertx-codegen:4.+") // see vertx-http-client-5.0 module
}

tasks {
test {
systemProperty("collectMetadata", findProperty("collectMetadata")?.toString() ?: "false")
}
}
Loading
Loading