Prometheus监控程序负载的(常用)指标
一、请求相关指标
-
HTTP请求总量(Counter类型)
- 指标名称:通常以
http_requests_total命名,建议以_total作为后缀。 - 用途:记录应用接收到的HTTP请求总数。这是一个累积值,只会增加,除非系统重启。
- 分析:通过PromQL的
rate函数,可以计算出单位时间内(如每秒)的请求数,从而了解应用的请求速率。例如,使用rate(http_requests_total[5m])可以计算过去5分钟内的平均每秒请求数。
- 指标名称:通常以
-
请求错误率(Counter类型)
- 指标名称:如
http_request_errors_total。 - 用途:记录应用接收到的错误HTTP请求总数。
- 分析:结合请求总量,可以计算出错误率,评估应用的稳定性和可靠性。例如,
http_request_errors_total / http_requests_total可以得到错误率。
- 指标名称:如
二、性能相关指标
-
请求延迟(Gauge或Histogram类型)
- 指标名称:如
http_request_duration_seconds。 - 用途:记录每次HTTP请求的处理时间。
- 分析:
- Gauge类型:直接记录每次请求的延迟,适合简单的监控需求。
- Histogram类型:提供更详细的延迟分布数据,可以计算请求的百分位数延迟(如P95、P99延迟),更准确地评估应用的性能。
- 指标名称:如
-
CPU使用率(Gauge类型)
- 指标名称:如
process_cpu_seconds_total。 - 用途:记录应用使用的CPU时间。
- 分析:通过计算CPU使用率,可以了解应用对计算资源的消耗情况。例如,使用PromQL的表达式
100 - avg(irate(node_cpu_seconds_total{mode="idle"}[5m])) by (instance) * 100可以计算出CPU使用率。
- 指标名称:如
-
内存使用率(Gauge类型)
- 指标名称:如
process_resident_memory_bytes。 - 用途:记录应用使用的物理内存量。
- 分析:通过计算内存使用率,可以了解应用对内存资源的消耗情况,防止内存泄漏或耗尽。
- 指标名称:如
三、系统资源相关指标
-
磁盘I/O(Counter类型)
- 指标名称:如
node_disk_read_bytes_total、node_disk_written_bytes_total。 - 用途:记录应用对磁盘的读写操作。
- 分析:通过计算磁盘I/O速率,可以了解应用对存储资源的消耗情况,评估磁盘的性能瓶颈。
- 指标名称:如
-
网络I/O(Counter类型)
- 指标名称:如
node_network_receive_bytes_total、node_network_transmit_bytes_total。 - 用途:记录应用接收和发送的网络数据量。
- 分析:通过计算网络I/O速率,可以了解应用对网络资源的消耗情况,评估网络的性能瓶颈。
- 指标名称:如


浙公网安备 33010602011771号