Prometheus 由于时间不同步导致数据不显示
现象描述
将 Prometheus 数据在 Grafana 中进行展示,Grafana 中 Graph 数据显示有延迟,其他类型 Singlestat 和 Table 都显示 N/A 。
排查
1. 排查数据库
发现 Prometheus 数据库端一切正常,
2. 查看 web 端
打开 Prometheus web 发现有明显提示 ,如下
Warning! Detected 437.83 seconds time difference between your browser and the server. Prometheus relies on accurate time and time drift might cause unexpected query results.
看到这里就找到了数据不显示的原因,是因为时间不同步。
结论
数据库端的时间和浏览器端的时间不同步导致浏览器端无法正常显示数据,将数据库端的时间与浏览器端的时间进行同步即可。
本次问题中 Grafana 页面刷新间隔为 5min 。
在 Prometheus web 中偏差大于 5 min 时,无法查询到任何数据,当时间偏差小于 5min 时,可以查到数据,并且正常在 Grafana 中显示。
不确定 Grafana 和 Prometheus 的这两个是值是偶然相同还是有必然联系,留待以后验证。