| name | datadog-error-tracking |
| description | Search and manage Datadog Error Tracking issues via API - find grouped errors by service, resolve/ignore issues. Use when investigating production errors or managing error tracking issue states. |
Datadog Error Tracking
CLI Commands
dd-cli search-et-issues 'service:my-service-*' --from now-7d
dd-cli search-et-issues 'service:my-service AND @error.type:NullPointerException' --from now-1d
dd-cli search-et-issues 'service:my-service' --track logs
dd-cli search-et-issues 'service:my-service' --from now-7d --order-by TOTAL_COUNT
dd-cli get-et-issue aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
dd-cli update-et-issue-state aaaaaaaa-... RESOLVED
dd-cli update-et-issue-state aaaaaaaa-... IGNORED
dd-cli update-et-issue-state aaaaaaaa-... OPEN
search-et-issues Options
| Option | Default | Description |
|---|
QUERY | (required) | Search query (Datadog search syntax) |
--from | now-1d | Start time (now-1h, now-7d, or epoch ms) |
--to | now | End time |
--track | trace | Source: trace (APM), logs, rum |
--order-by | - | TOTAL_COUNT, FIRST_SEEN, IMPACTED_SESSIONS, PRIORITY |
Issue States
| State | Meaning |
|---|
OPEN | New / for review |
RESOLVED | Fixed |
IGNORED | Suppressed from monitor alerts |
Tip: Ignoring an issue automatically mutes it from Error Tracking monitor notifications.
Error Tracking Monitors
Error Tracking has its own monitor type (error-tracking alert) separate from metric/log monitors. These use a special query DSL:
# New issue monitor (fires on first occurrence or regression)
error-tracking("env:prod service:my-service-*").source("all").new().rollup("count").by("issue.id").last("1d") > 0
# High impact monitor (fires on high error count)
error-tracking("env:prod service:my-service").source("all").impact().rollup("count").by("issue.id").last("5m") > 1
Wildcard tip: Use service:my-prefix-* to automatically cover all current and future deployables without updating the monitor each time a new service is added.
API Details
- Endpoint:
POST /api/v2/error-tracking/issues/search
- Get issue:
GET /api/v2/error-tracking/issues/{issue_id}
- Update state:
PUT /api/v2/error-tracking/issues/{issue_id}/state
- Permission:
error_tracking_read / error_tracking_write
Common Patterns
dd-cli search-et-issues 'service:my-service state:OPEN' --from now-7d --order-by TOTAL_COUNT
dd-cli get-et-issue <issue-id>
dd-cli search-et-issues 'service:my-service' --from now-30d | \
jq -r '.included[]? | select(.attributes.state == "OPEN") | .id' | \
xargs -I{} dd-cli update-et-issue-state {} RESOLVED