Skip to content

Commit cd7de1f

Browse files
committed
create static variable for attribute
1 parent 91a7a6b commit cd7de1f

File tree

20 files changed

+279
-347
lines changed

20 files changed

+279
-347
lines changed

docs/instrumentation-list.yaml

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3455,9 +3455,8 @@ libraries:
34553455
type: STRING
34563456
hibernate:
34573457
- name: hibernate-3.3
3458-
description: This instrumentation enables the generation of `INTERNAL` spans for
3459-
Hibernate operations, including session methods (e.g., `save`, `update`, `delete`),
3460-
transaction commits, and query executions.
3458+
description: |
3459+
This instrumentation enables the generation of INTERNAL spans for Hibernate operations, including session methods (e.g., `save`, `update`, `delete`), transaction commits, and query executions.
34613460
source_path: instrumentation/hibernate/hibernate-3.3
34623461
scope:
34633462
name: io.opentelemetry.hibernate-3.3
@@ -3482,9 +3481,8 @@ libraries:
34823481
- name: hibernate.session_id
34833482
type: STRING
34843483
- name: hibernate-4.0
3485-
description: This instrumentation enables the generation of `INTERNAL` spans for
3486-
Hibernate operations, including session methods (e.g., `save`, `update`, `delete`),
3487-
transaction commits, and query executions.
3484+
description: |
3485+
This instrumentation enables the generation of INTERNAL spans for Hibernate operations, including session methods (e.g., `save`, `update`, `delete`), transaction commits, and query executions.
34883486
source_path: instrumentation/hibernate/hibernate-4.0
34893487
scope:
34903488
name: io.opentelemetry.hibernate-4.0
@@ -3509,13 +3507,21 @@ libraries:
35093507
- name: hibernate.session_id
35103508
type: STRING
35113509
- name: hibernate-6.0
3510+
description: |
3511+
This instrumentation enables the generation of INTERNAL spans for Hibernate operations, including session methods (e.g., `save`, `update`, `delete`), transaction commits, and query executions.
35123512
source_path: instrumentation/hibernate/hibernate-6.0
35133513
minimum_java_version: 11
35143514
scope:
35153515
name: io.opentelemetry.hibernate-6.0
35163516
target_versions:
35173517
javaagent:
35183518
- org.hibernate:hibernate-core:[6.0.0.Final,)
3519+
configurations:
3520+
- name: otel.instrumentation.hibernate.experimental-span-attributes
3521+
description: Enables the addition of the experimental `hibernate.session_id`
3522+
span attribute.
3523+
type: boolean
3524+
default: false
35193525
telemetry:
35203526
- when: default
35213527
spans:

instrumentation-docs/collect.sh

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -153,18 +153,18 @@ main() {
153153
done < <(process_descriptors "${INSTRUMENTATIONS[@]}")
154154
run_gradle_tasks "${gradle_tasks[@]}"
155155

156-
# # Setup colima if needed
157-
# setup_colima
158-
#
159-
# # Process colima-specific instrumentations
160-
# echo "Processing colima instrumentations..."
161-
# gradle_tasks=()
162-
# while IFS= read -r line; do
163-
# gradle_tasks+=("$line")
164-
# done < <(process_descriptors "${COLIMA_INSTRUMENTATIONS[@]}")
165-
# run_gradle_tasks "${gradle_tasks[@]}"
166-
#
167-
# colima stop
156+
# Setup colima if needed
157+
setup_colima
158+
159+
# Process colima-specific instrumentations
160+
echo "Processing colima instrumentations..."
161+
gradle_tasks=()
162+
while IFS= read -r line; do
163+
gradle_tasks+=("$line")
164+
done < <(process_descriptors "${COLIMA_INSTRUMENTATIONS[@]}")
165+
run_gradle_tasks "${gradle_tasks[@]}"
166+
167+
colima stop
168168

169169
# uncomment the next line to remove all .telemetry directories
170170
#find_and_remove_all_telemetry

instrumentation-docs/instrumentations.sh

Lines changed: 141 additions & 144 deletions
Large diffs are not rendered by default.

instrumentation/hibernate/hibernate-3.3/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/hibernate/v3_3/AbstractHibernateTest.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55

66
package io.opentelemetry.javaagent.instrumentation.hibernate.v3_3;
77

8-
import static io.opentelemetry.api.common.AttributeKey.stringKey;
98
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
109
import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable;
1110
import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStableDbSystemName;
11+
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.HIBERNATE_SESSION_ID;
1212
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.experimental;
1313
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.experimentalSatisfies;
1414
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
@@ -104,16 +104,14 @@ static SpanDataAssert assertSessionSpan(SpanDataAssert span, SpanData parent, St
104104
.hasParent(parent)
105105
.hasAttributesSatisfyingExactly(
106106
experimentalSatisfies(
107-
stringKey("hibernate.session_id"),
108-
val -> assertThat(val).isInstanceOf(String.class)));
107+
HIBERNATE_SESSION_ID, val -> assertThat(val).isInstanceOf(String.class)));
109108
}
110109

