Prometheus - 在仪表板的 Grafana 时间范围内测量容器 运行 的时间
Prometheus - Measure time a container has been running in Grafana Time Range for dashboard
我正在尝试从 kubernetes 中的 grafana 仪表板获取某个 container/pod 在时间范围间隔内 运行 的时间。考虑到pod可以同名停止和启动。
基于:
我能够测试以下查询:
count_over_time(
(changes(container_last_seen{namespace="dslab", pod=~"$user"}[90s])>0)
[<interval>:90s]
)*90
但它不起作用,因为 pod 以相同的名称重新启动
以下解决方案有效。
在普罗米修斯这个查询中:
(kube_pod_container_status_running{pod=~"$pod_name"} > 0) * ($__interval_ms / 1000)
$__interval_ms 是仪表板中所选时间范围的时间(以毫秒为单位)
然后在grafana transfromation option: group by and calculate Total or Count:
我正在尝试从 kubernetes 中的 grafana 仪表板获取某个 container/pod 在时间范围间隔内 运行 的时间。考虑到pod可以同名停止和启动。
基于:
我能够测试以下查询:
count_over_time(
(changes(container_last_seen{namespace="dslab", pod=~"$user"}[90s])>0)
[<interval>:90s]
)*90
但它不起作用,因为 pod 以相同的名称重新启动
以下解决方案有效。
在普罗米修斯这个查询中:
(kube_pod_container_status_running{pod=~"$pod_name"} > 0) * ($__interval_ms / 1000)
$__interval_ms 是仪表板中所选时间范围的时间(以毫秒为单位)
然后在grafana transfromation option: group by and calculate Total or Count: