MCPcopy
hub / github.com/triggerdotdev/trigger.dev / constructor

Method constructor

packages/core/src/v3/otel/tracingSDK.ts:100–197  ·  view source on GitHub ↗
(private readonly config: TracingSDKConfig)

Source from the content-addressed store, hash-verified

98 public readonly getTracer: TracerProvider["getTracer"];
99
100 constructor(private readonly config: TracingSDKConfig) {
101 setLogLevel(config.diagLogLevel ?? "none");
102
103 const envResourceAttributesSerialized = getEnvVar("OTEL_RESOURCE_ATTRIBUTES");
104 const envResourceAttributes = envResourceAttributesSerialized
105 ? JSON.parse(envResourceAttributesSerialized)
106 : {};
107
108 const commonResources = detectResourcesSync({
109 detectors: [this.asyncResourceDetector, processDetectorSync],
110 })
111 .merge(
112 new Resource({
113 [SemanticResourceAttributes.CLOUD_PROVIDER]: "trigger.dev",
114 [SemanticInternalAttributes.TRIGGER]: true,
115 [SemanticInternalAttributes.CLI_VERSION]: version,
116 })
117 )
118 .merge(config.resource ?? new Resource({}))
119 .merge(new Resource(envResourceAttributes));
120
121 const traceProvider = new NodeTracerProvider({
122 forceFlushTimeoutMillis: config.forceFlushTimeoutMillis ?? 500,
123 resource: commonResources,
124 spanLimits: {
125 attributeCountLimit: OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT,
126 attributeValueLengthLimit: OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT,
127 eventCountLimit: OTEL_SPAN_EVENT_COUNT_LIMIT,
128 attributePerEventCountLimit: OTEL_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,
129 linkCountLimit: OTEL_LINK_COUNT_LIMIT,
130 attributePerLinkCountLimit: OTEL_ATTRIBUTE_PER_LINK_COUNT_LIMIT,
131 },
132 });
133
134 const spanExporter = new OTLPTraceExporter({
135 url: `${config.url}/v1/traces`,
136 timeoutMillis: config.forceFlushTimeoutMillis ?? 1000,
137 });
138
139 traceProvider.addSpanProcessor(
140 new TaskContextSpanProcessor(
141 getEnvVar("OTEL_BATCH_PROCESSING_ENABLED") === "1"
142 ? new BatchSpanProcessor(spanExporter, {
143 maxExportBatchSize: parseInt(getEnvVar("OTEL_SPAN_MAX_EXPORT_BATCH_SIZE") ?? "64"),
144 scheduledDelayMillis: parseInt(
145 getEnvVar("OTEL_SPAN_SCHEDULED_DELAY_MILLIS") ?? "200"
146 ),
147 exportTimeoutMillis: parseInt(
148 getEnvVar("OTEL_SPAN_EXPORT_TIMEOUT_MILLIS") ?? "30000"
149 ),
150 maxQueueSize: parseInt(getEnvVar("OTEL_SPAN_MAX_QUEUE_SIZE") ?? "512"),
151 })
152 : new SimpleSpanProcessor(spanExporter)
153 )
154 );
155
156 traceProvider.register();
157

Callers

nothing calls this directly

Calls 4

getEnvVarFunction · 0.90
setLogLevelFunction · 0.85
parseMethod · 0.80
registerMethod · 0.45

Tested by

no test coverage detected