OpenTelemetry Koa Instrumentation for Node.js
This module provides automatic instrumentation for Koa
.
For automatic instrumentation see the @opentelemetry/node package.
Installation
npm install --save @opentelemetry/koa-instrumentation
Supported Versions
- Koa
^2.0.0
Usage
OpenTelemetry Koa Instrumentation allows the user to automatically collect trace data and export them to their backend of choice, to give observability to distributed systems.
To load a specific instrumentation (Koa in this case), specify it in the Node Tracer's configuration.
const { NodeTracerProvider } = require('@opentelemetry/node');
const provider = new NodeTracerProvider({
plugins: {
koa: {
enabled: true,
// You may use a package name or absolute path to the file.
path: '@opentelemetry/koa-instrumentation',
}
}
});
To load all of the supported instrumentations, use below approach. Each instrumentation is only loaded when the module that it patches is loaded; in other words, there is no computational overhead for listing instrumentations for unused modules.
const { NodeTracerProvider } = require('@opentelemetry/node');
const provider = new NodeTracerProvider();
See examples/koa for a short example using both Koa and @koa/router
Koa Packages
This package provides automatic tracing for middleware added using either the core Koa
package or the @koa/router
package.
Useful links
- For more information on OpenTelemetry, visit: https://opentelemetry.io/
- For more about OpenTelemetry JavaScript: https://github.com/open-telemetry/opentelemetry-js
- For help or feedback on this project, join us on gitter
License
Apache 2.0 - See LICENSE for more information.