メールキュー
メールキューの数え方
postfix
/usr/sbin/postqueue -p | tail -n 1 | cut -d ' ' -f 5 キューがなければ、NULL(何もなし)が出力されるので queue=`postqueue -p | tail -n 1 |cut -d ' ' -f 5` if [ -z ${queue} ]; then queue=0; fi echo $queue こんな風にして0を設定する
sendmail
mailq | tail -n 1 | cut -d ' ' -f 3 キューがなければ0となる
qmail
/var/qmail/bin/qmail-qstat | tail -n 2 | head -n 1 | cut -d ' ' -f 4 qmail-qstatまでのパスが異なる場合があるので こんな風にしとけばよいかな #!/bin/bash QMAIL_STAT="/var/qmail/bin/qmail-qstat" queue=`${QMAIL_STAT} | tail -n 2 | head -n 1| cut -d ' ' -f 4` echo ${queue}
SNMP
メールキューの数え方がわかったらそれをスクリプトファイルにしてサーバに保存する。 保存したファイルを元にsnmpd.confのexec行に追加する
postfix-queueとした場合 echo "exec mailqueue /opt/renbird/postfix-queue" >> /etc/snmp/snmpd.conf
snmpを再起動した後、execで読み取ることが可能
execはOID .1.3.6.1.4.1.2021.8となる
snmpwalk -v 1 localhost -c public .1.3.6.1.4.1.2021.8.1.101.1 UCD-SNMP-MIB::extOutput.1 = STRING: 0