@zerosuxx/opentelemetry-nestjs
Version:
OpenTelemetry module for Nestjs with auto instrumentation and resource detection. Initially forked from https://github.com/overbit/opentelemetry-nestjs.git
29 lines (26 loc) • 817 B
text/typescript
import { NodeSDK } from '@opentelemetry/sdk-node';
import { TracingConfig } from './TracingConfig.interface';
import {
NodeAutoInstrumentationsDefaultConfig,
TracingDefaultConfig,
} from './TracingConfigDefault';
import { getNodeAutoInstrumentations } from '@opentelemetry/auto-instrumentations-node';
export class Tracing {
static init(configuration: TracingConfig): void {
const otelSDK = new NodeSDK({
...TracingDefaultConfig,
instrumentations: getNodeAutoInstrumentations(
NodeAutoInstrumentationsDefaultConfig,
),
...configuration,
});
otelSDK.start();
}
static initWithoutAutoInstrumentations(configuration: TracingConfig): void {
const otelSDK = new NodeSDK({
...TracingDefaultConfig,
...configuration,
});
otelSDK.start();
}
}