Skip to content

Commit b0f1999

Browse files
refactor: migrate away from deprecated addMetricReader for SDK 2.0 (#2654)
Co-authored-by: Marc Pichler <[email protected]>
1 parent d9e757f commit b0f1999

File tree

10 files changed

+37
-26
lines changed

10 files changed

+37
-26
lines changed

examples/mysql/src/tracer.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,15 @@ const EXPORTER = process.env.EXPORTER || '';
2020
export const setupTracing = (serviceName: string) => {
2121

2222
//metrics:
23-
const meterProvider = new MeterProvider()
2423
const metricExporter = new OTLPMetricExporter();
2524
const metricReader = new PeriodicExportingMetricReader({
2625
exporter: metricExporter,
2726
exportIntervalMillis: 100,
2827
exportTimeoutMillis: 100,
2928
});
30-
meterProvider.addMetricReader(metricReader);
29+
const meterProvider = new MeterProvider({
30+
readers: [metricReader],
31+
});
3132

3233
//traces:
3334
const tracerProvider = new NodeTracerProvider({

plugins/node/instrumentation-runtime-node/test/event_loop_delay.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,9 @@ describe(`${ConventionalNamePrefix.NodeJs}.eventloop`, function () {
2727

2828
beforeEach(() => {
2929
metricReader = new TestMetricReader();
30-
meterProvider = new MeterProvider();
31-
meterProvider.addMetricReader(metricReader);
30+
meterProvider = new MeterProvider({
31+
readers: [metricReader],
32+
});
3233
});
3334

3435
for (const metricName in metricNames) {

plugins/node/instrumentation-runtime-node/test/event_loop_time.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,9 @@ describe(`${ConventionalNamePrefix.NodeJs}.${ATTR_NODEJS_EVENT_LOOP_TIME}`, func
2929

3030
beforeEach(() => {
3131
metricReader = new TestMetricReader();
32-
meterProvider = new MeterProvider();
33-
meterProvider.addMetricReader(metricReader);
32+
meterProvider = new MeterProvider({
33+
readers: [metricReader],
34+
});
3435
});
3536

3637
it('should not export before being enabled', async function () {

plugins/node/instrumentation-runtime-node/test/event_loop_utilization.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,9 @@ describe(`${ConventionalNamePrefix.NodeJs}.${ATTR_NODEJS_EVENT_LOOP_UTILIZATION}
2929

3030
beforeEach(() => {
3131
metricReader = new TestMetricReader();
32-
meterProvider = new MeterProvider();
33-
meterProvider.addMetricReader(metricReader);
32+
meterProvider = new MeterProvider({
33+
readers: [metricReader],
34+
});
3435
});
3536

3637
it('should not export before being enabled', async function () {

plugins/node/instrumentation-runtime-node/test/heap_space_and_used.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,9 @@ describe('nodejs.heap_space', function () {
3131

3232
beforeEach(() => {
3333
metricReader = new TestMetricReader();
34-
meterProvider = new MeterProvider();
35-
meterProvider.addMetricReader(metricReader);
34+
meterProvider = new MeterProvider({
35+
readers: [metricReader],
36+
});
3637
});
3738

3839
for (const metricName in metricNames) {

plugins/node/instrumentation-runtime-node/test/instrumentation.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,9 @@ describe('instrumentation', function () {
2727

2828
beforeEach(() => {
2929
metricReader = new TestMetricReader();
30-
meterProvider = new MeterProvider();
31-
meterProvider.addMetricReader(metricReader);
30+
meterProvider = new MeterProvider({
31+
readers: [metricReader],
32+
});
3233
});
3334

3435
it('should not export before being enabled', async function () {

plugins/node/instrumentation-undici/test/metrics.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,13 @@ describe('UndiciInstrumentation metrics tests', function () {
3737
const hostname = 'localhost';
3838
const mockServer = new MockServer();
3939
const provider = new NodeTracerProvider();
40-
const meterProvider = new MeterProvider();
4140
const metricsMemoryExporter = new InMemoryMetricExporter(
4241
AggregationTemporality.DELTA
4342
);
4443
const metricReader = new MockMetricsReader(metricsMemoryExporter);
45-
meterProvider.addMetricReader(metricReader);
44+
const meterProvider = new MeterProvider({
45+
readers: [metricReader],
46+
});
4647

4748
before(function (done) {
4849
// Do not test if the `fetch` global API is not available

plugins/node/opentelemetry-instrumentation-aws-lambda/test/integrations/lambda-handler.force-flush.test.ts

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -152,10 +152,11 @@ describe('force flush', () => {
152152
});
153153

154154
it('should force flush MeterProvider', async () => {
155-
const provider = new MeterProvider();
156-
provider.addMetricReader(
157-
new PeriodicExportingMetricReader({ exporter: metricMemoryExporter })
158-
);
155+
const provider = new MeterProvider({
156+
readers: [
157+
new PeriodicExportingMetricReader({ exporter: metricMemoryExporter }),
158+
],
159+
});
159160
let forceFlushed = false;
160161
const forceFlush = () =>
161162
new Promise<void>(resolve => {
@@ -197,10 +198,11 @@ describe('force flush', () => {
197198
});
198199
nodeTracerProvider.forceFlush = tracerForceFlush;
199200

200-
const meterProvider = new MeterProvider();
201-
meterProvider.addMetricReader(
202-
new PeriodicExportingMetricReader({ exporter: metricMemoryExporter })
203-
);
201+
const meterProvider = new MeterProvider({
202+
readers: [
203+
new PeriodicExportingMetricReader({ exporter: metricMemoryExporter }),
204+
],
205+
});
204206
let meterForceFlushed = false;
205207
const meterForceFlush = () =>
206208
new Promise<void>(resolve => {

plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v4-v5-v6.metrics.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ import {
2828
ResourceMetrics,
2929
} from '@opentelemetry/sdk-metrics';
3030

31-
const otelTestingMeterProvider = new MeterProvider();
3231
const inMemoryMetricsExporter = new InMemoryMetricExporter(
3332
AggregationTemporality.CUMULATIVE
3433
);
@@ -37,6 +36,9 @@ const metricReader = new PeriodicExportingMetricReader({
3736
exportIntervalMillis: 100,
3837
exportTimeoutMillis: 100,
3938
});
39+
const otelTestingMeterProvider = new MeterProvider({
40+
readers: [metricReader],
41+
});
4042

4143
import { registerInstrumentationTesting } from '@opentelemetry/contrib-test-utils';
4244
const instrumentation = registerInstrumentationTesting(
@@ -85,7 +87,6 @@ describe('MongoDBInstrumentation-Metrics', () => {
8587
let collection: Collection;
8688

8789
before(done => {
88-
otelTestingMeterProvider.addMetricReader(metricReader);
8990
instrumentation?.setMeterProvider(otelTestingMeterProvider);
9091

9192
shouldTest = true;

plugins/node/opentelemetry-instrumentation-mysql/test/index.metrics.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@ describe('[email protected]', () => {
6767
const shouldTest = testMysql || testMysqlLocally; // Skips these tests if false (default)
6868

6969
function initMeterProvider() {
70-
otelTestingMeterProvider = new MeterProvider();
7170
inMemoryMetricsExporter = new InMemoryMetricExporter(
7271
AggregationTemporality.CUMULATIVE
7372
);
@@ -76,8 +75,10 @@ describe('[email protected]', () => {
7675
exportIntervalMillis: 100,
7776
exportTimeoutMillis: 100,
7877
});
78+
otelTestingMeterProvider = new MeterProvider({
79+
readers: [metricReader],
80+
});
7981

80-
otelTestingMeterProvider.addMetricReader(metricReader);
8182
instrumentation.setMeterProvider(otelTestingMeterProvider);
8283
}
8384

0 commit comments

Comments
 (0)