Skip to content

Commit 7ce0dd9

Browse files
[Monitor OpenTelemetry Exporter] Filter OpenTelemetry Semantic Attributes from Being Double Recorded (#33322)
### Packages impacted by this PR @azure/monitor-opentelemetry-exporter ### Describe the problem that is addressed by this PR Known OpenTelemetry HTTP semantic attributes should not be double recorded in the Application Insights attributes as well as in custom dimensions. ### Are there test cases added in this PR? _(If not, why?)_ Yes, updated to ensure that OpenTelemetry HTTP semantic attributes are not recorded as custom dimensions. ### Checklists - [x] Added impacted package name to the issue description - [ ] Does this PR needs any fixes in the SDK Generator?** _(If so, create an Issue in the [Autorest/typescript](https://github.com/Azure/autorest.typescript) repository and link it here)_ - [x] Added a changelog (if necessary) --------- Co-authored-by: Copilot <[email protected]>
1 parent 7df8e99 commit 7ce0dd9

File tree

3 files changed

+27
-1
lines changed

3 files changed

+27
-1
lines changed

sdk/monitor/monitor-opentelemetry-exporter/CHANGELOG.md

+5
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Release History
22

3+
## 1.0.0-beta.30 ()
4+
5+
### Other Changes
6+
7+
- Filter OpenTelemetry semantic attributes from being double recorded as custom dimensions.
38
## 1.0.0-beta.29 (2025-03-04)
49

510
### Features Added

sdk/monitor/monitor-opentelemetry-exporter/src/types.ts

+19-1
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,22 @@ import {
2828
SEMATTRS_EXCEPTION_MESSAGE,
2929
SEMATTRS_EXCEPTION_STACKTRACE,
3030
SEMATTRS_EXCEPTION_TYPE,
31+
SEMATTRS_HTTP_FLAVOR,
3132
SEMATTRS_HTTP_HOST,
3233
SEMATTRS_HTTP_METHOD,
3334
SEMATTRS_HTTP_ROUTE,
35+
SEMATTRS_HTTP_SCHEME,
3436
SEMATTRS_HTTP_STATUS_CODE,
37+
SEMATTRS_HTTP_TARGET,
3538
SEMATTRS_HTTP_URL,
39+
SEMATTRS_HTTP_USER_AGENT,
40+
SEMATTRS_NET_HOST_IP,
41+
SEMATTRS_NET_HOST_NAME,
42+
SEMATTRS_NET_HOST_PORT,
3643
SEMATTRS_NET_PEER_IP,
3744
SEMATTRS_NET_PEER_NAME,
45+
SEMATTRS_NET_PEER_PORT,
46+
SEMATTRS_NET_TRANSPORT,
3847
SEMATTRS_PEER_SERVICE,
3948
SEMATTRS_RPC_GRPC_STATUS_CODE,
4049
SEMATTRS_RPC_SYSTEM,
@@ -128,13 +137,14 @@ export enum MaxPropertyLengths {
128137
export const legacySemanticValues = [
129138
SEMATTRS_NET_PEER_IP,
130139
SEMATTRS_NET_PEER_NAME,
140+
SEMATTRS_NET_HOST_IP,
131141
SEMATTRS_PEER_SERVICE,
142+
SEMATTRS_HTTP_USER_AGENT,
132143
SEMATTRS_HTTP_METHOD,
133144
SEMATTRS_HTTP_URL,
134145
SEMATTRS_HTTP_STATUS_CODE,
135146
SEMATTRS_HTTP_ROUTE,
136147
SEMATTRS_HTTP_HOST,
137-
SEMATTRS_HTTP_URL,
138148
SEMATTRS_DB_SYSTEM,
139149
SEMATTRS_DB_STATEMENT,
140150
SEMATTRS_DB_OPERATION,
@@ -144,6 +154,14 @@ export const legacySemanticValues = [
144154
SEMATTRS_EXCEPTION_TYPE,
145155
SEMATTRS_EXCEPTION_MESSAGE,
146156
SEMATTRS_EXCEPTION_STACKTRACE,
157+
SEMATTRS_HTTP_SCHEME,
158+
SEMATTRS_HTTP_TARGET,
159+
SEMATTRS_HTTP_FLAVOR,
160+
SEMATTRS_NET_TRANSPORT,
161+
SEMATTRS_NET_HOST_NAME,
162+
SEMATTRS_NET_HOST_PORT,
163+
SEMATTRS_NET_PEER_PORT,
164+
"http.status_text",
147165
];
148166

149167
/**

sdk/monitor/monitor-opentelemetry-exporter/test/internal/spanUtils.spec.ts

+3
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import {
2828
SEMATTRS_HTTP_HOST,
2929
SEMATTRS_HTTP_METHOD,
3030
SEMATTRS_HTTP_ROUTE,
31+
SEMATTRS_HTTP_SCHEME,
3132
SEMATTRS_HTTP_STATUS_CODE,
3233
SEMATTRS_HTTP_URL,
3334
SEMATTRS_NET_PEER_IP,
@@ -587,6 +588,7 @@ describe("spanUtils.ts", () => {
587588
[SEMATTRS_HTTP_ROUTE]: "/api/example",
588589
[SEMATTRS_HTTP_URL]: "https://example.com/api/example",
589590
[SEMATTRS_HTTP_STATUS_CODE]: 200,
591+
[SEMATTRS_HTTP_SCHEME]: "https",
590592
"extra.attribute": "foo",
591593
});
592594
span.setStatus({
@@ -910,6 +912,7 @@ describe("spanUtils.ts", () => {
910912
[SEMATTRS_HTTP_URL]: "https://example.com/api/example",
911913
[SEMATTRS_PEER_SERVICE]: "https://someotherexample.com/api/example",
912914
[SEMATTRS_HTTP_STATUS_CODE]: 200,
915+
[SEMATTRS_HTTP_SCHEME]: "https",
913916
"extra.attribute": "foo",
914917
});
915918
span.setStatus({

0 commit comments

Comments
 (0)