简单的时间序列查询
- 返回所有指标名字为
http_requests_total
的时间序列
- 返回所有名字为
http_requests_total
,并且
job
和 handler
标签为以下值的时间序列
1
| http_requests_total{job="apiserver", handler="/api/comments"}
|
- 返回一个时间范围内的指标数据(返回一个范围向量,range vector)
1
| http_requests_total{job="apiserver", handler="/api/comments"}[5m]
|
返回范围向量的表达式不能直接用图表展示,但是可以通过表格的方式展示。
1
| http_requests_total{job=~".*server"}
|
1
| http_requests_total{status!~"4.."}
|
子查询
- 返回
http_requests_total
过去 30 分钟内每 5
分钟的速率,分辨率(resolution)为 1 分钟
1
| rate(http_requests_total[5m])[30m:1m]
|
1
| max_over_time(deriv(rate(distance_covered_total[5s])[30s:5s])[10m:])
|
使用函数、操作符等
- 返回
http_requests_total
过去 5 分钟每秒的速率
1
| rate(http_requests_total[5m])
|
1 2 3
| sum by (job) { rate(http_requests_total[5m]) }
|
1
| (instance_memory_limit_bytes - instance_memory_usage_bytes) / 1024 / 1024
|
1 2 3
| sum by (app, proc) { instance_memory_limit_bytes - instance_memory_usage_bytes } / 1024 / 1024
|