如何通过 prometheus 出口商监控 ping 数据包丢失?

如何通过 prometheus 出口商监控 ping 数据包丢失?

我已经尝试使用此导出器进行简单的 icmp 探测:

https://github.com/prometheus/blackbox_exporter

它仅提供 3 个 icmp 延迟指标

https://github.com/czerwonk/atlas_exporter

仅限 Atlas ID 的指标

https://github.com/SuperQ/smokeping_prober

一些没有丢包的 icmp 指标

https://gist.github.com/maesoser/fd0232ab372003c2bc892ae39ea249f6

一些没有丢包的 icmp 指标

和这个地铁出口商

https://github.com/Shinzu/mtr_exporter

给出所有指标,但我不明白如何征服路线并获取实际的 mtr 信息。

所以我无法从这些导出器中获得实际的延迟和数据包丢失指标,您能否为我推荐一个具有此选项(数据包丢失、延迟)的导出器,或者解释 mtr_exporter 的工作原理以及一些相关 grafana 仪表板模板的 url?

问候

答案1

smokeping_prober grafana 仪表板有:

  1. 响应时间直方图;
  2. 数据包丢失图表;以及
  3. 延迟图。

它使用以下表达式实现数据包丢失图:

(
  smokeping_requests_total{host="$target"}
  - smokeping_response_duration_seconds_count{host="$target"}
) 
/ smokeping_requests_total{host="$target"} 

这里发生的事情是:

  1. 首先,我们通过计算总 ping 次数并减去收到的响应次数来获得实际响应次数

    smokeping_requests_total{host="$target"}
    - smokeping_response_duration_seconds_count{host="$target"}
    
  2. 然后将其除以总响应数,得出一个百分比值,例如 0.08 = 8% 的数据包丢失。

延迟图是通过将响应持续时间的总和除以响应次数得出的,从而得出平均响应时间。表达式为:

smokeping_response_duration_seconds_sum{host="$target"}
/ smokeping_response_duration_seconds_count{host="$target"}

相关内容