深入探究监控指标与追踪技术:Prometheus、Mimir 与 Grafana Tempo
1. 数据收集协议
在监控系统中,不同的数据收集协议有着各自的特点和应用场景。
- Prometheus :与 StatsD 和 OTLP 不同,Prometheus 是一种拉取协议。客户端应用需要配置为在一个端点上提供指标,然后一个兼容 Prometheus 的抓取器会按照特定的时间间隔来收集这些指标。这些指标通常在 /metrics 端点上暴露,不过一些框架的实现方式有所不同,例如 Spring Boot 使用 /actuator/Prometheus 。使用拉取配置虽然可能会增加配置步骤,但它减少了应用对其运行环境信息的依赖。例如,无论有 0 个还是 10 个客户端读取应用的指标,应用的配置都可以保持不变。此外,Prometheus 提供了广泛的服务发现选项,涵盖了许多不同的平台,如 Kubernetes、DNS 和 Consul。它的格式也得到了众多收集器的支持,包括 Prometheus 自身、OTEL 收集器、Grafana Agent、Vector、Beats 和 Telegraf。
- SNMP :SNMP 比这里讨论的其他协议更为复杂,它包含了大量用于管理和监控网络连接设备(如交换机和物理服务器)的功能。其监控方面是一种拉取协议,管理实例会连接到设备上的代理软件并拉取数据。此外,SNMP 陷阱提供了额外的功能,允许设备将数据推送给管理器。不过,使用 SNMP 时需要注意安全问题,因为如果配置不当,它会提供较大的攻击面。由于该协议自 1988 年就已开始使用
订阅专栏 解锁全文
14

被折叠的 条评论
为什么被折叠?



