Skip to content

Commit dd00a7f

Browse files
committed
generate metadata
1 parent 617961d commit dd00a7f

File tree

4 files changed

+68
-1
lines changed

4 files changed

+68
-1
lines changed

docs/instrumentation-list.yaml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4102,6 +4102,59 @@ libraries:
41024102
target_versions:
41034103
javaagent:
41044104
- org.mybatis:mybatis:[3.2.0,)
4105+
nats:
4106+
- name: nats-2.21
4107+
description: This instrumentation provides messaging spans for NATS
4108+
disabled_by_default: true
4109+
source_path: instrumentation/nats/nats-2.21
4110+
scope:
4111+
name: io.opentelemetry.nats-2.21
4112+
target_versions:
4113+
javaagent:
4114+
- io.nats:jnats:[2.17.2,)
4115+
library:
4116+
- io.nats:jnats:2.21.0
4117+
configurations:
4118+
- name: otel.instrumentation.messaging.experimental.receive-telemetry.enabled
4119+
description: |
4120+
Enables experimental receive telemetry, which will cause consumers to start a new trace, with only a span link connecting it to the producer trace.
4121+
type: boolean
4122+
default: false
4123+
- name: otel.instrumentation.messaging.experimental.capture-headers
4124+
description: Allows configuring headers to capture as span attributes.
4125+
type: list
4126+
default: ''
4127+
telemetry:
4128+
- when: default
4129+
spans:
4130+
- span_kind: CONSUMER
4131+
attributes:
4132+
- name: messaging.client_id
4133+
type: STRING
4134+
- name: messaging.destination.name
4135+
type: STRING
4136+
- name: messaging.header.captured_header
4137+
type: STRING_ARRAY
4138+
- name: messaging.message.body.size
4139+
type: LONG
4140+
- name: messaging.operation
4141+
type: STRING
4142+
- name: messaging.system
4143+
type: STRING
4144+
- span_kind: PRODUCER
4145+
attributes:
4146+
- name: messaging.client_id
4147+
type: STRING
4148+
- name: messaging.destination.name
4149+
type: STRING
4150+
- name: messaging.header.captured_header
4151+
type: STRING_ARRAY
4152+
- name: messaging.message.body.size
4153+
type: LONG
4154+
- name: messaging.operation
4155+
type: STRING
4156+
- name: messaging.system
4157+
type: STRING
41054158
netty:
41064159
- name: netty-3.8
41074160
source_path: instrumentation/netty/netty-3.8

instrumentation-docs/instrumentations.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,8 @@ readonly INSTRUMENTATIONS=(
137137
"grails-3.0:javaagent:test"
138138
"grizzly-2.3:javaagent:test"
139139
"gwt-2.0:javaagent:test"
140+
"nats:nats-2.21:javaagent:test"
141+
"nats:nats-2.21:javaagent:testExperimental"
140142
)
141143

142144
# Some instrumentation test suites don't run ARM, so we use colima to run them in an x86_64

instrumentation/nats/nats-2.21/javaagent/build.gradle.kts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,26 @@ dependencies {
1818
testImplementation(project(":instrumentation:nats:nats-2.21:testing"))
1919
}
2020

21+
val collectMetadata = findProperty("collectMetadata")?.toString() ?: "false"
22+
2123
tasks {
2224
val testExperimental by registering(Test::class) {
2325
filter {
2426
includeTestsMatching("NatsInstrumentationExperimentalTest")
2527
}
2628
jvmArgs("-Dotel.instrumentation.messaging.experimental.receive-telemetry.enabled=true")
2729
jvmArgs("-Dotel.instrumentation.messaging.experimental.capture-headers=captured-header")
30+
31+
systemProperty("collectMetadata", collectMetadata)
2832
}
2933

3034
test {
3135
usesService(gradle.sharedServices.registrations["testcontainersBuildService"].service)
3236
filter {
3337
excludeTestsMatching("NatsInstrumentationExperimentalTest")
3438
}
39+
40+
systemProperty("collectMetadata", collectMetadata)
3541
}
3642

3743
check {

instrumentation/nats/nats-2.21/metadata.yaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@ disabled_by_default: true
22
description: This instrumentation provides messaging spans for NATS
33
configurations:
44
- name: otel.instrumentation.messaging.experimental.receive-telemetry.enabled
5-
description: Enables experimental receive telemetry for NATS instrumentation.
5+
description: >
6+
Enables experimental receive telemetry, which will cause consumers to start a new trace, with
7+
only a span link connecting it to the producer trace.
68
type: boolean
79
default: false
10+
- name: otel.instrumentation.messaging.experimental.capture-headers
11+
description: Allows configuring headers to capture as span attributes.
12+
type: list
13+
default: ''

0 commit comments

Comments
 (0)