@@ -11,25 +11,38 @@ This module provides auto instrumentation for web using XMLHttpRequest .
11
11
## Installation
12
12
13
13
``` bash
14
- npm install --save @opentelemetry/plugin -xml-http-request
14
+ npm install --save @opentelemetry/instrumentation -xml-http-request
15
15
```
16
16
17
17
## Usage
18
18
19
19
``` js
20
20
import { ConsoleSpanExporter , SimpleSpanProcessor } from ' @opentelemetry/tracing' ;
21
21
import { WebTracer } from ' @opentelemetry/web' ;
22
- import { XMLHttpRequestPlugin } from ' @opentelemetry/plugin -xml-http-request' ;
22
+ import { XMLHttpRequestInstrumentation } from ' @opentelemetry/instrumentation -xml-http-request' ;
23
23
import { ZoneContextManager } from ' @opentelemetry/context-zone' ;
24
24
25
+ // this is still possible
25
26
const webTracerWithZone = new WebTracer ({
26
27
contextManager: new ZoneContextManager (),
27
28
plugins: [
28
- new XMLHttpRequestPlugin ({
29
+ new XMLHttpRequestInstrumentation ({
29
30
propagateTraceHeaderCorsUrls: [' http://localhost:8090' ]
30
31
})
31
32
]
32
33
});
34
+ // ///////////////////////////////////////
35
+
36
+ // or plugin can be also initialised separately and then set the tracer provider or meter provider
37
+ const xmlHttpRequestInstrumentation = new XMLHttpRequestInstrumentation ({
38
+ propagateTraceHeaderCorsUrls: [' http://localhost:8090' ]
39
+ });
40
+ const webTracerWithZone = new WebTracer ({
41
+ contextManager: new ZoneContextManager (),
42
+ });
43
+ xmlHttpRequestInstrumentation .setTracerProvider (webTracerWithZone);
44
+ // ///////////////////////////////////////
45
+
33
46
webTracerWithZone .addSpanProcessor (new SimpleSpanProcessor (new ConsoleSpanExporter ()));
34
47
35
48
// and some test
@@ -61,9 +74,9 @@ Apache 2.0 - See [LICENSE][license-url] for more information.
61
74
[ gitter-url ] : https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
62
75
[ license-url ] : https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE
63
76
[ license-image ] : https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
64
- [ dependencies-image ] : https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-plugin -xml-http-request
65
- [ dependencies-url ] : https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-plugin -xml-http-request
66
- [ devDependencies-image ] : https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-plugin -xml-http-request
67
- [ devDependencies-url ] : https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-plugin -xml-http-request&type=dev
68
- [ npm-url ] : https://www.npmjs.com/package/@opentelemetry/plugin -xml-http-request
69
- [ npm-img ] : https://badge.fury.io/js/%40opentelemetry%2Fplugin -xml-http-request.svg
77
+ [ dependencies-image ] : https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-instrumentation -xml-http-request
78
+ [ dependencies-url ] : https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-instrumentation -xml-http-request
79
+ [ devDependencies-image ] : https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-instrumentation -xml-http-request
80
+ [ devDependencies-url ] : https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-instrumentation -xml-http-request&type=dev
81
+ [ npm-url ] : https://www.npmjs.com/package/@opentelemetry/instrumentation -xml-http-request
82
+ [ npm-img ] : https://badge.fury.io/js/%40opentelemetry%2Finstrumentation -xml-http-request.svg
0 commit comments