111110
static void assertSpanWithSessionId(
112111
SpanDataAssert span, SpanData parent, String spanName, String sessionId) {
113112
span.hasName(spanName)
114113
.hasKind(SpanKind.INTERNAL)
115114
.hasParent(parent)
116-
.hasAttributesSatisfyingExactly(
117-
equalTo(stringKey("hibernate.session_id"), experimental(sessionId)));
115+
.hasAttributesSatisfyingExactly(equalTo(HIBERNATE_SESSION_ID, experimental(sessionId)));
118116
}
119117
}

instrumentation/hibernate/hibernate-3.3/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/hibernate/v3_3/CriteriaTest.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
package io.opentelemetry.javaagent.instrumentation.hibernate.v3_3;
77

8-
import static io.opentelemetry.api.common.AttributeKey.stringKey;
8+
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.HIBERNATE_SESSION_ID;
99
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.experimental;
1010

1111
import io.opentelemetry.api.trace.SpanKind;
@@ -57,11 +57,7 @@ void testCriteria(String methodName, Consumer<Criteria> interaction) {
5757
span,
5858
trace.getSpan(0),
5959
"Transaction.commit",
60-
experimental(
61-
trace
62-
.getSpan(1)
63-
.getAttributes()
64-
.get(stringKey("hibernate.session_id"))))));
60+
experimental(trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)))));
6561
}
6662

6763
private static Stream<Arguments> provideArguments() {

instrumentation/hibernate/hibernate-3.3/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/hibernate/v3_3/QueryTest.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55

66
package io.opentelemetry.javaagent.instrumentation.hibernate.v3_3;
77

8+
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.HIBERNATE_SESSION_ID;
89
import static org.junit.jupiter.api.Named.named;
910

10-
import io.opentelemetry.api.common.AttributeKey;
1111
import io.opentelemetry.api.trace.SpanKind;
1212
import java.util.function.Consumer;
1313
import java.util.stream.Stream;
@@ -58,10 +58,7 @@ void testHibernateQuery(Parameter parameters) {
5858
span,
5959
trace.getSpan(0),
6060
"Transaction.commit",
61-
trace
62-
.getSpan(1)
63-
.getAttributes()
64-
.get(AttributeKey.stringKey("hibernate.session_id"))));
61+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)));
6562
} else {
6663
// Without Transaction
6764
trace.hasSpansSatisfyingExactly(

instrumentation/hibernate/hibernate-3.3/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/hibernate/v3_3/SessionTest.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
package io.opentelemetry.javaagent.instrumentation.hibernate.v3_3;
77

8-
import static io.opentelemetry.api.common.AttributeKey.stringKey;
8+
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.HIBERNATE_SESSION_ID;
99
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
1010
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
1111
import static io.opentelemetry.semconv.ExceptionAttributes.EXCEPTION_MESSAGE;
@@ -92,7 +92,7 @@ void testHibernateStatelessAction(Parameter parameter) {
9292
span,
9393
trace.getSpan(0),
9494
"Transaction.commit",
95-
trace.getSpan(1).getAttributes().get(stringKey("hibernate.session_id"))),
95+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)),
9696
span -> assertClientSpan(span, trace.getSpan(2))));
9797
}
9898

@@ -124,7 +124,7 @@ void testHibernateReplicate(Parameter parameter) {
124124
span,
125125
trace.getSpan(0),
126126
"Transaction.commit",
127-
trace.getSpan(1).getAttributes().get(stringKey("hibernate.session_id"))),
127+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)),
128128
span -> assertClientSpan(span, trace.getSpan(3))));
129129
}
130130

