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

0.39.0 • Public • Published

OpenTelemetry instrumentation for cassandra-driver

NPM Published Version Apache License

This module provides automatic instrumentation for the injection of trace context to cassandra-driver, 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-cassandra-driver


const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
const { CassandraDriverInstrumentation } = require('@opentelemetry/instrumentation-cassandra-driver');
const { registerInstrumentations } = require('@opentelemetry/instrumentation');

const provider = new NodeTracerProvider();

  instrumentations: [
    new CassandraDriverInstrumentation(),
    // other instrumentations

const cassandra = require('cassandra-driver');
const client = new cassandra.Client({ ... });
await client.execute('select * from foo');

Instrumentation options

Option Type Default Description
enhancedDatabaseReporting boolean false Whether to include database queries with spans. These can contain sensitive information when using unescaped parameters - i.e. insert into persons (name) values ('Bob') instead of insert into persons (name) values (?).
responseHook CassandraDriverResponseCustomAttributeFunction undefined Hook for adding custom attributes before response is handled
maxQueryLength number 65536 If enhancedDatabaseReporting is enabled, limits the attached query strings to this length.

Supported versions

>=4.4 <5.0

Semantic Conventions

This package uses @opentelemetry/semantic-conventions version 1.22+, which implements Semantic Convention Version 1.7.0

Attributes collected:

Attribute Short Description
db.name This attribute is used to report the name of the database being accessed.
db.statement The database statement being executed.
db.system An identifier for the database management system (DBMS) product being used.
db.user Username for accessing the database.
net.peer.name Remote hostname or similar.
net.peer.port Remote port number.

Useful links


Apache 2.0 - See LICENSE for more information.

Package Sidebar


npm i @opentelemetry/instrumentation-cassandra-driver

Weekly Downloads






Unpacked Size

59.7 kB

Total Files


Last publish


  • pichlermarc
  • bogdandrutu
  • dyladan