MERKER: Postfix Items in Zabbix erfassen

Um Postfix Statistiken (sent, receive, bounce, deferred und active) in Zabbix als Items zu erfassen, kann wie folgt vorgegangen werden:

Zuerst Logtail installieren und nach /usr/bin linken damit der Zabbix Benutzer dies auch nutzen kann.

aptitude install logtail -y
ln -s /usr/bin/logtail /usr/bin

Nun ein paar zusätzliche Parameter in die zabbix_agentd.conf einfügen:

echo "UserParameter=postfix.deferred[*],/usr/sbin/postqueue -p | egrep -c \"^[0-9A-F]{10}[^*]\"" >> /etc/zabbix/zabbix_agentd.conf
echo "UserParameter=postfix.active[*],/usr/sbin/postqueue -p | egrep -c \"^[0-9A-F]{10}[*]\"" >> /etc/zabbix/zabbix_agentd.conf
echo "UserParameter=postfix.sent[*],logtail -f /var/log/mail.log -o /var/log/zabbix/sent.logtail | grep -c \"postfix/smtp.*status=sent\"" >> /etc/zabbix/zabbix_agentd.conf
echo "UserParameter=postfix.bounce[*],logtail -f /var/log/mail.log -o /var/log/zabbix/bounce.logtail | grep -c \"postfix/smtp.*status=bounced\"" >> /etc/zabbix/zabbix_agentd.conf
echo "UserParameter=postfix.receive[*],logtail -f /var/log/mail.log -o /var/log/zabbix/receive.logtail | grep -c \"postfix.*status=sent.*delivered to maildir\"" >> /etc/zabbix/zabbix_agentd.conf

Das Mail-Log muss für den Zabbix Nutzer lesbar sein. also wie folgt:

chmod 0660 /var/log/mail.log
usermod -aG adm zabbix

Nun starten wir die Logtail-Befehle einmalig um zu schauen ob Werte geliefert werden:

logtail -f /var/log/mail.log -o /var/log/zabbix/sent.logtail | grep -c "postfix/smtp.*status=sent"
logtail -f /var/log/mail.log -o /var/log/zabbix/bounce.logtail | grep -c "postfix/smtp.*status=bounced"
logtail -f /var/log/mail.log -o /var/log/zabbix/receive.logtail | grep -c "postfix.*status=sent.*delivered to maildir"

…und die Logs wieder für den Zabbix-Daemon nutzbar machen:

chown zabbix:adm /var/log/zabbix -R

Nun sollte der Agent neu gestartet werden.

/etc/init.d/zabbix-agent restart

In Zabbix selbst kann nun ein entsprechendes Template erstellt werden.

Das Template kann anschliessend den einzelnen Hosts (mit Mailer Postfix) zugewiesen werden und die Daten werden ab dem Zeitpunkt erfasst. Wer mag kann nun noch entsprechende Trigger konfigurieren um z.B. bei erreichen einer „vollen Mailqueue“ sich benachrichtigen zu lassen.

Tags:, ,