1

当我们通过 BlackBox 导出器探测数据时,Prometheus 中有 3 个 ICMP 阶段。

  1. 解决
  2. rtt
  3. 设置

每个阶段的目的是什么?

这是一个示例数据集:

probe_icmp_duration_seconds{phase="resolve"} 1.4725e-05
probe_icmp_duration_seconds{phase="rtt"} 0.000237673   
probe_icmp_duration_seconds{phase="setup"} 0.000140214

谢谢

4

1 回答 1

1

对于大多数互联网连接,连接到远程服务通常有多个阶段,其中包括这样的步骤。对于 Prometheus / blackbox,步骤如下:

  1. 将 DNS 名称(或 IP 地址)解析为可用于向其发送 ICMP 回显请求 (ping) 的 IP 地址。这有一些延迟,具体取决于正在使用的 DNS 服务、缓存等。因此,如果 DNS 解析器已经缓存了答案,则它的probe_icmp_duration_seconds值不为零,但通常很小。phase="resolve"

  2. 发送出站请求需要一个套接字设置。测量此设置过程的时间长度记录在phase="setup"值中。

  3. 最后,大多数人实际想要测量的值是从发出传出 ICMP 回显请求的时间点到收到响应的时间点之间的响应时间。这就是phase="rtt"价值。

于 2021-07-07T18:25:27.950 回答