Analyze integrated platform and application telemetry on Heroku Fir for comprehensive visibility and troubleshooting.
Heroku Fir is a cloud-native runtime platform that automatically scales your applications. Fir natively integrates OpenTelemetry and emits several platform-level signals, including router traces, dyno health and resource metrics, and runtime event logs.
This integration uses Heroku's managed Telemetry Drains feature to send this OTel data directly to Dash0, providing immediate visibility into your application's performance and health without requiring a separate OpenTelemetry Collector.
Heroku's modern Fir runtime natively integrates OpenTelemetry, allowing you to send platform and application telemetry to Dash0 using a managed feature called Telemetry Drains.
1. Prerequisites: Obtain Your Dash0 Endpoint and Token
Before configuring the drain, you need two pieces of information from your Dash0 account:
For enhanced security, create a new API token that is scoped with ingestion-only permissions. This ensures the token can only be used to send data to Dash0, not to read data or modify configurations.
2. Configure the Telemetry Drain
With your endpoint and token, you can configure the Telemetry Drain using a single Heroku CLI command. This command instructs Heroku to create a new drain for your application that sends all signals (traces, metrics, and logs) to your Dash0 endpoint.
Replace the placeholder value <YOUR_APP_NAME>
with your specific application name.
3. Verify the Integration
Once the drain is configured, you can verify its status at any time using the Heroku CLI:
This command will list all active telemetry drains for the application. After a few moments, navigate to your Dash0 account. You should see incoming data in the metrics, logs, and traces explorers, confirming that the integration is live.
4. Next Steps: Application Instrumentation
Configuring the Telemetry Drain completes the platform-level setup. You will immediately start receiving platform metrics, router traces, and any application logs written to standard output.
However, to generate rich, application-aware telemetry, such as custom traces for business transactions or metrics counting specific user actions, you must still instrument your application code using a language-specific OpenTelemetry SDK. The drain handles the collection and export of this data, but your application is responsible for its generation.
To get started with instrumenting your application, please refer to the detailed, language-specific guides in the Dash0 Integration Hub: