11.php-fpm模板(监控页面取值)

在使用Prometheus和Grafana监控PHP-FPM时,通常需要从PHP-FPM的状态页面获取数据。以下是一个简单的Prometheus配置,用于从PHP-FPM状态页面抓取指标,并在Grafana中创建监控面板的例子。

  1. 配置Prometheus

在Prometheus的配置文件prometheus.yml中添加一个新的job,用于抓取PHP-FPM的状态页面(假设PHP-FPM状态页面可通过http://fpm_host:fpm_port/status访问):




scrape_configs:
  - job_name: 'php-fpm'
    static_configs:
      - targets: ['fpm_host:fpm_port']
        labels:
          instance: 'fpm_instance'
  1. 启动或者重新加载Prometheus配置

根据你的Prometheus安装方式,重新加载配置的命令可能不同。通常可以使用以下命令:




promtool reload 'prometheus.yml'

或者,如果你使用的是服务管理工具,如systemd:




sudo systemctl reload prometheus
  1. 在Grafana中创建监控面板

首先,在Grafana中添加Prometheus数据源。然后,创建一个新的监控面板,并添加图表。以下是一个简单的监控面板JSON模板,可以导入到Grafana中:




{
  "datasource": "Prometheus",
  "panels": [
    {
      "title": "PHP-FPM Processes",
      "type": "graph",
      "metrics": [
        "phpfpm_processes_total{instance='fpm_instance'}",
        "phpfpm_max_children_reached_total{instance='fpm_instance'}"
      ],
      "gridPos": {
        "h": 4,
        "w": 24,
        "x": 0,
        "y": 0
      }
    },
    {
      "title": "PHP-FPM Requests",
      "type": "graph",
      "metrics": [
        "phpfpm_requests_total{instance='fpm_instance'}"
      ],
      "gridPos": {
        "h": 4,
        "w": 24,
        "x": 0,
        "y": 4
      }
    }
    // ... 添加其他需要的图表
  ],
  "rows": [
    {
      "title": "PHP-FPM Metrics",
      "panels": [
        "A",
        "B"
      ],
      "height": 27,
      "collapse": false
    }
  ],
  "timepicker": {
    "refresh_intervals": [
      "10s",
      "30s",
      "1m",
      "5m",
      "15m",
      "30m",
      "1h",
      "2h",
      "1d"
    ],
    "time_options": [
      "5m",
      "15m",
      "1h",
      "3h",
      "6h",
      "12h",
      "24h",
      "2d",
      "7d",
      "30d"
    ]
  },
  "time": {
    "from": "now-30m",
    "to": "now"
  },
  "version": 1
}

将上述JSON模板导入Grafana,并根据实际情况调整datasourcemetrics中的标签值(如instance的值)。

请注意,这个例子中的指标是假设已经由PHP-FPM的status页面导出。实际情况

PHP
最后修改于:2024年08月10日 19:07

评论已关闭

推荐阅读

DDPG 模型解析,附Pytorch完整代码
2024年11月24日
DQN 模型解析,附Pytorch完整代码
2024年11月24日
AIGC实战——Transformer模型
2024年12月01日
Socket TCP 和 UDP 编程基础(Python)
2024年11月30日
python , tcp , udp
如何使用 ChatGPT 进行学术润色?你需要这些指令
2024年12月01日
AI
最新 Python 调用 OpenAi 详细教程实现问答、图像合成、图像理解、语音合成、语音识别(详细教程)
2024年11月24日
ChatGPT 和 DALL·E 2 配合生成故事绘本
2024年12月01日
omegaconf,一个超强的 Python 库!
2024年11月24日
【视觉AIGC识别】误差特征、人脸伪造检测、其他类型假图检测
2024年12月01日
[超级详细]如何在深度学习训练模型过程中使用 GPU 加速
2024年11月29日
Python 物理引擎pymunk最完整教程
2024年11月27日
MediaPipe 人体姿态与手指关键点检测教程
2024年11月27日
深入了解 Taipy:Python 打造 Web 应用的全面教程
2024年11月26日
基于Transformer的时间序列预测模型
2024年11月25日
Python在金融大数据分析中的AI应用(股价分析、量化交易)实战
2024年11月25日
AIGC Gradio系列学习教程之Components
2024年12月01日
Python3 `asyncio` — 异步 I/O,事件循环和并发工具
2024年11月30日
llama-factory SFT系列教程:大模型在自定义数据集 LoRA 训练与部署
2024年12月01日
Python 多线程和多进程用法
2024年11月24日
Python socket详解,全网最全教程
2024年11月27日