溫馨提示×

如何在Ubuntu上監控PHP-FPM

小樊
39
2025-05-13 22:51:03
欄目: 編程語言

在 Ubuntu 上監控 PHP-FPM 的性能和狀態,可以通過多種方法實現。以下是幾種常用的方法:

1. 使用 systemd 查看 PHP-FPM 狀態

如果你的 PHP-FPM 是通過 systemd 管理的(這是大多數現代 Ubuntu 版本的默認設置),你可以使用以下命令查看其狀態:

sudo systemctl status php-fpm

或者查看更詳細的日志:

sudo journalctl -u php-fpm

2. 使用 tophtop 實時監控

tophtop 是實時監控系統資源使用情況的工具,可以幫助你查看 PHP-FPM 進程的 CPU 和內存使用情況。

  • 安裝 htop(如果尚未安裝):

    sudo apt update
    sudo apt install htop
    
  • 運行 htop 并查找 PHP-FPM 進程:

    打開 htop 后,可以使用搜索功能(通常是按 / 鍵)輸入 php-fpm 來過濾相關進程。

3. 使用 php-fpm 的內置狀態頁面

PHP-FPM 提供了一個內置的狀態頁面,可以通過配置來啟用。這對于實時監控和調試非常有用。

步驟:

  1. 編輯 PHP-FPM 配置文件

    通常位于 /etc/php/{版本號}/fpm/pool.d/www.conf,例如 /etc/php/7.4/fpm/pool.d/www.conf。

    sudo nano /etc/php/7.4/fpm/pool.d/www.conf
    
  2. 啟用 pm.status_path

    找到并取消注釋(刪除行首的 ;)以下行:

    pm.status_path = /status
    
  3. 重啟 PHP-FPM 服務

    sudo systemctl restart php7.4-fpm
    
  4. 訪問狀態頁面

    在瀏覽器中訪問 http://your_server_ip_or_domain/status,你需要提供一個用戶名和密碼。這些憑據可以在同一配置文件中設置:

    ; 設置訪問狀態頁面的認證
    pm.status_path = /status
    ping.path = /ping
    security.limit_extensions = .php .html
    

    然后,設置用戶名和密碼:

    ; 在 [www] 池中添加以下行
    php_admin_value[security.limit_extensions] = .php .html
    php_admin_value[security.limit_request_field_size] = 51200
    php_admin_value[request_slowlog_timeout] = 0
    php_admin_flag[log_errors] = on
    php_admin_value[memory_limit] = 32M
    

    為了設置認證,可以使用 htpasswd 工具創建一個密碼文件:

    sudo apt install apache2-utils
    sudo htpasswd -c /etc/php/{版本號}/fpm/user {用戶名}
    

    替換 {版本號}{用戶名},然后輸入并確認密碼。

  5. 訪問認證后的狀態頁面

    現在,訪問 http://your_server_ip_or_domain/status 并輸入你設置的用戶名和密碼,即可查看 PHP-FPM 的詳細狀態信息。

4. 使用監控工具

為了更全面地監控 PHP-FPM 以及其他系統指標,可以考慮使用監控工具,如 Prometheus 結合 Grafana,或者 Zabbix。

使用 Prometheus 和 Grafana:

  1. 安裝 Prometheus 和 Grafana

    sudo apt update
    sudo apt install prometheus grafana
    
  2. 配置 Prometheus 抓取 PHP-FPM 指標

    編輯 Prometheus 的配置文件 /etc/prometheus/prometheus.yml,添加 PHP-FPM 的 scrape 配置。

  3. 設置 Grafana 數據源為 Prometheus

    在 Grafana 中添加 Prometheus 作為數據源,并創建儀表盤來展示 PHP-FPM 的指標。

5. 使用日志分析

PHP-FPM 的日志文件通常位于 /var/log/php-fpm/ 目錄下。你可以使用工具如 grep、awk 或日志管理工具(如 ELK Stack)來分析日志,監控錯誤和性能問題。

# 查看最近的 PHP-FPM 錯誤日志
sudo tail -f /var/log/php7.4-fpm.log

6. 使用命令行工具 php-fpmstat

php-fpmstat 是一個用于監控 PHP-FPM 性能的小型工具。

安裝:

sudo apt install php-fpmstat

使用:

php-fpmstat -c /etc/php/7.4/fpm/pool.d/www.conf

這將顯示 PHP-FPM 的各種性能指標。

總結

根據你的需求和熟悉程度,可以選擇適合的方法來監控 PHP-FPM:

  • 簡單查看狀態:使用 systemctljournalctl
  • 實時資源監控:使用 tophtop
  • 詳細狀態頁面:啟用 PHP-FPM 的內置狀態頁面并配置認證
  • 全面監控:使用 Prometheus 和 Grafana 等監控工具
  • 日志分析:通過分析日志文件發現潛在問題
  • 輕量級工具:使用 php-fpmstat 快速查看性能指標

選擇合適的方法組合,可以有效地監控和優化 PHP-FPM 在 Ubuntu 上的性能。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女