import { ControllerInjector } from './injector/controller-injector'; import { getNodeAutoInstrumentations } from '@opentelemetry/auto-instrumentations-node'; import { AsyncLocalStorageContextManager } from '@opentelemetry/context-async-hooks'; import { NodeSDKConfiguration } from '@opentelemetry/sdk-node'; import { Provider } from '@nestjs/common'; import { Injector } from './injector/injector'; export interface OpenTelemetryModuleConfig extends Partial { traceAutoInjectors?: Provider[]; } export const OpenTelemetryModuleDefaultConfig = { serviceName: 'UNKNOWN', traceAutoInjectors: [ ControllerInjector, ], autoDetectResources: false, resourceDetectors: [], contextManager: new AsyncLocalStorageContextManager(), } as OpenTelemetryModuleConfig;