OpenTelemetry mongodb automatic instrumentation package.
$ cnpm install @opentelemetry/plugin-mongodb
This module provides automatic instrumentation for mongodb.
For automatic instrumentation see the @opentelemetry/node package.
npm install --save @opentelemetry/plugin-mongodb
'>=2.0.0 <4OpenTelemetry Mongodb 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 plugin (mongodb in this case), specify it in the registerInstrumentations's configuration.
const { NodeTracerProvider } = require('@opentelemetry/node');
const { registerInstrumentations } = require('@opentelemetry/instrumentation');
const provider = new NodeTracerProvider();
provider.register();
registerInstrumentations({
instrumentations: [
{
plugins: {
mongodb: {
enabled: true,
// You may use a package name or absolute path to the file.
path: '@opentelemetry/plugin-mongodb',
}
},
},
],
tracerProvider: provider,
});
To load all of the supported plugins, use below approach. Each plugin is only loaded when the module that it patches is loaded; in other words, there is no computational overhead for listing plugins for unused modules.
const { NodeTracerProvider } = require('@opentelemetry/node');
const { registerInstrumentations } = require('@opentelemetry/instrumentation');
const provider = new NodeTracerProvider();
provider.register();
registerInstrumentations({
tracerProvider: provider,
});
See examples/mongodb for a short example.
Mongodb plugin has few options available to choose from. You can set the following:
| Options | Type | Description |
|---|---|---|
enhancedDatabaseReporting |
string |
If true, additional information about query parameters and results will be attached (as attributes) to spans representing database operations |
Apache 2.0 - See LICENSE for more information.
Copyright 2013 - present © cnpmjs.org | Home |