cactiによる postfixの監視
mailgrpaherっぽく。
起動スクリプトを設置
ここからダウンロードしたスクリプトをメールサーバに設置
そもそもsendmail による mailstatを利用してデータを取得する
つまり解析結果ファイルを/var/tmp/mailXXXXに関して記載があり
こちらにファイルが図れることで現在値のデータを取得する。
http://forums.cacti.net/about1571.html
ちなみにできるグラフは1つで
その中でsend,bound,virus,spamが監視できる。
mailgraph.pl -l /var/log/maillog -d にて動作検証
参考にさせていただきました。
discypus
#!/bin/sh
# chkconfig: 2345 85 35
# mailgraph postfix mail statics (for SNMP)
# description: Watch system status
# processname: mailgraph
#
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/sbin/mailgraph.pl
NAME=mailstats
DESC="mailstats"
# source function library
. /etc/rc.d/init.d/functions
lockfile=/var/lock/subsys/yum
RETVAL=0
test -f $DAEMON || exit 0
set -e
case "$1" in
start)
echo -n "Starting $DESC: "
$DAEMON -d -f /var/log/maillog 2>&1 > /dev/null &
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
killall mailgraph.pl 2>&1 > /dev/null
echo "$NAME."
;;
#;;
restart|force-reload)
#
# If the "reload" option is implemented, move the "force-reload"
# option to the "reload" entry above. If not, "force-reload" is
# just the same as "restart".
#
echo -n "Restarting $DESC: "
killall mailgraph.pl 2>&1 > /dev/null
sleep 1
$DAEMON -d -f /var/log/maillog 2>&1 > /dev/null &
echo "$NAME."
;;
*)
N=/etc/init.d/$NAME
# echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $N {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0
SNMPにて
exec mailcount_sent /bin/cat /var/tmp/mailsent
exec mailcount_recv /bin/cat /var/tmp/mailrecv
exec mailcount_reject /bin/cat /var/tmp/mailrejected
exec mailcount_bounced /bin/cat /var/tmp/mailbounced
exec mailcount_spam /bin/cat /var/tmp/mailspam
exec mailcount_virus /bin/cat /var/tmp/mailvirus
を追記します
snmpの再起して
上の設定がが管理サーバから取得されていることを確認します。
CACTI管理コンソールWEB画面から
Import で データをダウンロードします。
あとはDeviceで
Associated Graph Templates を追加して、Postfixを追加すれば
データの取得が開始されます。
そのあとはCreate Graphでグラフを作成すれば完了です。