Skip to content

Commit 0ad1ddd

Browse files
[monitor-opentelemetry] Bump OpenTelemetry experimental deps to 0.218.0 (#38533)
Bumps OpenTelemetry experimental deps from `^0.217.0` to `^0.218.0` in `@azure/monitor-opentelemetry` and `@azure/monitor-opentelemetry-exporter`: - `@opentelemetry/api-logs` - `@opentelemetry/instrumentation` - `@opentelemetry/instrumentation-http` - `@opentelemetry/sdk-logs` - `@opentelemetry/sdk-node` - `@opentelemetry/exporter-metrics-otlp-http` - `@opentelemetry/exporter-trace-otlp-http` Stable OTel 2.x packages remain at `^2.7.1` (no 0.218 stable release). Sibling instrumentation packages are already on their latest versions. ### npm audit OTel 0.218.0's `otlp-transformer` drops the `protobufjs` dependency for metrics serialization in favor of a custom implementation (open-telemetry/opentelemetry-js#6629), which resolves the protobufjs-related audit concern. The only remaining `protobufjs@8.2.0` is pulled in transitively via `@grpc/grpc-js` → `@grpc/proto-loader` and has no active advisories. `pnpm audit` after the bump: ``` info: 0, low: 0, moderate: 0, high: 0, critical: 0 ``` ### Verification - `pnpm install` succeeds. - `pnpm turbo build --filter=@azure/monitor-opentelemetry... --filter=@azure/monitor-opentelemetry-exporter...` succeeds. --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent c4dca89 commit 0ad1ddd

9 files changed

Lines changed: 269 additions & 202 deletions

File tree

package.json

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,7 @@
3535
},
3636
"pnpm": {
3737
"overrides": {
38-
"@azure/core-rest-pipeline": "link:sdk/core/core-rest-pipeline",
39-
"protobufjs@<8.0.3": "^8.0.3",
40-
"vite@<7.3.2": "^7.3.2"
38+
"@azure/core-rest-pipeline": "link:sdk/core/core-rest-pipeline"
4139
}
4240
}
4341
}

pnpm-lock.yaml

Lines changed: 234 additions & 151 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Release History
22

3+
## Unreleased
4+
5+
### Other Changes
6+
7+
- Updated OpenTelemetry experimental dependencies from `^0.217.0` to `^0.218.0` (`@opentelemetry/api-logs`, `@opentelemetry/sdk-logs`, `@opentelemetry/instrumentation`, `@opentelemetry/instrumentation-http`). The `otlp-transformer` in this release replaces its `protobufjs` dependency with a custom serializer, resolving related `npm audit` advisories.
8+
39
## 1.0.0-beta.41 (2026-05-12)
410

511
### Bugs Fixed

