Paradime integrates natively with Elementary CLI to enable you to generate report and/or send alerts using the Bolt scheduler out of the box. No additional installation required.
1. Get Datadog API Credentials
To send incidents to Datadog, you’ll need both an API key and an Application key. Get your API Key- Log in to your Datadog account
- Navigate to Organization Settings → API Keys
- Click + New Key to create a new API key
- Give it a descriptive name like “Elementary Integration”
- Copy the API key — you’ll need this later
- In Organization Settings, go to Application Keys
- Click + New Key to create a new application key
- Give it a descriptive name like “Elementary Integration”
- Copy the application key — you’ll need this later
incident_notification_settings_readincident_readincident_writeteams_readuser_access_read
2. Configure the Integration
Pass your credentials directly when runningedr monitor. You should use environment variables in the Bolt command, as described here for secrets.
3. Test your Integration
Run the following command to create a test incident in your Datadog account and verify the integration is configured correctly:4. Execute the CLI
Once configured, run the following command after your dbt™ runs and tests:5. Per-Alert Customization via dbt™ YAML
You can override Datadog incident settings on a per-model or per-test basis directly in your dbt™ project YAML files. These settings take precedence over the global CLI defaults.
alerts_config block under config: meta: in your dbt™ YAML files. They can be applied at:
- Model level — affects all alerts from that model’s tests
- Test level — affects only that specific test (overrides model-level if both are set)
How to find the required UUIDs
User UUID (
datadog_commander_uuid)
- In Datadog, navigate to Organization Settings → Users
- Click on the user you want to assign as commander
- The UUID is visible in the URL:
app.datadoghq.com/organization-settings/users/<uuid>
datadog_incident_type_uuid)
- In Datadog, navigate to Incidents → Settings → Incident Types
- Click on the incident type you want to use
- The UUID is visible in the URL or in the incident type details panel
- Test-level
datadog_severityinconfig.meta.alerts_config - Model-level
datadog_severityinconfig.meta.alerts_config - Tag-based severity rules (if configured via CLI)
- Status-based mapping (
error→ SEV-1,fail→ SEV-2,warn→ SEV-3) - CLI default
--datadog-default-severity(fallback, default:SEV-3)
Alert on Source Freshness Failures
Not supported in dbt Cloud.
edr run-operation upload-source-freshness immediately after each execution of dbt source freshness. This operation uploads the results to a table, and the subsequent edr monitor execution will send the alert as a Datadog incident.
Keep the following in mind:
dbt source freshnessandupload-source-freshnessmust run from the same machine.upload-source-freshnessrequires the--project-dirargument to be passed.
Continuous Alerting
To monitor continuously, use your orchestrator to runedr monitor on a regular schedule. We recommend running it right after your dbt™ job ends to catch the latest data updates as quickly as possible.
Deduplication
Elementary automatically deduplicates Datadog incidents. Before creating a new incident, it checks whether an active incident already exists for the same alert. If one is found, no duplicate is created. This means:- Re-running
edr monitorwithout resolving the underlying issue will not create duplicate incidents. - Once an incident is resolved in Datadog, the next failing run will create a fresh incident.