dt-alerting
End-to-end Dynatrace alerting lifecycle — anomaly detector setup and model selection (static threshold, adaptive baseline,…
Service performance monitoring with RED metrics (Rate, Errors, Duration) and runtime-specific telemetry for Java, .NET, Node.js, Python, PHP, and Go. Use when analyzing service health, SLA compliance, or runtime issues. Trigger: "service response time", "error rate",
$ npx -y skills add Dynatrace/dynatrace-for-ai --skill dt-obs-services --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/dt-obs-servicesContext preview
The summary Claude sees to decide when to auto-load this skill.
Service performance monitoring with RED metrics (Rate, Errors, Duration) and runtime-specific telemetry for Java, .NET, Node.js, Python, PHP, and Go. Use when analyzing service health, SLA compliance, or runtime issues. Trigger: "service response time", "error rate",
name: dt-obs-services description: >- Service performance monitoring with RED metrics (Rate, Errors, Duration) and runtime-specific telemetry for Java, .NET, Node.js, Python, PHP, and Go. Use when analyzing service health, SLA compliance, or runtime issues. Trigger: "service response time", "error rate", "throughput", "SLA compliance", "service mesh overhead", "JVM GC", "Java heap", "Node.js event loop", ".NET CLR", "Python threads", "PHP OPcache", "Go goroutines", "service performance", "p95 latency", "request failures", "database response time by name". Do NOT use for explaining existing queries, product documentation questions, infrastructure metrics (use dt-obs-hosts), log analysis (use dt-obs-logs), or distributed tracing workflows (use dt-obs-tracing). license: Apache-2.0
Monitor application service performance, health, and runtime-specific metrics using DQL.
---
Monitor service **Rate, Errors, Duration** using metrics-based timeseries queries.
**Key Metrics:**
**Common Use Cases:**
**Quick Example:**
timeseries {
p95 = percentile(dt.service.request.response_time, 95),
total_requests = sum(dt.service.request.count),
failures = sum(dt.service.request.failure_count)
}, by: {dt.service.name}
| fieldsAdd p95_ms = p95[] / 1000, error_rate_pct = (failures[] * 100.0) / total_requests[]→ **For detailed queries:** See [references/service-metrics.md](references/service-metrics.md)
Span-based queries for complex scenarios requiring flexible filtering and custom aggregations.
**Use Cases:**
**Quick Example:**
fetch spans, from: now() - 1h | filter request.is_root_span == true
| fieldsAdd meets_sla = if(request.is_failed == false AND duration < 3s, 1, else: 0)
| summarize total = count(), sla_compliant = sum(meets_sla), by: {dt.service.name}
| fieldsAdd sla_compliance_pct = (sla_compliant * 100.0) / total→ **For detailed queries:** See [references/service-metrics.md](references/service-metrics.md)
Monitor message-based service communication (queues, topics).
**Key Metrics:**
**Use Cases:**
**Quick Example:**
timeseries {
published = sum(dt.service.messaging.publish.count),
received = sum(dt.service.messaging.receive.count),
processed = sum(dt.service.messaging.process.count),
failed = sum(dt.service.messaging.process.failure_count)
}, by: {dt.service.name}→ **For detailed queries:** See [references/service-metrics.md](references/service-metrics.md)
Monitor service mesh ingress performance and overhead.
**Key Metrics:**
**Use Cases:**
**Quick Example:**
timeseries {
direct_p95 = percentile(dt.service.request.response_time, 95),
mesh_p95 = percentile(dt.service.request.service_mesh.response_time, 95)
}, by: {dt.service.name}
| fieldsAdd mesh_overhead_ms = (mesh_p95[] - direct_p95[]) / 1000→ **For detailed queries:** See [references/service-metrics.md](references/service-metrics.md)
Technology-specific runtime performance and resource usage metrics.
**Java/JVM** - [references/java.md](references/java.md)
**Node.js** - [references/nodejs.md](references/nodejs.md)
**.NET CLR** - [references/dotnet.md](references/dotnet.md)
**Python** - [references/python.md](references/python.md)
**PHP** - [references/php.md](references/php.md)
**Go** - [references/go.md](references/go.md)
---
✅ **Use for:**
Everything AI agents need to work with Dynatrace, starting with skills. Skills are portable knowledge packages following the Agent Skills open format. They give AI coding agents the domain-specific context to query, analyze, and interpret Dynatrace data.
End-to-end Dynatrace alerting lifecycle — anomaly detector setup and model selection (static threshold, adaptive baseline,…
Work with Dynatrace dashboards - create, modify, query, and analyze dashboard JSON including tiles, layouts, DQL queries,…
Work with Dynatrace notebooks - create, modify, query, and analyze notebook JSON including sections, DQL queries, and…
Core DQL syntax, pitfalls, query patterns, and query optimization. Load to write, build, fix, or OPTIMIZE a DQL query — prevents…
Dynatrace server-side JS runtime — function contract, runtime limits, Web APIs, Node.js modules, fetch with credential vault, and…
Migrate Dynatrace classic and Gen2 entity-based DQL to Smartscape equivalents. Covers three scenarios. (1) mass data queries…