----------------------------------------------------- mailgraph - a RRDtool frontend for Postfix Statistics by David Schweikert ----------------------------------------------------- mailgraph is a very simple mail statistics RRDtool frontend for Postfix that produces daily, weekly, monthly and yearly graphs of received/sent and bounced/rejected mail (SMTP traffic). Get it from: http://mailgraph.schweikert.ch/ =============================== Required Modules ---------------- - rrdtool and it's perl module (RRDs) -> http://oss.oetiker.ch/rrdtool/ - File::Tail (which requires Time::HiRes) -> get it from CPAN Note that several Linux distributions will already have these modules as RPMs. Usage ----- mailgraph is made of two scripts: - mailgraph.pl This script does parse syslog and updates the RRD database (mailgraph.rrd) in the current directory. It is a deamon and will monitor your log-file for changes. DO NOT RUN IT WITH CRON! usage: mailgraph.pl [*options*] -h, --help display this help and exit -v, --verbose be verbose about what you do -V, --version output version information and exit -c, --cat causes the logfile to be only read and not monitored -l, --logfile f monitor logfile f instead of /var/log/syslog -y, --year starting year of the log file (default: current year) --host=HOST use only entries for HOST (regexp) in syslog -d, --daemon start in the background --daemon-pid=FILE write PID to FILE instead of /var/run/mailgraph.pid --daemon-rrd=DIR write RRDs to DIR instead of /var/log --daemon-log=FILE write verbose-log to FILE instead of /var/log/mailgraph.log --ignore-localhost ignore mail to/from localhost (used for virus scanner)\n"; If -c is not specified, mailgraph will monitor logfile for Postfix log entries in logfile (/var/log/syslog unless -l is specified). - mailgraph.cgi This is a CGI script that does generate graphics from the RRD database. You have probably to change $rrd to point to where the RRD database is stored. Note that "Bounced", "Viruses", and "Spam" are stacked one on another in the graph, whereas "Rejected" is a line. Installation ------------ See the file mailgraph-init for an example init script that you can use to start mailgraph at system boot. You need to put mailgraph.cgi on somewhere accessible though a web-server, it needs to be executeable and the web-server needs to execute it as a CGI. License ------- mailgraph is released under the GPL license. See the file COPYING included in the distribution for details.