NAME
eximstats - generates statistics from Exim mainlog or syslog files.
SYNOPSIS
eximstats [Output] [Options] mainlog1 mainlog2 ...
eximstats -merge [Options] report.1.txt report.2.txt ... > weekly_report.txt
Output:
"-txt"
Output the results in plain text to \s-1STDOUT\s0.
"-txt=filename"
Output the results in plain text. Filename '-' for \s-1STDOUT\s0 is accepted.
"-html"
Output the results in \s-1HTML\s0 to \s-1STDOUT\s0.
"-html=filename"
Output the results in \s-1HTML\s0. Filename '-' for \s-1STDOUT\s0 is accepted.
"-xls"
Output the results in Excel compatible Format to \s-1STDOUT\s0.
Requires the Spreadsheet::WriteExcel \s-1CPAN\s0 module.
"-xls=filename"
Output the results in Excel compatible format. Filename '-' for \s-1STDOUT\s0 is accepted.
Options:
"-hnumber"
histogram divisions per hour. The default is 1, and
0 suppresses histograms. Valid values are:
0, 1, 2, 3, 5, 10, 15, 20, 30 or 60.
"-ne"
Don't display error information.
"-nr"
Don't display relaying information.
"-nr/pattern/"
Don't display relaying information that matches.
"-nt"
Don't display transport information.
"-nt/pattern/"
Don't display transport information that matches
"-qlist"
List of times for queuing information single 0 item suppresses.
"-tnumber"
Display top <number> sources/destinations
default is 50, 0 suppresses top listing.
"-tnl"
Omit local sources/destinations in top listing.
"-t_remote_users"
Include remote users in the top source/destination listings.
"-include_original_destination"
Include the original destination email addresses rather than just
using the final ones.
Useful for finding out which of your mailing lists are receiving mail.
"-show_dtlist"
Show the delivery times (\s-1DT\s0)for all the messages.
Exim must have been configured to use the +delivery_time logging option
for this option to work.
list is an optional list of times. Eg -show_dt1,2,4,8 will show
the number of messages with delivery times under 1 second, 2 seconds, 4 seconds,
8 seconds, and over 8 seconds.
"-show_rtlist"
Show the receipt times for all the messages. The receipt time is
defined as the Completed hh:mm:ss - queue_time_overall - the Receipt hh:mm:ss.
These figures will be skewed by pipelined messages so might not be that useful.
Exim must have been configured to use the +queue_time_overall logging option
for this option to work.
list is an optional list of times. Eg -show_rt1,2,4,8 will show
the number of messages with receipt times under 1 second, 2 seconds, 4 seconds,
8 seconds, and over 8 seconds.
"-byhost"
Show results by sending host. This may be combined with
-bydomain and/or -byemail and/or -byedomain. If none of these options
are specified, then -byhost is assumed as a default.
"-bydomain"
Show results by sending domain.
May be combined with -byhost and/or -byemail and/or -byedomain.
"-byemail"
Show results by sender's email address.
May be combined with -byhost and/or -bydomain and/or -byedomain.
"-byemaildomain
Show results by sender's email domain.
May be combined with -byhost and/or -bydomain and/or -byemail.
"-pattern
Look for the specified pattern and count the number of lines in which it appears.
This option can be specified multiple times. Eg:
-pattern 'Refused connections' '/refused connection/'
"
-merge"
This option allows eximstats to merge old eximstat reports together. Eg:
eximstats mainlog.sun > report.sun.txt
eximstats mainlog.mon > report.mon.txt
eximstats mainlog.tue > report.tue.txt
eximstats mainlog.wed > report.web.txt
eximstats mainlog.thu > report.thu.txt
eximstats mainlog.fri > report.fri.txt
eximstats mainlog.sat > report.sat.txt
eximstats -merge report.*.txt > weekly_report.txt
eximstats -merge -html report.*.txt > weekly_report.html
"*"
You can merge text or html reports and output the results as text or html.
"*"
You can use all the normal eximstat output options, but only data
included in the original reports can be shown!
"*"
When merging reports, some loss of accuracy may occur in the top n lists.
This will be towards the ends of the lists.
"*"
The order of items in the top
n lists may vary when the data volumes
round to the same value.
"
-charts"
Create graphical charts to be displayed in \s-1HTML\s0 output.
Only valid in combination with
-html.
This requires the following modules which can be obtained
from http://www.cpan.org/modules/01modules.index.html
"\s-1GD\s0"
"GDTextUtil"
To install these, download and unpack them, then use the normal perl installation procedure:
perl Makefile.PL
make
make test
make install
On Debian GNU/Linux you can use
CWapt-get install libgd-perl libgd-text-perl libgd-graph-perl
instead.
"-chartdirI
Create the charts in the directory <dir>
"-chartrelI
Specify the relative directory for the img src= tags from where to include
the charts
"-emptyok"
Specify that it's \s-1OK\s0 to not find any valid log lines. Without this
we will output an error message if we don't find any.
"-d"
Debug flag. This outputs the eval()'d parser onto \s-1STDOUT\s0 which makes it
easier to trap errors in the eval section. Remember to add 1 to the line numbers to allow for the
title!
DESCRIPTION
Eximstats parses exim mainlog and syslog files to output a statistical
analysis of the messages processed. By default, a text
analysis is generated, but you can request other output formats
using flags. See the help (-help) to learn
about how to create charts from the tables.
AUTHOR
There is a web site at http://www.exim.org
TO DO
This program does not perfectly handle messages whose received
and delivered log lines are in different files, which can happen
when you have multiple mail servers and a message cannot be
immeadiately delivered. Fixing this could be tricky...
Merging of xls files is not (yet) possible. Be free to implement :)