sdk/monitor/monitor-opentelemetry-exporter/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,8 @@
6868
"@azure/dev-tool": "workspace:^",
6969
"@azure/eslint-plugin-azure-sdk": "workspace:^",
7070
"@azure/logger": "^1.1.4",
71-
"@opentelemetry/instrumentation": "^0.217.0",
72-
"@opentelemetry/instrumentation-http": "^0.217.0",
71+
"@opentelemetry/instrumentation": "^0.218.0",
72+
"@opentelemetry/instrumentation-http": "^0.218.0",
7373
"@opentelemetry/sdk-trace-node": "^2.7.1",
7474
"@types/node": "catalog:",
7575
"@vitest/browser-playwright": "catalog:testing",
@@ -90,10 +90,10 @@
9090
"@azure/core-client": "^1.9.2",
9191
"@azure/core-rest-pipeline": "^1.19.0",
9292
"@opentelemetry/api": "^1.9.0",
93-
"@opentelemetry/api-logs": "^0.217.0",
93+
"@opentelemetry/api-logs": "^0.218.0",
9494
"@opentelemetry/core": "^2.7.1",
9595
"@opentelemetry/resources": "^2.7.1",
96-
"@opentelemetry/sdk-logs": "^0.217.0",
96+
"@opentelemetry/sdk-logs": "^0.218.0",
9797
"@opentelemetry/sdk-metrics": "^2.7.1",
9898
"@opentelemetry/sdk-trace-base": "^2.7.1",
9999
"@opentelemetry/semantic-conventions": "^1.40.0",

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -338,7 +338,7 @@ describe("FileSystemPersist", () => {
338338

339339
// Push new batches close together so they won't expire
340340
await persister.push(newBatch1);
341-
await sleep(50);
341+
await sleep(250);
342342
await persister.push(newBatch2);
343343

344344
// Set retention so only the old file (1s+ ago) is expired, not the new ones (<200ms ago)

sdk/monitor/monitor-opentelemetry/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Release History
22

3+
## 1.19.0 (Unreleased)
4+
5+
### Other Changes
6+
7+
- Updated OpenTelemetry experimental dependencies from `^0.217.0` to `^0.218.0` (`@opentelemetry/api-logs`, `@opentelemetry/instrumentation`, `@opentelemetry/instrumentation-http`, `@opentelemetry/sdk-logs`, `@opentelemetry/sdk-node`, `@opentelemetry/exporter-metrics-otlp-http`, `@opentelemetry/exporter-trace-otlp-http`). The `otlp-transformer` in this release replaces its `protobufjs` dependency with a custom serializer, resolving related `npm audit` advisories.
8+
- Removed the redundant private `quickpulseClientOptions` field from `QuickpulseSender`; tests now read `credential` and `credentialScopes` directly via bracket notation.
9+
310
## 1.18.0 (2026-05-12)
411

512
### Other Changes

sdk/monitor/monitor-opentelemetry/package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "@azure/monitor-opentelemetry",
33
"author": "Microsoft Corporation",
44
"sdk-type": "client",
5-
"version": "1.18.0",
5+
"version": "1.19.0",
66
"description": "Azure Monitor OpenTelemetry (Node.js)",
77
"main": "./dist/commonjs/index.js",
88
"module": "./dist/esm/index.js",
@@ -60,8 +60,8 @@
6060
"@azure/eslint-plugin-azure-sdk": "workspace:^",
6161
"@azure/functions": "^4.9.0",
6262
"@azure/functions-old": "npm:@azure/functions@3.5.1",
63-
"@opentelemetry/exporter-metrics-otlp-http": "^0.217.0",
64-
"@opentelemetry/exporter-trace-otlp-http": "^0.217.0",
63+
"@opentelemetry/exporter-metrics-otlp-http": "^0.218.0",
64+
"@opentelemetry/exporter-trace-otlp-http": "^0.218.0",
6565
"@types/node": "catalog:",
6666
"@vitest/browser-playwright": "catalog:testing",
6767
"@vitest/coverage-istanbul": "catalog:testing",
@@ -82,21 +82,21 @@
8282
"@azure/opentelemetry-instrumentation-azure-sdk": "^1.0.0",
8383
"@microsoft/applicationinsights-web-snippet": "^1.2.3",
8484
"@opentelemetry/api": "^1.9.0",
85-
"@opentelemetry/api-logs": "^0.217.0",
85+
"@opentelemetry/api-logs": "^0.218.0",
8686
"@opentelemetry/core": "^2.7.1",
87-
"@opentelemetry/instrumentation": "^0.217.0",
87+
"@opentelemetry/instrumentation": "^0.218.0",
8888
"@opentelemetry/instrumentation-bunyan": "^0.62.0",
89-
"@opentelemetry/instrumentation-http": "^0.217.0",
89+
"@opentelemetry/instrumentation-http": "^0.218.0",
9090
"@opentelemetry/instrumentation-mongodb": "^0.70.0",
9191
"@opentelemetry/instrumentation-mysql": "^0.63.0",
9292
"@opentelemetry/instrumentation-pg": "^0.69.0",
9393
"@opentelemetry/instrumentation-redis": "^0.65.0",
9494
"@opentelemetry/instrumentation-winston": "^0.61.0",
9595
"@opentelemetry/resource-detector-azure": "^0.25.0",
9696
"@opentelemetry/resources": "^2.7.1",
97-
"@opentelemetry/sdk-logs": "^0.217.0",
97+
"@opentelemetry/sdk-logs": "^0.218.0",
9898
"@opentelemetry/sdk-metrics": "^2.7.1",
99-
"@opentelemetry/sdk-node": "^0.217.0",
99+
"@opentelemetry/sdk-node": "^0.218.0",
100100
"@opentelemetry/sdk-trace-base": "^2.7.1",
101101
"@opentelemetry/sdk-trace-node": "^2.7.1",
102102
"@opentelemetry/semantic-conventions": "^1.40.0",

sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/export/sender.ts

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,6 @@ export class QuickpulseSender {
4040
private endpointUrl: string;
4141
private credential: TokenCredential;
4242
private credentialScopes: string[];
43-
// @ts-expect-error - assigned in constructor, accessed by tests via bracket notation
44-
private quickpulseClientOptions: {
45-
credential?: TokenCredential;
46-
credentialScopes?: string[];
47-
};
4843

4944
constructor(options: {
5045
endpointUrl: string;
@@ -73,12 +68,6 @@ export class QuickpulseSender {
7368
clientOptions.credentials = { scopes: this.credentialScopes };
7469
}
7570

76-
// Store credential info for testability
77-
this.quickpulseClientOptions = {
78-
credential: options.credential,
79-
credentialScopes: this.credentialScopes,
80-
};
81-
8271
this.quickpulseClient = this.createQuickpulseClient(clientOptions);
8372
}
8473

sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/liveMetrics.test.ts

Lines changed: 8 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -603,10 +603,8 @@ describe("#LiveMetrics", () => {
603603
testAuto["pingSender"]["instrumentationKey"],
604604
"1aa11111-bbbb-1ccc-8ddd-eeeeffff3333",
605605
);
606-
assert.equal(testAuto["pingSender"]["quickpulseClientOptions"]["credential"], testCredential);
607-
assert.deepEqual(testAuto["pingSender"]["quickpulseClientOptions"]["credentialScopes"], [
608-
"testScope",
609-
]);
606+
assert.equal(testAuto["pingSender"]["credential"], testCredential);
607+
assert.deepEqual(testAuto["pingSender"]["credentialScopes"], ["testScope"]);
610608
assert.equal(
611609
testAuto["quickpulseExporter"]["sender"]["endpointUrl"],
612610
"https://westus2.livediagnostics.monitor.azure.com",
@@ -615,14 +613,8 @@ describe("#LiveMetrics", () => {
615613
testAuto["quickpulseExporter"]["sender"]["instrumentationKey"],
616614
"1aa11111-bbbb-1ccc-8ddd-eeeeffff3333",
617615
);
618-
assert.equal(
619-
testAuto["quickpulseExporter"]["sender"]["quickpulseClientOptions"]["credential"],
620-
testCredential,
621-
);
622-
assert.deepEqual(
623-
testAuto["quickpulseExporter"]["sender"]["quickpulseClientOptions"]["credentialScopes"],
624-
["testScope"],
625-
);
616+
assert.equal(testAuto["quickpulseExporter"]["sender"]["credential"], testCredential);
617+
assert.deepEqual(testAuto["quickpulseExporter"]["sender"]["credentialScopes"], ["testScope"]);
626618
});
627619
it("support credential scopes from connection string", () => {
628620
const testConfig = new InternalConfig();
@@ -647,10 +639,8 @@ describe("#LiveMetrics", () => {
647639
testAuto["pingSender"]["instrumentationKey"],
648640
"1aa11111-bbbb-1ccc-8ddd-eeeeffff3333",
649641
);
650-
assert.equal(testAuto["pingSender"]["quickpulseClientOptions"]["credential"], testCredential);
651-
assert.deepEqual(testAuto["pingSender"]["quickpulseClientOptions"]["credentialScopes"], [
652-
"testScope1",
653-
]);
642+
assert.equal(testAuto["pingSender"]["credential"], testCredential);
643+
assert.deepEqual(testAuto["pingSender"]["credentialScopes"], ["testScope1"]);
654644
assert.equal(
655645
testAuto["quickpulseExporter"]["sender"]["endpointUrl"],
656646
"https://westus2.livediagnostics.monitor.azure.com",
@@ -659,14 +649,8 @@ describe("#LiveMetrics", () => {
659649
testAuto["quickpulseExporter"]["sender"]["instrumentationKey"],
660650
"1aa11111-bbbb-1ccc-8ddd-eeeeffff3333",
661651
);
662-
assert.equal(
663-
testAuto["quickpulseExporter"]["sender"]["quickpulseClientOptions"]["credential"],
664-
testCredential,
665-
);
666-
assert.deepEqual(
667-
testAuto["quickpulseExporter"]["sender"]["quickpulseClientOptions"]["credentialScopes"],
668-
["testScope1"],
669-
);
652+
assert.equal(testAuto["quickpulseExporter"]["sender"]["credential"], testCredential);
653+
assert.deepEqual(testAuto["quickpulseExporter"]["sender"]["credentialScopes"], ["testScope1"]);
670654
});
671655
});
672656
/* eslint-enable @typescript-eslint/no-unnecessary-type-assertion */

0 commit comments

Comments
 (0)