TypeScript icon, indicating that this package has built-in type declarations

0.43.0 • Public • Published

OpenTelemetry Postgres Instrumentation for Node.js

NPM Published Version Apache License

This module provides automatic instrumentation for the pgmodule, which may be loaded using the @opentelemetry/sdk-trace-node package and is included in the @opentelemetry/auto-instrumentations-node bundle.

If total installation size is not constrained, it is recommended to use the @opentelemetry/auto-instrumentations-node bundle with @opentelemetry/sdk-node for the most seamless instrumentation experience.

Compatible with OpenTelemetry JS API and SDK 1.0+.


npm install --save @opentelemetry/instrumentation-pg

Supported Versions

  • pg versions >=8.0.0 <9
  • pg-pool versions >=2.0.0 <4


const { PgInstrumentation } = require('@opentelemetry/instrumentation-pg');
const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
const { registerInstrumentations } = require('@opentelemetry/instrumentation');

const provider = new NodeTracerProvider();

  instrumentations: [
    new PgInstrumentation(),

PgInstrumentation contains both pg and pg.Pool so it will be instrumented automatically.

PostgreSQL Instrumentation Options

PostgreSQL instrumentation has few options available to choose from. You can set the following:

Options Type Description
enhancedDatabaseReporting boolean If true, additional information about query parameters and results will be attached (as attributes) to spans representing database operations
requestHook PgInstrumentationExecutionRequestHook (function) Function for adding custom span attributes using information about the query being issued and the db to which it's directed
responseHook PgInstrumentationExecutionResponseHook (function) Function for adding custom span attributes from db response
requireParentSpan boolean If true, requires a parent span to create new spans (default false)
addSqlCommenterCommentToQueries boolean If true, adds sqlcommenter specification compliant comment to queries with tracing context (default false). NOTE: A comment will not be added to queries that already contain -- or /* ... */ in them, even if these are not actually part of comments

Useful links


Apache 2.0 - See LICENSE for more information.

Package Sidebar


npm i @opentelemetry/instrumentation-pg

Weekly Downloads






Unpacked Size

104 kB

Total Files


Last publish


  • pichlermarc
  • bogdandrutu
  • dyladan