dd-monitors

作成者: datadog-labs

モニター管理 - 一覧表示、検索、ファイルベースの作成、およびアラートのベストプラクティス。

npx skills add https://github.com/datadog-labs/agent-skills --skill dd-monitors

Datadog Monitors

Create, manage, and maintain monitors for alerting.

Prerequisites

This requires pup in your path. See Setup Pup.

Command Execution Order (Token-Efficient)

For scoped commands, use this order:

  1. Check context first (prior outputs, conversation, saved values).
  2. If a required value is missing, run a discovery command first.
  3. If still ambiguous, ask the user to confirm.
  4. Then run the target command.
  5. Avoid speculative commands likely to fail.

Quick Start

pup auth login

Common Operations

List Monitors

pup monitors list
pup monitors list --tags "team:platform"

Get Monitor

pup monitors get <id>

Create Monitor

pup monitors create --file monitor.json

Silence Alerts (Downtime)

# No pup monitors mute/unmute commands.
# Use downtime payloads to silence monitor notifications.
pup downtime create --file downtime.json
pup downtime cancel <downtime_id>

Monitor Creation Best Practices

1. Avoid Alert Fatigue

RuleWhy
No flapping alertsUse last_Xm not last_1m
Meaningful thresholdsBased on SLOs, not guesses
Actionable alertsIf no action needed, don't alert
Include runbook@runbook-url in message
# WRONG - will flap constantly
query = "avg(last_1m):avg:system.cpu.user{*} > 50"  # ❌ Too sensitive

# CORRECT - stable alerting
query = "avg(last_5m):avg:system.cpu.user{env:prod} by {host} > 80"  # ✅ Reasonable window

2. Use Proper Scoping

# WRONG - alerts on everything
query = "avg(last_5m):avg:system.cpu.user{*} > 80"  # ❌ No scope

# CORRECT - scoped to what matters
query = "avg(last_5m):avg:system.cpu.user{env:prod,service:api} by {host} > 80"  # ✅

3. Set Recovery Thresholds

monitor = {
    "query": "avg(last_5m):avg:system.cpu.user{env:prod} > 80",
    "options": {
        "thresholds": {
            "critical": 80,
            "critical_recovery": 70,  # ✅ Prevents flapping
            "warning": 60,
            "warning_recovery": 50
        }
    }
}

4. Include Context in Messages

message = """
## High CPU Alert

Host: {{host.name}}
Current Value: {{value}}
Threshold: {{threshold}}

### Runbook
1. Check top processes: `ssh {{host.name}} 'top -bn1 | head -20'`
2. Check recent deploys
3. Scale if needed

@slack-ops @pagerduty-oncall
"""

NEVER Delete Monitors Directly

Use safe deletion workflow (same as dashboards):

def safe_mark_monitor_for_deletion(monitor_id: str, client) -> bool:
    """Mark monitor instead of deleting."""
    monitor = client.get_monitor(monitor_id)
    name = monitor.get("name", "")
    
    if "[MARKED FOR DELETION]" in name:
        print(f"Already marked: {name}")
        return False
    
    new_name = f"[MARKED FOR DELETION] {name}"
    client.update_monitor(monitor_id, {"name": new_name})
    print(f"✓ Marked: {new_name}")
    return True

Monitor Types

TypeUse Case
metric alertCPU, memory, custom metrics
query alertComplex metric queries
service checkAgent check status
event alertEvent stream patterns
log alertLog pattern matching
compositeCombine multiple monitors
apmAPM metrics

Audit Monitors

# Find monitors without owners
pup monitors list | jq '.[] | select(.tags | contains(["team:"]) | not) | {id, name}'

# Find noisy monitors (high alert count)
pup monitors list | jq 'sort_by(.overall_state_modified) | .[:10] | .[] | {id, name, status: .overall_state}'

Downtime vs Muting

UseWhen
DowntimeAny planned silence window
Monitor editQuery/threshold behavior changes
# Downtime (preferred)
pup downtime create --file downtime.json

Failure Handling

ProblemFix
Alert not firingCheck query returns data, thresholds
Too many alertsIncrease window, add recovery threshold
No data alertsCheck agent connectivity, metric exists
Auth errorpup auth refresh

References

datadog-labsのその他のスキル

dd-audit-compliance-report
datadog-labs
Datadog Audit TrailからSOC 2およびPCI DSSに対応した監査対応のコンプライアンス証跡を生成します。フレームワークのコントロールを特定のクエリパターンにマッピングし、…
experiment-analyzer
datadog-labs
LLM実験結果を分析します。単一または比較実験、探索的またはQ&Aモードに対応します。ユーザーが「実験を分析」「比較…」と言った場合に使用します。
dd-logs
datadog-labs
ログ管理 - 検索、パイプライン、アーカイブ、およびコスト管理。
dd-monitors
datadog-labs
モニター管理 - 作成、更新、ミュート、およびアラートのベストプラクティス。
dd-audit-cost-spike-investigation
datadog-labs
Datadogの製品使用量やコストの急増を調査するために、使用量計測データ(いつ、何が急増したか)と監査証跡の設定変更(誰が何を変更したか)を関連付けます。
dd-audit-key-compromise
datadog-labs
潜在的に侵害されたDatadog APIキーを調査 — アクションのタイムライン、地理/IPの内訳、呼び出されたエンドポイント、異常フラグ、および修復手順。
eval-trace-rca
datadog-labs
本番LLMトレースの根本原因分析を、評価判定結果をシグナルとして実施します。ユーザーのアプリケーションが失敗している理由を診断します。ユーザーが「eval…」と言った場合に使用します。
dd-account-setup
datadog-labs
Datadogのセットアップやインストルメンテーションを行う前に、ユーザーが正しいリージョンで認証済みのDatadogアカウントと有効なDD_API_KEYを持っていることを確認します。既存の...を検出します。