我正在寻找一个查询来获取上周运行 prometheus 的服务器的平均正常运行时间。它应该是大约 15 小时/周,所以大约 8-10 %。
我在 CentOS 7.6.1810 上使用 Prometheus 2.5.0 和 node_exporter。我最有希望的实验是:
1 - avg_over_time(up{job="prometheus"}[7d])
这是我在寻找获得平均正常运行时间的方法时发现的,但它正好给了我 1。(我的猜测是它忽略了没有刮擦发生的时间?)
2 - sum_over_time(up{job="prometheus"}[7d]) * 15 / 604800
这在技术上是可行的,但取决于刮擦间隔,在我的例子中是 15 秒。我似乎找不到从普罗米修斯的配置中获取所述间隔的方法,所以我必须将其硬编码到查询中。
我还尝试找到获取工作的所有开始和结束时间的方法,但到目前为止无济于事。