bug: OpenTelemetry Spans Not Displaying in Self-Hosted Instance Timeline
Provide environment information
Self-hosted Instance: │ │
- Trigger.dev Version:
main(Docker image from 2024-12-26) │ │ - Deployment: Docker Compose (official hosting/docker/webapp setup)
- Instance URL: trigger.devneurox.tech │ │
- Docker Images: │ │
- Webapp:
ghcr.io/triggerdotdev/trigger.dev:main(c3af7f05c1da) │ │ - Supervisor:
ghcr.io/triggerdotdev/supervisor:main(d3d1d21ad176)
Describe the bug
Environment:
- Trigger.dev SDK: v4.3.1
- Self-hosted instance: trigger.devneurox.tech
- Cloud instance: cloud.trigger.dev
Problem Description:
OpenTelemetry spans created with logger.trace() are not visible in the timeline UI on our self-hosted Trigger.dev instance, but they work correctly on the official cloud instance (cloud.trigger.dev).
Configuration:
trigger.config.ts:
import { defineConfig } from "@trigger.dev/sdk"; import { HttpInstrumentation } from "@opentelemetry/instrumentation-http"; import { FetchInstrumentation } from "@opentelemetry/instrumentation-fetch"; export default defineConfig({ project: "proj_iahascmunqsxfplmrepp", runtime: "node", logLevel: "log", telemetry: { instrumentations: [ new HttpInstrumentation(), new FetchInstrumentation(), ], }, // ... }); Code Example: const marketData = await logger.trace("bybit-api-calls", async (span) => { span.setAttribute("symbol", input.symbol); span.setAttribute("endpoints", "getTicker, getOpenInterest, getLongShortRatio, getFundingRate"); return await bybitAPI.getMarketData(input.symbol); }); Expected Behavior: Timeline should show individual spans with hierarchy and timing. Actual Behavior: Self-Hosted: Timeline shows only one solid green bar - no spans visible Cloud (cloud.trigger.dev): Timeline correctly shows all spans ✅ Steps to Reproduce: Deploy same code with [logger.trace()](vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/code/electron-browser/workbench/workbench.html) spans to both self-hosted and cloud Trigger task execution Compare timeline view in dashboard Additional Info: Tasks execute successfully on both instances. Console logs show correct timing. Issue appears UI-specific to self-hosted. Question: What self-hosted dashboard version is required for span visualization? ### Reproduction repo N/A - Private repository. Can provide minimal reproduction example if needed. ### To reproduce **Steps to reproduce:** 1. Configure Trigger.dev with OpenTelemetry instrumentations: ```typescript telemetry: { instrumentations: [ new HttpInstrumentation(), new FetchInstrumentation(), ], } 2. Add [logger.trace() spans in your task code: const result = await logger.trace("operation-name", async (span) => { span.setAttribute("key", "value"); return await someOperation(); }); 3 Deploy to self-hosted instance (trigger.devneurox.tech) 4 Deploy same code to cloud instance (cloud.trigger.dev) 5 Execute task on both instances 6 Compare timeline view in dashboard Expected: Timeline shows individual spans with hierarchy and timing Actual on self-hosted: Timeline shows only one solid green bar - no span breakdown visible Actual on cloud: Timeline correctly displays all spans with proper hierarchy ✅ Note: Tasks execute successfully on both - issue is UI-only on self-hosted. ### Additional information <img width="751" height="345" alt="Image" src="https://github.com/user-attachments/assets/6eb7b2a4-6265-4c92-a2bd-d6d72e3eaa02" /> <img width="647" height="418" alt="Image" src="https://github.com/user-attachments/assets/d506c4ab-7812-4d50-ba20-73e56df4a86c" />