@@ -69,17 +69,24 @@ Add the following code to the `document-load.js` to create a tracer provider, wh
6969``` javascript
7070 // This is necessary for "parcel" to work OOTB. It is not needed for other build tools.
7171import ' regenerator-runtime/runtime'
72- import { LogLevel } from " @opentelemetry/core" ;
7372import { WebTracerProvider } from ' @opentelemetry/web' ;
7473import { DocumentLoad } from ' @opentelemetry/plugin-document-load' ;
74+ import { ZoneContextManager } from ' @opentelemetry/context-zone' ;
75+ import { registerInstrumentations } from ' @opentelemetry/instrumentation' ;
7576
76- // Minimum required setup - supports only synchronous operations
77- const provider = new WebTracerProvider ({
78- plugins: [
79- new DocumentLoad ()
80- ]
77+ const provider = new WebTracerProvider ();
78+
79+ provider .register ({
80+ // Changing default contextManager to use ZoneContextManager - supports asynchronous operations - optional
81+ contextManager: new ZoneContextManager (),
82+ });
83+
84+ // Registering instrumentations / plugins
85+ registerInstrumentations ({
86+ instrumentations: [
87+ new DocumentLoad (),
88+ ],
8189});
82- provider .register ();
8390```
8491
8592Run ` parcel index.html ` and open the development webserver (e.g. at ` http://localhost:1234 ` ) to see if your code works.
@@ -93,19 +100,26 @@ To export traces, modify `document-load.js` so that it matches the following cod
93100``` javascript
94101 // This is necessary for "parcel" to work OOTB. It is not needed for other build tools.
95102import ' regenerator-runtime/runtime'
96- import { LogLevel } from " @opentelemetry/core " ;
103+ import { ConsoleSpanExporter , SimpleSpanProcessor } from ' @opentelemetry/tracing ' ;
97104import { WebTracerProvider } from ' @opentelemetry/web' ;
98105import { DocumentLoad } from ' @opentelemetry/plugin-document-load' ;
99- import { ConsoleSpanExporter , SimpleSpanProcessor } from ' @opentelemetry/tracing' ;
106+ import { ZoneContextManager } from ' @opentelemetry/context-zone' ;
107+ import { registerInstrumentations } from ' @opentelemetry/instrumentation' ;
100108
101- // Minimum required setup - supports only synchronous operations
102- const provider = new WebTracerProvider ({
103- plugins: [
104- new DocumentLoad ()
105- ]
109+ const provider = new WebTracerProvider ();
110+ provider .addSpanProcessor (new SimpleSpanProcessor (new ConsoleSpanExporter ()));
111+
112+ provider .register ({
113+ // Changing default contextManager to use ZoneContextManager - supports asynchronous operations - optional
114+ contextManager: new ZoneContextManager (),
115+ });
116+
117+ // Registering instrumentations / plugins
118+ registerInstrumentations ({
119+ instrumentations: [
120+ new DocumentLoad (),
121+ ],
106122});
107- provider .addSpanProcessor (new SimpleSpanProcessor (new ConsoleSpanExporter ()))
108- provider .register ();
109123```
110124
111125Now, rebuild your application and open the browser again. In the console of the developer toolbar you should see some traces being exporterd:
0 commit comments