@@ -166,7 +166,7 @@ void testHibernateFailedReplicate() {
166166
span,
167167
trace.getSpan(0),
168168
"Transaction.commit",
169-
trace.getSpan(1).getAttributes().get(stringKey("hibernate.session_id")))));
169+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID))));
170170
}
171171

172172
@ParameterizedTest
@@ -196,7 +196,7 @@ void testHibernateCommitAction(Parameter parameter) {
196196
span,
197197
trace.getSpan(0),
198198
"Transaction.commit",
199-
trace.getSpan(1).getAttributes().get(stringKey("hibernate.session_id"))),
199+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)),
200200
span -> assertClientSpan(span, trace.getSpan(2))));
201201
}
202202

@@ -225,7 +225,7 @@ void testAttachesStateToQueryCreatedViaQueryMethods(Parameter parameter) {
225225
span,
226226
trace.getSpan(0),
227227
"Transaction.commit",
228-
trace.getSpan(1).getAttributes().get(stringKey("hibernate.session_id")))));
228+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID))));
229229
}
230230

231231
@Test
@@ -279,13 +279,13 @@ void testHibernateOverlappingSessions() {
279279
span,
280280
trace.getSpan(0),
281281
"Session.delete io.opentelemetry.javaagent.instrumentation.hibernate.v3_3.Value",
282-
trace.getSpan(1).getAttributes().get(stringKey("hibernate.session_id"))),
282+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)),
283283
span ->
284284
assertSpanWithSessionId(
285285
span,
286286
trace.getSpan(0),
287287
"Transaction.commit",
288-
trace.getSpan(1).getAttributes().get(stringKey("hibernate.session_id"))),
288+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)),
289289
span -> assertClientSpan(span, trace.getSpan(5), "INSERT"),
290290
span -> assertClientSpan(span, trace.getSpan(5), "DELETE")));
291291
}
@@ -585,6 +585,6 @@ static void sessionAssertion(TraceAssert trace, String methodName, String resour
585585
span,
586586
trace.getSpan(0),
587587
"Transaction.commit",
588-
trace.getSpan(1).getAttributes().get(stringKey("hibernate.session_id"))));
588+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)));
589589
}
590590
}

instrumentation/hibernate/hibernate-3.3/metadata.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
description: This instrumentation enables the generation of `INTERNAL` spans for Hibernate
2-
operations, including session methods (e.g., `save`, `update`, `delete`), transaction
3-
commits, and query executions.
1+
description: >
2+
This instrumentation enables the generation of INTERNAL spans for Hibernate operations, including
3+
session methods (e.g., `save`, `update`, `delete`), transaction commits, and query executions.
44
configurations:
55
- name: otel.instrumentation.hibernate.experimental-span-attributes
66
type: boolean

instrumentation/hibernate/hibernate-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/hibernate/v4_0/CriteriaTest.java

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55

66
package io.opentelemetry.javaagent.instrumentation.hibernate.v4_0;
77

8-
import static io.opentelemetry.api.common.AttributeKey.stringKey;
98
import static io.opentelemetry.api.trace.SpanKind.CLIENT;
109
import static io.opentelemetry.api.trace.SpanKind.INTERNAL;
1110
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
1211
import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable;
1312
import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStableDbSystemName;
13+
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.HIBERNATE_SESSION_ID;
1414
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.experimental;
1515
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.experimentalSatisfies;
1616
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
@@ -71,7 +71,7 @@ void testCriteria(String methodName, Consumer<Criteria> interaction) {
7171
.hasParent(trace.getSpan(0))
7272
.hasAttributesSatisfyingExactly(
7373
experimentalSatisfies(
74-
stringKey("hibernate.session_id"),
74+
HIBERNATE_SESSION_ID,
7575
val -> assertThat(val).isInstanceOf(String.class))),
7676
span ->
7777
span.hasName("SELECT db1.Value")
@@ -95,12 +95,9 @@ void testCriteria(String methodName, Consumer<Criteria> interaction) {
9595
.hasParent(trace.getSpan(0))
9696
.hasAttributesSatisfyingExactly(
9797
equalTo(
98-
stringKey("hibernate.session_id"),
98+
HIBERNATE_SESSION_ID,
9999
experimental(
100-
trace
101-
.getSpan(1)
102-
.getAttributes()
103-
.get(stringKey("hibernate.session_id")))))));
100+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID))))));
104101
}
105102

