Netdata. Добавляем PHP-FPM.

Добавляем в Netdata мониторинг и вывод статистики работы PHP-FPM на сервере.

Предварительно стоит обратить внимание на заметки об установке Netdata и о добавлении Nginx в мониторинг.

Netdata и PHP-FPM.

1. Проверим, что бы в настройках нужного нам fpm-пула была задана страница со статусом. Для этого, открываем конфиг пула и находим там параметр:

pm.status_path = /fpmstatus

2. В настройках Nginx создаём соответствующий location, для вывода php-fpm статуса (1.2.3.4 у меня — IP сервера):

location /fpmstatus {
stub_status on;
access_log off;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/var/run/php-sysadmin.pm.sock;
include /etc/nginx/fastcgi_params;
allow 127.0.0.1;
allow 1.2.3.4;
deny all;
}

Сохраняем файл, перезапускаем Nginx и тестируем получение статуса запросом:

# curl "https://domain.com/fpmstatus"
pool: domain.com
process manager: ondemand
start time: 11/Jul/2018:09:55:03 +0300
start since: 2978
accepted conn: 2905
listen queue: 0
max listen queue: 0
listen queue len: 0
idle processes: 1
active processes: 1
total processes: 2
max active processes: 3
max children reached: 0
slow requests: 0

3. Для настройки плагина в мониторинге, открываем конфиг /etc/netdata/python.d/phpfpm.conf, прокручиваем его вниз и прописываем адрес доступа к статусу вот так:

localhost:
name : 'local'
url : "https://domain.com/fpmstatus?full&json"

localipv4:
name : 'local'
url : "https://domain.com/fpmstatus?full&json"

4. В конфиге /etc/netdata/python.d.conf проверяем включение плагина:

phpfpm: yes

5. Перезапускаем сервисы и проверяем панель мониторинга. Там, если всё сделано верно, для php-fpm появится отдельная секция:

netdata php-fpm

3 thoughts on “Netdata. Добавляем PHP-FPM.

  1. «php-sysadmin.pm.sock;»

    Что это такое? Ты что употреблял когда писал статью?

  2. Не понял немного. Если у меня 20 сайтов, каждый на отдельном php-fpm сокете, то я могу мониторить только один из них?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *