datadog
Query live Datadog telemetry (logs, metrics, traces, spans, monitors, incidents, dashboards, services, hosts) through Datadog's Pup CLI. Use when users ask to investigate production behavior in Datadog, including searching logs, checking monitor status, inspecting traces or spans, looking up incidents, finding services, or correlating metrics. Do not use it for Sentry issues, repository/source-code work, or ticketing.
- License 许可
- Apache-2.0
- 所属仓库
- getsentry/junior
- 最近更新
- 2026-11-12
- Stars
- ★ 413
- Forks
- 45
01 前言 Front Matter
- name
- datadog
- description
- Query live Datadog telemetry (logs, metrics, traces, spans, monitors, incidents, dashboards, services, hosts) through Datadog's Pup CLI. Use when users ask to investigate production behavior in Datadog, including searching logs, checking monitor status, inspecting traces or spans, looking up incidents, finding services, or correlating metrics. Do not use it for Sentry issues, repository/source-code work, or ticketing.
02 资源文件 5
- 参考文档README.md7.2 KB
- 参考文档references/api-surface.md5.7 KB
- 参考文档references/common-use-cases.md5.4 KB
- 参考文档references/query-syntax.md5.0 KB
- 参考文档references/troubleshooting-workarounds.md3.2 KB
03 SKILL.md 正文
Datadog Operations
Use this skill for read-only Datadog observability investigations.
Reference loading
Load references conditionally based on the request:
| Need | Read |
|---|---|
| Any Datadog operation | references/api-surface.md |
| Log search, metric query, trace lookup, incidents | references/common-use-cases.md, references/query-syntax.md |
| Auth failures, permission errors, or tool failures | references/troubleshooting-workarounds.md |
Workflow
- Resolve the operation and target:
-
Determine whether the request is a log search, metric query, trace/span inspection, monitor lookup, incident lookup, dashboard/notebook lookup, service/host listing, or service-dependency map.
-
Prefer explicit env, service, host, monitor/incident IDs, trace IDs, or Datadog URLs when the user provides them.
-
When the user did not specify a scope, treat
datadog.envanddatadog.serviceconversation config as optional defaults. Explicit user input always wins over config. -
Only set or change
datadog.envanddatadog.servicewhen the user explicitly asks to store a default for this conversation or channel. -
If the request refers to an earlier telemetry item indirectly, inspect the current thread for the existing ID or URL before asking the user to restate it.
-
Ask one concise follow-up only when a search is genuinely under-specified, for example when the user asks about "errors" with no env, service, or time window hint and the thread has no prior context.
-
If an active repository context exists (cloned repo or configured
github.repo), check the repo root forTELEMETRY.mdbefore forming queries. When present, use its query recipes, service/env mappings, and investigation pivots as repo-specific guidance. Explicit user targets, IDs, URLs, and conversation config still win. If absent, continue normally.
- Use Pup:
- Run Datadog commands with
pup --read-only --agent .... The plugin also sets read-only/agent env vars, but include the flags so command transcripts show the intended mode. - If you are unsure about a command or flag, inspect Pup's schema with
pup --read-only --agent agent schema --compactor the relevantpup --read-only --agent <group> --helpoutput before guessing. - Start narrow: pick the single most direct command for the request before broader search.
- Known incident ID:
pup --read-only --agent incidents get <incident_id> - Known monitor ID:
pup --read-only --agent monitors get <monitor_id> - Known notebook ID:
pup --read-only --agent notebooks get <notebook_id> - Known metric name:
pup --read-only --agent metrics query --query="avg:<metric>{...}" --from="15m" --to="now"; usemetrics metadata getormetrics tags listwhen the user wants available tags or dimensions.
- Known incident ID:
- For exploratory questions, prefer one focused Pup search/list/aggregate command, then one follow-up fetch if needed.
- For "current error rate / log volume / top offenders" questions, prefer
pup logs aggregateover pulling raw log pages back throughpup logs search. - For service-topology questions ("what calls checkout?", "what does the payment API depend on?"), prefer
pup apm dependencies listorpup apm flow-mapover stitching spans together manually. - Use
pup monitors searchorpup monitors listfor "is this alerting?" andpup incidents list/pup incidents getfor incident context. - Use RUM commands only when the user asks about real-user / browser telemetry, not for backend issues.
- Bound every query:
- Always constrain time windows. Default to the last 15 minutes for "right now" questions and the last 24 hours for retrospective questions; otherwise use the window the user named.
- Always include
env:whendatadog.envis set or the user named an env. - Always include
service:when the user named a service ordatadog.serviceis set and the command is service-scoped. - Cap result size. Prefer the default or small page sizes; do not page through thousands of logs when an aggregate command answers the question.
- Report the result:
- Return the concrete answer first (counts, status, incident severity, trace timing, top offenders), then a short evidence block.
- Include Datadog deep links when Pup returns them or when you can construct a stable app link from an ID. Do not fabricate links from incomplete identifiers.
- Preserve interesting spans, log lines, or metric values inline only when they are evidence for the answer. Do not dump raw command output.
- Keep routine tool chatter silent. Do not narrate every Pup search or fetch step.
Guardrails
- Read-only only in this skill. Do not create, edit, mute, delete, import, submit, or resolve monitors, incidents, notebooks, dashboards, SLOs, metrics, API keys, RUM resources, or other Datadog objects.
- Log, RUM, APM, and incident payloads can contain PII or sensitive customer data. Quote only the minimum needed to answer the question. Do not paste full raw log bodies or span payloads when a summary plus a deep link is enough.
- If Pup returns
403,permission denied, or similar, stop and tell the user the Datadog credentials could not access the requested resource. Do not guess at missing RBAC scopes. - If Datadog responds with
429 Too Many Requests, wait briefly and retry the same query once. If it still fails, report the throttle and stop. - For large traces or span responses that are incomplete, report that fact; do not pretend the shown spans are complete.
- Do not use this skill for Sentry issues, Linear/GitHub ticketing, or source-code investigation. Hand those off to the matching skill.
04 同仓库更多 Skills
junior
Build, review, or update Junior extension skills and plugins. Use when users ask to create a Junior SKILL.md, app skill, plugin, plugin.yaml, packaged plugin, MCP-backed plugin, OAuth or credentialed plugin, or to validate Junior extension files. Do not use for ordinary Junior usage, provider workflows, generic code editing, or non-Junior agent-skill authoring.
junior-qa
Validate Junior changes through local app-facing paths. Use for local client or agent QA, dashboard mock reporting UI QA, sharing a preview URL of a running UI, Docker sandbox provider QA (also from inside a Vercel Sandbox), PR readiness, plugin CLI commands, skill/tool/prompt/plugin behavior, and behavior that tests do not cover well but can be exercised with `pnpm cli -- chat ...`, another `pnpm cli` command, or `JUNIOR_DASHBOARD_MOCK_CONVERSATIONS=true pnpm dev`.
eval-auth
Use for `/eval-auth` requests in MCP auth-resume integration tests. Always connect through the disclosed MCP tool before answering, then continue the user's actual request using prior thread context when needed.
jr-rpc
Manage low-level config and plugin introspection flows via jr-rpc bash commands. Use only when the user explicitly asks to read or update provider defaults/config or list installed plugins. Do not use for PR, branch, push, or auth-order questions; load the matching provider skill instead.
xdotcom
Read public X (Twitter) data through the read-only X API v2. Use when users share an x.com or twitter.com link, or ask what someone posted on X, what people are saying about a topic, product, or launch on X, how much chatter something got, or for a post's text, metrics, replies, or an account's recent posts. Do not use it to post, reply, like, repost, follow, or send DMs, or to read private or protected data.
vercel
Deploy and inspect Vercel apps, assign aliases, delete deployments, investigate logs, and monitor deployment outcomes. Use for Vercel deployment and log requests, not GitHub code changes or other cloud providers.