opentelemetry-js/packages/opentelemetry-plugin-postgres/opentelemetry-plugin-pg
Daniel Dyla 9a3fd7b560
Rename scope to context (#853)
2020-03-13 15:01:07 -04:00
..
src feat: use context-based tracing (#816) 2020-03-02 13:47:35 -05:00
test Rename scope to context (#853) 2020-03-13 15:01:07 -04:00
.npmignore chore(plugin): postgres-pool plugin skeleton (#473) 2019-11-05 15:18:16 -08:00
LICENSE chore(plugin): postgres-pool plugin skeleton (#473) 2019-11-05 15:18:16 -08:00
README.md chore: rename registry to provider (#749) 2020-02-03 10:36:12 -08:00
package.json Rename scope to context (#853) 2020-03-13 15:01:07 -04:00
tsconfig.json chore(plugin): postgres-pool plugin skeleton (#473) 2019-11-05 15:18:16 -08:00
tslint.json chore(plugin): postgres-pool plugin skeleton (#473) 2019-11-05 15:18:16 -08:00

README.md

OpenTelemetry Postgres Instrumentation for Node.js

Gitter chat dependencies devDependencies Apache License

This module provides automatic instrumentation for pg.

For automatic instrumentation see the @opentelemetry/node package.

Installation

npm install --save @opentelemetry/plugin-pg
npm install --save @opentelemetry/plugin-pg-pool

Usage

To load all of the default supported plugins, use the 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 provider = new NodeTracerProvider(); // All default plugins will be used

If instead you would just want to load a specific plugin (pg in this case), specify it in the NodeTracer configuration.

const { NodeTracerProvider } = require('@opentelemetry/node');

const provider = new NodeTracerProvider({
  plugins: {
    pg: {
      enabled: true,
      // You may use a package name or absolute path to the module
      path: '@opentelemetry/plugin-pg',
    }
  }
});

If you are using any of the pg.Pool APIs, you will also need to include the pg-pool plugin.

const { NodeTracerProvider } = require('@opentelemetry/node');

const provider = new NodeTracerProvider({
  plugins: {
    pg: {
      enabled: true,
      // You may use a package name or absolute path to the module
      path: '@opentelemetry/plugin-pg',
    },
    'pg-pool': {
      enabled: true,
      // You may use a package name or absolute path to the module
      path: '@opentelemetry/plugin-pg-pool',
    },
  }
});

See examples/postgres for a short example.

Supported Versions

License

Apache 2.0 - See LICENSE for more information.