You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+63-27
Original file line number
Diff line number
Diff line change
@@ -9,11 +9,21 @@ This is the JavaScript version of [OpenTelemetry](https://opentelemetry.io/), a
9
9
10
10
> This project is currently in Alpha stage. Its APIs can change at any time and it is not intended to be used in production scenarios!
11
11
12
+
## Documentation
13
+
14
+
For detailed documentation of the OpenTelemetry API, see [the documentation][docs].
15
+
12
16
## Quick start
13
17
14
-
To get started tracing your own application, see the [Getting Started Guide](getting-started/README.md).
18
+
### Application Owner
19
+
20
+
To get started tracing your own application, see the [Getting Started Guide](getting-started/README.md). For more information about automatic instrumentation see [@opentelemetry/node][otel-node], which provides auto-instrumentation for Node.js applications. If the automatic instrumentation does not suit your needs, or you would like to create manual traces, see [@opentelemetry/tracing][otel-tracing]
15
21
16
-
For more information, see [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) for an SDK that supports creating traces through manual instrumentation or [@opentelemetry/node](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-node) which provides auto-instrumentation for Node.js applications.
22
+
For more information, see [@opentelemetry/tracing][otel-tracing] for an SDK that supports creating traces through manual instrumentation or [@opentelemetry/node][otel-node] which provides auto-instrumentation for Node.js applications.
23
+
24
+
### Library Author
25
+
26
+
If you are a library author looking to build OpenTelemetry into your library, please see [the documentation][docs]. As a library author, it is important that you only depend on properties and methods published on the public API. If you use any properties or methods from the SDK that are not officially a part of the public API, your library may break if an [Application Owner](#application-owner) uses a different SDK implementation.
|[@opentelemetry/types](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-types)| This package provides TypeScript interfaces and enums for the OpenTelemetry core trace and metrics model. It is intended for use both on the server and in the browser. |
92
-
|[@opentelemetry/core](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-core)| This package provides default and no-op implementations of the OpenTelemetry types for trace and metrics. It's intended for use both on the server and in the browser. |
101
+
|[@opentelemetry/types][otel-types]| This package provides TypeScript interfaces and enums for the OpenTelemetry core trace and metrics model. It is intended for use both on the server and in the browser. |
102
+
|[@opentelemetry/core][otel-core]| This package provides default and no-op implementations of the OpenTelemetry types for trace and metrics. It's intended for use both on the server and in the browser. |
93
103
94
104
### Implementation / SDKs
95
105
96
106
| Package | Description |
97
107
| ----------------------- | -----------------|
98
-
|[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing)| This module provides a full control over instrumentation and span creation. It doesn't load [`async_hooks`](https://nodejs.org/api/async_hooks.html) or any instrumentation plugin by default. It is intended for use both on the server and in the browser. |
99
-
|[@opentelemetry/metrics](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-metrics)| This module provides instruments and meters for reporting of time series data. |
100
-
|[@opentelemetry/node](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-node)| This module provides automatic tracing for Node.js applications. It is intended for use on the server only. |
101
-
|[@opentelemetry/web](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-web)| This module provides automated instrumentation and tracing for Web applications. It is intended for use in the browser only. |
102
-
|[@opentelemetry/base](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-base)| This package provides base code for the SDK packages (tracing and metrics). |
108
+
|[@opentelemetry/tracing][otel-tracing]| This module provides a full control over instrumentation and span creation. It doesn't load [`async_hooks`](https://nodejs.org/api/async_hooks.html) or any instrumentation plugin by default. It is intended for use both on the server and in the browser. |
109
+
|[@opentelemetry/metrics][otel-metrics]| This module provides instruments and meters for reporting of time series data. |
110
+
|[@opentelemetry/node][otel-node]| This module provides automatic tracing for Node.js applications. It is intended for use on the server only. |
111
+
|[@opentelemetry/web][otel-web]| This module provides automated instrumentation and tracing for Web applications. It is intended for use in the browser only. |
112
+
|[@opentelemetry/base][otel-base]| This package provides base code for the SDK packages (tracing and metrics). |
103
113
104
114
### Exporters
105
115
106
116
OpenTelemetry is vendor-agnostic and can upload data to any backend with various exporter implementations. Even though, OpenTelemetry provides support for many backends, vendors/users can also implement their own exporters for proprietary and unofficially supported backends. Currently, OpenTelemetry supports:
OpenTelemetry can collect tracing data automatically using plugins. Vendors/Users can also create and use their own. Currently, OpenTelemetry supports automatic tracing for:
-[@opentelemetry/plugin-dns](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-plugin-dns) - By default, this plugin is not loaded [#612](https://github.com/open-telemetry/opentelemetry-js/issues/612)
-[@opentelemetry/plugin-dns][otel-plugin-dns] - By default, this plugin is not loaded [#612](https://github.com/open-telemetry/opentelemetry-js/issues/612)
To request automatic tracing support for a module not on this list, please [file an issue](https://github.com/open-telemetry/opentelemetry-js/issues). Alternatively, you can [write a plugin yourself](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md).
138
148
139
149
### Shims
140
150
141
151
| Package | Description |
142
152
| ----------------------- | -----------------|
143
-
|[@opentelemetry/shim-opentracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-shim-opentracing)| OpenTracing shim allows existing OpenTracing instrumentation to report to OpenTelemetry |
153
+
|[@opentelemetry/shim-opentracing][otel-shim-opentracing]| OpenTracing shim allows existing OpenTracing instrumentation to report to OpenTelemetry |
144
154
145
155
146
156
## Useful links
@@ -161,3 +171,29 @@ Apache 2.0 - See [LICENSE][license-url] for more information.
0 commit comments