Мониторинг Nextcloud в Zabbix

Приведу пример мониторинга Nextcloud в Zabbix.

Сначала добавим в файл конфигурации Zabbix агента строку (вместо ixnfo.com укажем свой домен с nextcloud):

UserParameter=nextcloud[*],curl -s --user "admin":"$2" https://ixnfo.com/ocs/v2.php/apps/serverinfo/api/v1/info | grep "$1" | cut -d "<" -f 2 | cut -d ">" -f 2 | head -n 1

Перезапустим Zabbix агент чтобы применить изменения:

sudo service zabbix-agent restart

Чтобы не указывать в каждом элементе данных пароль пользователя admin, откроем панель Zabbix сервера и в настройках хоста с Nextcloud добавим макрос с паролем пользователя admin, например назовем макрос {$NEXTCLOUD_PASS}.

Теперь создадим шаблон например с именем Nextcloud и добавим его для хоста с Nextcloud.

В шаблоне создадим элементы данных с ключами ниже (также для всех выберем тип — Zabbix агент и тип информации — целое число):

nextcloud[num_users,{$NEXTCLOUD_PASS}]
nextcloud[last5minutes,{$NEXTCLOUD_PASS}]
nextcloud[last1hour,{$NEXTCLOUD_PASS}]
nextcloud[last24hours,{$NEXTCLOUD_PASS}]
nextcloud[version,{$NEXTCLOUD_PASS}]
nextcloud[num_files,{$NEXTCLOUD_PASS}]
nextcloud[num_shares_groups,{$NEXTCLOUD_PASS}]
nextcloud[num_shares_user,{$NEXTCLOUD_PASS}]
nextcloud[num_shares,{$NEXTCLOUD_PASS}]
nextcloud[num_shares_link,{$NEXTCLOUD_PASS}]
nextcloud[num_shares_link_no_password,{$NEXTCLOUD_PASS}]
nextcloud[max_execution_time,{$NEXTCLOUD_PASS}]
nextcloud[upload_max_filesize,{$NEXTCLOUD_PASS}]

Где «last5minutes» это счетчик активных пользователей за последние 5 минут, остальные элементы вроде должны быть понятны. Таким образом, например last5minutes передается Zabbix агенту как $1, макрос пароля как $2.

Если не рисуются графики, то например проверим что отображается по команде и установлен ли curl (вместо ixnfo.com укажем свой домен с nextcloud):

curl -s --user "admin":"password" https://ixnfo.com/ocs/v2.php/apps/serverinfo/api/v1/info
curl -s --user "admin":"password" https://ixnfo.com/ocs/v2.php/apps/serverinfo/api/v1/info | grep "last5minutes" | cut -d "<" -f 2 | cut -d ">" -f 2 | head -n 1
sudo apt install curl

Смотрите также мои статьи:
Примеры триггеров для Zabbix
Установка Nextcloud в Ubuntu

Оставьте комментарий

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