Install & Compatibility
Where this runs
No compatibility data collected yet for this library.
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
AutotelDrizzle
✓ import { AutotelDrizzle } from 'autotel-drizzle'
✗ const AutotelDrizzle = require('autotel-drizzle')
ESM-only package; named export.
createInstrumentation
✓ import { createInstrumentation } from 'autotel-drizzle'
✗ import createInstrumentation from 'autotel-drizzle'
Named export, not default.
default
✓ import autotelDrizzle from 'autotel-drizzle'
✗ const { default } = require('autotel-drizzle')
Default export available as convenience; may be deprecated in future.
Sets up OpenTelemetry with autotel-drizzle to automatically trace Drizzle ORM queries.
import { AutotelDrizzle } from 'autotel-drizzle';
import { drizzle } from 'drizzle-orm/node-postgres';
import { Pool } from 'pg';
import { OTelSpanExporter } from '@opentelemetry/exporter-trace-otlp-http';
import { NodeSDK } from '@opentelemetry/sdk-node';
const sdk = new NodeSDK({
traceExporter: new OTelSpanExporter(),
instrumentations: [new AutotelDrizzle()],
});
sdk.start();
const pool = new Pool({ connectionString: process.env.DATABASE_URL ?? '' });
const db = drizzle(pool);
async function main() {
await db.select().from('users').execute();
await sdk.shutdown();
}
main().catch(console.error);
Errors
Common errors & fixes
Error: Module not found: Can't resolve 'autotel-drizzle'
Package not installed or missing dependency.
fixRun 'npm install autotel-drizzle' as a dependency.
TypeError: autotel_drizzle_1.AutotelDrizzle is not a constructor
Using default import when named import is required.
fixUse 'import { AutotelDrizzle } from 'autotel-drizzle'' instead of 'import AutotelDrizzle from 'autotel-drizzle''. OpenTelemetry: No active span. Make sure SDK is started.
SDK not started before Drizzle queries.
fixCall 'sdk.start()' before using Drizzle ORM.
Audit
Dependencies
drizzle-ormrequiredpeer dependency required for instrumentation to work with Drizzle ORM >=0.45.2