eximstats - generates statistics from Exim mainlog or syslog
files.
eximstats [Output] [Options] mainlog1 mainlog2 ...
eximstats -merge [Options] report.1.txt report.2.txt ... > weekly_report.txt
- -txt
- Output the results in plain text to STDOUT.
- -txt=filename
- Output the results in plain text. Filename '-' for STDOUT is
accepted.
- -html
- Output the results in HTML to STDOUT.
- -html=filename
- Output the results in HTML. Filename '-' for STDOUT is accepted.
- -xls
- Output the results in Excel compatible Format to STDOUT. Requires the
Spreadsheet::WriteExcel CPAN module.
- -xls=filename
- Output the results in Excel compatible format. Filename '-' for STDOUT is
accepted.
- -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 (DT)for all the messages.
Exim must have been configured to use the +deliver_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
or -byedomain
- Show results by sender's email domain. May be combined with -byhost
and/or -bydomain and/or -byemail.
- -pattern
Description /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 HTML 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
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
"apt-get install libgd-perl libgd-text-perl
libgd-graph-perl" instead.
- -chartdirI
<dir>
- Create the charts in the directory <dir>
- -chartrelI
<dir>
- Specify the relative directory for the "img src=" tags from
where to include the charts
- -emptyok
- Specify that it's OK 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 STDOUT which
makes it easier to trap errors in the eval section. Remember to add 1 to
the line numbers to allow for the title!
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.
There is a website at https://www.exim.org/.
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 immediately delivered. Fixing
this could be tricky...
Merging of xls files is not (yet) possible. Be free to implement
:)