Мониторинг Postfix в Zabbix
Использовалась OS Gentoo Linux
net-analyzer/zabbix-2.0.8
mail-mta/postfix-2.10.1
net-mail/pflogsumm-1.1.5
Установка pflogsumm
Установка pflogsumm
emerge net-mail/pflogsumm-1.1.5 -av
Утилита анализирует mail.log файл и выводит результат
pflogsumm /var/log/mail.log -d today
Установка скрипта
Создание папки для скриптов
mkdir /etc/zabbix/scripts/ chown root:zabbix -R /etc/zabbix/scripts/ chmod 750 /etc/zabbix/scripts/
Создадим сам скрипт:
Скрипт предусматривает кэш, что позволяет избежать парсинга лога на каждый параметр.
Время действия кэша (TTLCACHE) в секундах должно устанавливается чуть меньше чем минимальный период опроса элементов.
При первом запуске (или удалении кэш файла) будет лишь создан пустой файл, и опрос элементов может быть возможен только после истечения кэша (TTLCACHE).
Установка прав
chown root:zabbix /etc/zabbix/scripts/postfix.sh chmod 550 /etc/zabbix/scripts/postfix.sh
Настройка прав пользователю zabbix в sudo
/etc/sudoers
... ##### CUSTOM ##### zabbix ALL=(ALL) NOPASSWD: /bin/cat /var/log/mail.log
Проверить работу скрипта для zabbix, но сначала надо создать 'старый' кэш файл не нулевого размера:
sudo -u zabbix touch /tmp/zabbix.postfix.cache echo "" >> /tmp/zabbix.postfix.cache sudo -u zabbix touch -m -d '2000-01-01 01:01' /tmp/zabbix.postfix.cache
sudo -u zabbix /etc/zabbix/scripts/postfix.sh queue sudo -u zabbix /etc/zabbix/scripts/postfix.sh received
Вы должны получить данные, если этого не произошло, то конфигурация выполнена не правильно. Так же смотреть содержимое кэш файла.
Следует увеличить параметр Timeout в Zabbix Agent, что бы скрипт гарантированно успевал отработать
Настройка Zabbix Agent
Настройка
/etc/zabbix/zabbix_agentd.conf
... UserParameter=postfix[*],/etc/zabbix/scripts/postfix.sh "$1"
Перезапустить
/etc/init.d/zabbix-agentd restart
Проверка
zabbix_get -s HOST -k 'postfix[received]' zabbix_get -s HOST -k 'postfix[queue]'
Настройка Zabbix Server
Для контролируемых данных в Zabbix нужно создать соответствующее элементы с типом «Zabbix агент» и ключом типа:
postfix[key]
где key - контролируемая метрика
Готовый Шаблон для мониторинга Postfix (agent) с уже настроенными элементами и графиками.
Обсуждение
В смысле только 2 ключа таким образом будут работать?
Нет, это только пример для проверки. см. шаблон для мониторинга
Параметры, что хотите грепать из отчета pflogsumm, то и указывайте
огромное спасибо за статью! Все настроили, шаблон импортировали - красота!