Skip to content

Commit 03cbd00

Browse files
mayurkale22bg451
authored andcommitted
feat: update example with Jaeger exporter (open-telemetry#283)
1 parent 45be4b5 commit 03cbd00

File tree

1 file changed

+15
-3
lines changed

1 file changed

+15
-3
lines changed

examples/node-basic/index.js

+15-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,18 @@
11
'use strict';
22

33
const opentelemetry = require('@opentelemetry/core');
4-
const { BasicTracer } = require('@opentelemetry/basic-tracer');
4+
const { BasicTracer, SimpleSpanProcessor } = require('@opentelemetry/basic-tracer');
5+
const { JaegerExporter } = require('@opentelemetry/exporter-jaeger');
56

7+
const options = {
8+
serviceName: 'my-service'
9+
}
10+
const exporter = new JaegerExporter(options);
11+
12+
const tracer = new BasicTracer();
13+
tracer.addSpanProcessor(new SimpleSpanProcessor(exporter));
614
// Initialize the OpenTelemetry APIs to use the BasicTracer bindings
7-
opentelemetry.initGlobalTracer(new BasicTracer());
15+
opentelemetry.initGlobalTracer(tracer);
816

917
// Create a span. A span must be closed.
1018
const span = opentelemetry.getTracer().startSpan('main');
@@ -14,14 +22,18 @@ for (let i = 0; i < 10; i++) {
1422
// Be sure to end the span.
1523
span.end();
1624

25+
// flush and close the connection.
26+
exporter.shutdown();
27+
1728
function doWork (parent) {
1829
// Start another span. In this example, the main method already started a
1930
// span, so that'll be the parent span, and this will be a child span.
2031
const span = opentelemetry.getTracer().startSpan('doWork', {
2132
parent: parent
2233
});
2334

24-
for (let i = 0; i <= 40000000; i++) {} // short delay
35+
// simulate some random work.
36+
for (let i = 0; i <= Math.floor(Math.random() * 40000000); i++) {}
2537

2638
// Set attributes to the span.
2739
span.setAttribute('key', 'value');

0 commit comments

Comments
 (0)