Skip to content

Commit 46accdc

Browse files
chancancodedavid-lunapichlermarc
authored
fix(examples): Migrate away from deprecated addSpanProcessor in examples (#2655)
Co-authored-by: David Luna <[email protected]> Co-authored-by: Marc Pichler <[email protected]>
1 parent b0f1999 commit 46accdc

File tree

21 files changed

+129
-93
lines changed

21 files changed

+129
-93
lines changed

examples/connect/tracing.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,14 @@ function log() {
2222
}
2323

2424
module.exports = (serviceName) => {
25+
const exporter = new CollectorTraceExporter();
2526
const provider = new NodeTracerProvider({
2627
resource: new Resource({
2728
[SEMRESATTRS_SERVICE_NAME]: serviceName,
2829
}),
30+
spanProcessors: [
31+
new SimpleSpanProcessor(exporter),
32+
],
2933
});
3034
const connectInstrumentation = new ConnectInstrumentation();
3135
registerInstrumentations({
@@ -37,10 +41,6 @@ module.exports = (serviceName) => {
3741
],
3842
});
3943

40-
const exporter = new CollectorTraceExporter();
41-
42-
provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
43-
4444
// Initialize the OpenTelemetry APIs to use the NodeTracerProvider bindings
4545
provider.register({});
4646
return {

examples/dns/tracer.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,6 @@ const { registerInstrumentations } = require('@opentelemetry/instrumentation');
1111
const EXPORTER = process.env.EXPORTER || '';
1212

1313
module.exports = (serviceName) => {
14-
const provider = new NodeTracerProvider();
15-
1614
let exporter;
1715
if (EXPORTER.toLowerCase().startsWith('z')) {
1816
exporter = new ZipkinExporter({
@@ -24,7 +22,11 @@ module.exports = (serviceName) => {
2422
});
2523
}
2624

27-
provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
25+
const provider = new NodeTracerProvider({
26+
spanProcessors: [
27+
new SimpleSpanProcessor(exporter),
28+
],
29+
});
2830

2931
// Initialize the OpenTelemetry APIs to use the NodeTracerProvider bindings
3032
provider.register();

examples/express/src/tracer.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,14 @@ import { ExpressInstrumentation } from '@opentelemetry/instrumentation-express';
1111
import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
1212

1313
export const setupTracing = (serviceName: string) => {
14+
const exporter = new OTLPTraceExporter({});
1415
const provider = new NodeTracerProvider({
1516
resource: new Resource({
1617
[ATTR_SERVICE_NAME]: serviceName,
1718
}),
19+
spanProcessors: [
20+
new SimpleSpanProcessor(exporter),
21+
],
1822
sampler: filterSampler(ignoreHealthCheck, new AlwaysOnSampler()),
1923
});
2024
registerInstrumentations({
@@ -26,10 +30,6 @@ export const setupTracing = (serviceName: string) => {
2630
],
2731
});
2832

29-
const exporter = new OTLPTraceExporter({});
30-
31-
provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
32-
3333
// Initialize the OpenTelemetry APIs to use the NodeTracerProvider bindings
3434
provider.register();
3535

examples/graphql/tracer.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,12 @@ const provider = new NodeTracerProvider({
1414
resource: new Resource({
1515
[SEMRESATTRS_SERVICE_NAME]: 'graphql-service',
1616
}),
17+
spanProcessors: [
18+
new SimpleSpanProcessor(new OTLPTraceExporter()),
19+
new SimpleSpanProcessor(new ConsoleSpanExporter()),
20+
],
1721
});
1822

19-
provider.addSpanProcessor(new SimpleSpanProcessor(new OTLPTraceExporter()));
20-
provider.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter()));
2123
provider.register();
2224

2325
registerInstrumentations({

examples/grpc-census-prop/tracer.js

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,13 @@ const { GrpcInstrumentation } = require('@opentelemetry/instrumentation-grpc');
1313
* requested propagator
1414
*/
1515
module.exports = (serviceName, binaryPropagator) => {
16-
const provider = new NodeTracerProvider();
17-
18-
// It is recommended to use this `BatchSpanProcessor` for better performance
19-
// and optimization, especially in production.
20-
provider.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter()));
16+
const provider = new NodeTracerProvider({
17+
spanProcessors: [
18+
// It is recommended to use `BatchSpanProcessor` for better performance
19+
// and optimization, especially in production.
20+
new SimpleSpanProcessor(new ConsoleSpanExporter()),
21+
],
22+
});
2123

2224
if (binaryPropagator) {
2325
// Initialize the OpenTelemetry APIs to use the NodeTracerProvider bindings

examples/hapi/tracer.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,18 @@ const { registerInstrumentations } = require('@opentelemetry/instrumentation');
1212
const EXPORTER = process.env.EXPORTER || '';
1313

1414
module.exports = (serviceName) => {
15-
const provider = new NodeTracerProvider();
16-
1715
let exporter;
1816
if (EXPORTER === 'jaeger') {
1917
exporter = new JaegerExporter({ serviceName });
2018
} else {
2119
exporter = new ZipkinExporter({ serviceName });
2220
}
23-
provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
21+
22+
const provider = new NodeTracerProvider({
23+
spanProcessors: [
24+
new SimpleSpanProcessor(exporter),
25+
],
26+
});
2427

2528
// Initialize the OpenTelemetry APIs to use the NodeTracerProvider bindings
2629
provider.register();

examples/ioredis/tracer.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,13 @@ const { JaegerExporter } = require('@opentelemetry/exporter-jaeger');
77
const { IORedisInstrumentation } = require('@opentelemetry/instrumentation-ioredis');
88
const { registerInstrumentations } = require('@opentelemetry/instrumentation');
99

10-
const provider = new NodeTracerProvider();
11-
1210
const exporter = new JaegerExporter({ serviceName: 'ioredis-example' });
1311

14-
provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
12+
const provider = new NodeTracerProvider({
13+
spanProcessors: [
14+
new SimpleSpanProcessor(exporter),
15+
],
16+
});
1517

1618
// Initialize the OpenTelemetry APIs to use the BasicTracer bindings
1719
provider.register();

examples/koa/src/tracer.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,21 @@ import { SEMRESATTRS_SERVICE_NAME } from '@opentelemetry/semantic-conventions'
1515
const EXPORTER = process.env.EXPORTER || '';
1616

1717
export const setupTracing = (serviceName: string) => {
18-
const provider = new NodeTracerProvider({
19-
resource: new Resource({
20-
[SEMRESATTRS_SERVICE_NAME]: serviceName
21-
})
22-
});
23-
2418
let exporter;
2519
if (EXPORTER === 'jaeger') {
2620
exporter = new JaegerExporter();
2721
} else {
2822
exporter = new ZipkinExporter();
2923
}
30-
provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
24+
25+
const provider = new NodeTracerProvider({
26+
resource: new Resource({
27+
[SEMRESATTRS_SERVICE_NAME]: serviceName
28+
}),
29+
spanProcessors: [
30+
new SimpleSpanProcessor(exporter),
31+
],
32+
});
3133

3234
registerInstrumentations({
3335
instrumentations: [

examples/memcached/tracer.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,14 @@ const { SEMRESATTRS_SERVICE_NAME } = require('@opentelemetry/semantic-convention
1414
const { MemcachedInstrumentation } = require('@opentelemetry/instrumentation-memcached');
1515

1616
module.exports = (serviceName) => {
17+
const exporter = new ConsoleSpanExporter();
1718
const provider = new NodeTracerProvider({
1819
resource: new Resource({
1920
[SEMRESATTRS_SERVICE_NAME]: serviceName,
2021
}),
22+
spanProcessors: [
23+
new SimpleSpanProcessor(exporter),
24+
],
2125
});
2226
registerInstrumentations({
2327
tracerProvider: provider,
@@ -26,10 +30,6 @@ module.exports = (serviceName) => {
2630
],
2731
});
2832

29-
const exporter = new ConsoleSpanExporter();
30-
31-
provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
32-
3333
// Initialize the OpenTelemetry APIs to use the NodeTracerProvider bindings
3434
provider.register();
3535

examples/meta-node/tracer.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,11 @@ module.exports = () => {
1717
serviceName: 'basic-service',
1818
});
1919

20-
const provider = new NodeTracerProvider();
21-
provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
20+
const provider = new NodeTracerProvider({
21+
spanProcessors: [
22+
new SimpleSpanProcessor(exporter),
23+
],
24+
});
2225
provider.register();
2326

2427
registerInstrumentations({

0 commit comments

Comments
 (0)