106103
private static Stream<Arguments> provideArguments() {

instrumentation/hibernate/hibernate-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/hibernate/v4_0/EntityManagerTest.java

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55

66
package io.opentelemetry.javaagent.instrumentation.hibernate.v4_0;
77

8-
import static io.opentelemetry.api.common.AttributeKey.stringKey;
98
import static io.opentelemetry.api.trace.SpanKind.CLIENT;
109
import static io.opentelemetry.api.trace.SpanKind.INTERNAL;
1110
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
1211
import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable;
1312
import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStableDbSystemName;
13+
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.HIBERNATE_SESSION_ID;
1414
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.experimental;
1515
import static io.opentelemetry.javaagent.instrumentation.hibernate.ExperimentalTestHelper.experimentalSatisfies;
1616
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
@@ -100,20 +100,17 @@ void testHibernateActions(Parameter parameter) {
100100
.hasParent(trace.getSpan(0))
101101
.hasAttributesSatisfyingExactly(
102102
experimentalSatisfies(
103-
stringKey("hibernate.session_id"),
103+
HIBERNATE_SESSION_ID,
104104
val -> assertThat(val).isInstanceOf(String.class))),
105105
span ->
106106
span.hasName("Transaction.commit")
107107
.hasKind(INTERNAL)
108108
.hasParent(trace.getSpan(0))
109109
.hasAttributesSatisfyingExactly(
110110
equalTo(
111-
stringKey("hibernate.session_id"),
111+
HIBERNATE_SESSION_ID,
112112
experimental(
113-
trace
114-
.getSpan(1)
115-
.getAttributes()
116-
.get(stringKey("hibernate.session_id"))))),
113+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)))),
117114
span ->
118115
span.hasKind(CLIENT)
119116
.hasParent(trace.getSpan(2))
@@ -143,7 +140,7 @@ void testHibernateActions(Parameter parameter) {
143140
.hasParent(trace.getSpan(0))
144141
.hasAttributesSatisfyingExactly(
145142
experimentalSatisfies(
146-
stringKey("hibernate.session_id"),
143+
HIBERNATE_SESSION_ID,
147144
val -> assertThat(val).isInstanceOf(String.class))),
148145
span ->
149146
span.hasKind(CLIENT)
@@ -166,12 +163,9 @@ void testHibernateActions(Parameter parameter) {
166163
.hasParent(trace.getSpan(0))
167164
.hasAttributesSatisfyingExactly(
168165
equalTo(
169-
stringKey("hibernate.session_id"),
166+
HIBERNATE_SESSION_ID,
170167
experimental(
171-
trace
172-
.getSpan(1)
173-
.getAttributes()
174-
.get(stringKey("hibernate.session_id"))))));
168+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)))));
175169
}
176170
});
177171
}
@@ -253,12 +247,9 @@ void testHibernatePersist() {
253247
.hasParent(trace.getSpan(0))
254248
.hasAttributesSatisfyingExactly(
255249
equalTo(
256-
stringKey("hibernate.session_id"),
250+
HIBERNATE_SESSION_ID,
257251
experimental(
258-
trace
259-
.getSpan(1)
260-
.getAttributes()
261-
.get(stringKey("hibernate.session_id"))))),
252+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID)))),
262253
span ->
263254
span.hasKind(CLIENT)
264255
.hasParent(trace.getSpan(3))
@@ -305,7 +296,7 @@ void testAttachesStateToQuery(Function<EntityManager, Query> queryBuildMethod) {
305296
.hasParent(trace.getSpan(0))
306297
.hasAttributesSatisfyingExactly(
307298
experimentalSatisfies(
308-
stringKey("hibernate.session_id"),
299+
HIBERNATE_SESSION_ID,
309300
val -> assertThat(val).isInstanceOf(String.class))),
310301
span ->
311302
span.hasName("SELECT db1.Value")
@@ -329,12 +320,9 @@ void testAttachesStateToQuery(Function<EntityManager, Query> queryBuildMethod) {
329320
.hasParent(trace.getSpan(0))
330321
.hasAttributesSatisfyingExactly(
331322
equalTo(
332-
stringKey("hibernate.session_id"),
323+
HIBERNATE_SESSION_ID,
333324
experimental(
334-
trace
335-
.getSpan(1)
336-
.getAttributes()
337-
.get(stringKey("hibernate.session_id")))))));
325+
trace.getSpan(1).getAttributes().get(HIBERNATE_SESSION_ID))))));
338326
}
339327

340328
@Test

0 commit comments

Comments
 (0)