教程 pingora tutorial

Prometheus 监控

Pingora 内置对 Prometheus 的支持,可以实时导出服务器指标,便于性能监控、容量规划和故障排查。

启用 Prometheus

在配置文件中添加 metrics 配置:

yaml
metrics:
  enable: true
  listen: "127.0.0.1:9090"

`

  • enable:是否启用指标导出
  • listen:Prometheus 拉取指标的地址和端口

可用指标示例

Pingora 导出的指标包括:

指标名称 说明
pingora_requests_total 总请求数
pingora_request_duration_seconds 请求处理耗时(秒)
pingora_active_connections 当前活跃连接数
pingora_upstream_errors_total 上游请求错误数
pingora_rate_limiter_hits_total 限流命中次数

访问指标

启用后,可以在浏览器访问:

txt
http://127.0.0.1:9090/metrics

Prometheus 将定期抓取这些指标进行存储与分析。

配置 Prometheus 采集

在 Prometheus 配置文件 prometheus.yml 中添加 scrape 配置:

yaml
scrape_configs:
  - job_name: 'pingora'
    static_configs:
      - targets: ['127.0.0.1:9090']

然后重启 Prometheus,开始采集 Pingora 指标。

可视化与告警

  • Grafana:将 Prometheus 数据可视化,绘制请求量、延迟、错误率等面板;
  • 告警规则:根据指标设置阈值,当异常发生时触发告警。

监控最佳实践

  1. 采集重要指标:请求数、延迟、错误率、活跃连接数等;
  2. 定期检查指标:确保采集正常,及时发现性能瓶颈;
  3. 结合日志:指标异常时对照日志排查问题;
  4. 适度采集:过于频繁的抓取可能增加 CPU 开销。

启用 Prometheus 监控后,你可以实时掌握 Pingora 的运行状态,为服务稳定性和容量规划提供可靠数据支撑。