datadog
Datadog
Query metrics, monitors, and logs via the Datadog API.
Environment Variables
DD_API_KEY- Datadog API keyDD_APP_KEY- Datadog Application keyDD_SITE- Datadog site (e.g.datadoghq.com,datadoghq.eu, default:datadoghq.com)
List monitors
curl -s -H "DD-API-KEY: $DD_API_KEY" -H "DD-APPLICATION-KEY: $DD_APP_KEY" \
"https://api.${DD_SITE:-datadoghq.com}/api/v1/monitor" | jq '.[] | {id, name, type, overall_state}'
Get monitor details
curl -s -H "DD-API-KEY: $DD_API_KEY" -H "DD-APPLICATION-KEY: $DD_APP_KEY" \
"https://api.${DD_SITE:-datadoghq.com}/api/v1/monitor/12345" | jq '{id, name, type, query, overall_state, message}'
Mute monitor
curl -s -X POST -H "DD-API-KEY: $DD_API_KEY" -H "DD-APPLICATION-KEY: $DD_APP_KEY" \
-H "Content-Type: application/json" \
"https://api.${DD_SITE:-datadoghq.com}/api/v1/monitor/12345/mute" \
-d '{"end": '$(date -d '+1 hour' +%s)'}' | jq '{id, name}'
Query metrics
curl -s -G -H "DD-API-KEY: $DD_API_KEY" -H "DD-APPLICATION-KEY: $DD_APP_KEY" \
"https://api.${DD_SITE:-datadoghq.com}/api/v1/query" \
--data-urlencode "query=avg:system.cpu.user{host:my-server}" \
--data-urlencode "from=$(date -d '1 hour ago' +%s)" \
--data-urlencode "to=$(date +%s)" | jq '.series[0] | {metric, pointlist: .pointlist[-5:]}'
Search logs
curl -s -X POST -H "DD-API-KEY: $DD_API_KEY" -H "DD-APPLICATION-KEY: $DD_APP_KEY" \
-H "Content-Type: application/json" \
"https://api.${DD_SITE:-datadoghq.com}/api/v2/logs/events/search" \
-d '{
"filter": {"query": "service:my-app status:error", "from": "now-1h", "to": "now"},
"page": {"limit": 10}
}' | jq '.data[] | {timestamp: .attributes.timestamp, message: .attributes.message}'
List events
curl -s -G -H "DD-API-KEY: $DD_API_KEY" -H "DD-APPLICATION-KEY: $DD_APP_KEY" \
"https://api.${DD_SITE:-datadoghq.com}/api/v1/events" \
--data-urlencode "start=$(date -d '24 hours ago' +%s)" \
--data-urlencode "end=$(date +%s)" | jq '.events[:5] | .[] | {title, date_happened, priority}'
Post event
curl -s -X POST -H "DD-API-KEY: $DD_API_KEY" \
-H "Content-Type: application/json" \
"https://api.${DD_SITE:-datadoghq.com}/api/v1/events" \
-d '{"title": "Deployment Complete", "text": "v1.2.3 deployed to production", "priority": "normal", "tags": ["env:prod"]}' | jq '{id: .event.id}'
List dashboards
curl -s -H "DD-API-KEY: $DD_API_KEY" -H "DD-APPLICATION-KEY: $DD_APP_KEY" \
"https://api.${DD_SITE:-datadoghq.com}/api/v1/dashboard" | jq '.dashboards[:10] | .[] | {id, title}'
Notes
- Use
DD_SITEfor EU or other regional endpoints. - Metric queries use Datadog's query language (e.g.
avg:metric{tags}). - Confirm before muting monitors or posting events.
More from thinkfleetai/thinkfleet-engine
local-whisper
Local speech-to-text using OpenAI Whisper. Runs fully offline after model download. High quality transcription with multiple model sizes.
149flyio-cli-public
Use the Fly.io flyctl CLI for deploying and operating apps on Fly.io: deploys (local or remote builder), viewing status/logs, SSH/console, secrets/config, scaling, machines, volumes, and Fly Postgres (create/attach/manage databases). Use when asked to deploy to Fly.io, debug fly deploy/build/runtime failures, set up GitHub Actions deploys/previews, or safely manage Fly apps and Postgres.
24kagi-search
Web search using Kagi Search API. Use when you need to search the web for current information, facts, or references. Requires KAGI_API_KEY in the environment.
22feishu-bridge
Connect a Feishu (Lark) bot to ThinkFleet via WebSocket long-connection. No public server, domain, or ngrok required. Use when setting up Feishu/Lark as a messaging channel, troubleshooting the Feishu bridge, or managing the bridge service (start/stop/logs). Covers bot creation on Feishu Open Platform, credential setup, bridge startup, macOS launchd auto-restart, and group chat behavior tuning.
13bambu-local
Control Bambu Lab 3D printers locally via MQTT (no cloud). Supports A1, A1 Mini, P1P, P1S, X1C.
10voice-transcribe
Transcribe audio files using OpenAI's gpt-4o-mini-transcribe model with vocabulary hints and text replacements. Requires uv (https://docs.astral.sh/uv/).
10