Prometheus sum 没有数据,我可以设置为默认值吗?
Prometheus sum get no data , can i set to default value?
我正在尝试汇总来自不同 IDC 的网络流量 in/out,也使用 snmp_export
来获取这些信息,但有时 snmp 导出无法获取某些交换机的信息,可能超时或丢失.所以这个开关没有日期更新,“/metric”将只显示部分交通信息。问题是当我使用
sum(irate(ifInOctets{ifIndex=...,instance=...})) +
sum(irate(ifInOctets{ifIndex=...,instance=...}))+
sum(irate(ifInOctets{ifIndex=...,instance=...}))
要获取所有流量总值,expr 将 return 没有数据并破坏图表。
我是普罗米修斯的新手。不确定使用方法是否错误。
谢谢
解决这个问题的方法是使用 rate()
足够长的范围来容忍失败的抓取。例如,如果您每分钟抓取一次,那么 5m 就足够了,因此您可以使用 sum without(instance) (rate(ifInOctects[5m]))
我正在尝试汇总来自不同 IDC 的网络流量 in/out,也使用 snmp_export
来获取这些信息,但有时 snmp 导出无法获取某些交换机的信息,可能超时或丢失.所以这个开关没有日期更新,“/metric”将只显示部分交通信息。问题是当我使用
sum(irate(ifInOctets{ifIndex=...,instance=...})) +
sum(irate(ifInOctets{ifIndex=...,instance=...}))+
sum(irate(ifInOctets{ifIndex=...,instance=...}))
要获取所有流量总值,expr 将 return 没有数据并破坏图表。
我是普罗米修斯的新手。不确定使用方法是否错误。
谢谢
解决这个问题的方法是使用 rate()
足够长的范围来容忍失败的抓取。例如,如果您每分钟抓取一次,那么 5m 就足够了,因此您可以使用 sum without(instance) (rate(ifInOctects[5m]))