Metrics & Timeseries
Metrics are numbers over time โ CPU usage, response times, request counts. In Dynatrace, the timeseries command is how you query them.
The timeseries Command
// Basic: average CPU across all hosts
timeseries avg(dt.host.cpu.usage)
// Split by host
timeseries avg(dt.host.cpu.usage), by:{dt.entity.host}
// Multiple metrics at once
timeseries {
cpu = avg(dt.host.cpu.usage),
mem = avg(dt.host.memory.usage)
}, by:{dt.entity.host}
// Custom time range
timeseries avg(dt.host.cpu.usage), by:{dt.entity.host}, from:now()-2h
Common Metrics
Metric What It Measures Unit
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโ
dt.host.cpu.usage Host CPU utilization Percent
dt.host.memory.usage Host memory utilization Percent
dt.host.disk.used.percent Disk usage Percent
dt.service.request.response_time Service response time Microseconds
dt.service.request.count Request throughput Count
dt.service.request.failure_count Failed requests Count
dt.service.request.failure_rate Failure percentage Percent
โ ๏ธ dt.service.request.response_time is in microseconds, not milliseconds. Divide by 1000 for ms.
Aggregations
timeseries avg(dt.host.cpu.usage), by:{dt.entity.host} // Average
timeseries max(dt.host.cpu.usage), by:{dt.entity.host} // Peak
timeseries percentile(dt.service.request.response_time, 95) // P95
timeseries sum(dt.service.request.count) // Total
Filtering Inside timeseries
// filter:{} is MORE PERFORMANT than | filter (filters at data source level)
timeseries avg(dt.host.cpu.usage),
by:{dt.entity.host},
filter:{dt.entity.host == "HOST-ABC123"}
๐ Try it: In a Notebook, type timeseries avg(dt.host. โ autocomplete shows all available host metrics. This is the fastest way to discover metrics.
๐ก timeseries queries automatically render as line charts in Notebooks. fetch queries render as tables.