import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import { BatchSpanProcessor } from '@opentelemetry/sdk-trace-base';
import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
import trodo from 'trodo-node';
// 1. Your existing OTel setup — unchanged.
const provider = new NodeTracerProvider();
provider.addSpanProcessor(
new BatchSpanProcessor(
new OTLPTraceExporter({ url: 'https://api.honeycomb.io/v1/traces' }),
),
);
provider.register();
// 2. Trodo attaches its own exporter to the same provider.
trodo.init({ siteId: process.env.TRODO_SITE_ID });
// 3. Instrument as normal. Every span goes to both exporters.
await trodo.wrapAgent('support-bot', async () => {
// ...
});