【发布时间】:2019-10-06 12:39:38
【问题描述】:
需要一个或多个 Docker 服务的可用性数据
我们使用 Prometheus 在 Docker Swarm 环境中收集指标。工作正常!
我们如何获得每日和/或每月指标?
【问题讨论】:
需要一个或多个 Docker 服务的可用性数据
我们使用 Prometheus 在 Docker Swarm 环境中收集指标。工作正常!
我们如何获得每日和/或每月指标?
【问题讨论】:
Recording Rules 将帮助您定期汇总和分组提取的指标,并将其结果提取到 prometheus 中。
【讨论】:
另一个答案中的建议可能是向前迈出的一大步。谢谢@vinodk。
问了很多开发者关于这个问题,我终于找到了一个好的解决方案。
解决办法是:
作为示例,此 Prometheus API 调用提供了几天内的每日正常运行(或可用性)时间。注意使用 Z/GMT 时间。
http://prometheus-server/prometheus/api/v1/query_range?query=avg_over_time(up[1h])*100&start=2019-12-15T06:00:00.000Z&end=2019-12-17T16:59:59.000Z&step=1d
替代品呢?
1) 将 Prometheus 的结果存储在远程数据库中,并单独查询。仅检索一个月的可用性百分比有点矫枉过正。
2) 您可以使用内存占用较小的工具“Telegraph”。它可以将数据存储在 InfluxDb 中。我喜欢用于监控的 Prometheus 解决方案/架构/标准,所以这个选项在我的情况下不是正确的。
3) 我们在应用程序中使用 Spring Boot。 Spring Boot Admin 不适用,因为它只关注当前情况,而不是持久化结果。
【讨论】: