155 lines
5.0 KiB
Diff
155 lines
5.0 KiB
Diff
diff -up logwatch-7.3.6/conf/services/fetchmail.conf.fetchmail logwatch-7.3.6/conf/services/fetchmail.conf
|
|
--- logwatch-7.3.6/conf/services/fetchmail.conf.fetchmail 2010-08-19 18:24:37.307903687 +0200
|
|
+++ logwatch-7.3.6/conf/services/fetchmail.conf 2010-08-19 18:24:30.163903629 +0200
|
|
@@ -0,0 +1,31 @@
|
|
+###########################################################################
|
|
+# $Id: fetchmail $
|
|
+###########################################################################
|
|
+
|
|
+# You can put comments anywhere you want to. They are effective for the
|
|
+# rest of the line.
|
|
+
|
|
+# this is in the format of <name> = <value>. Whitespace at the beginning
|
|
+# and end of the lines is removed. Whitespace before and after the = sign
|
|
+# is removed. Everything is case *insensitive*.
|
|
+
|
|
+# Yes = True = On = 1
|
|
+# No = False = Off = 0
|
|
+
|
|
+Title = "Fetchmail"
|
|
+
|
|
+# Which logfile group...
|
|
+LogFile = maillog
|
|
+
|
|
+*OnlyService = fetchmail
|
|
+*RemoveHeaders
|
|
+
|
|
+#Fetchmail Global ENV Variables
|
|
+
|
|
+########################################################
|
|
+# This was written and is maintained by:
|
|
+# Oron Peled <oron \@\ actcom.net.il>
|
|
+#
|
|
+########################################################
|
|
+
|
|
+# vi: shiftwidth=3 tabstop=3 et
|
|
diff -up logwatch-7.3.6/scripts/services/fetchmail.fetchmail logwatch-7.3.6/scripts/services/fetchmail
|
|
--- logwatch-7.3.6/scripts/services/fetchmail.fetchmail 2010-08-19 18:24:04.172902531 +0200
|
|
+++ logwatch-7.3.6/scripts/services/fetchmail 2010-08-19 18:23:52.676902323 +0200
|
|
@@ -0,0 +1,115 @@
|
|
+##########################################################################
|
|
+# $Id: fetchmail $
|
|
+##########################################################################
|
|
+
|
|
+########################################################
|
|
+# This was written and is maintained by:
|
|
+# Oron Peled <oron \@\ actcom.net.il>
|
|
+#
|
|
+########################################################
|
|
+
|
|
+########################################################
|
|
+## Copyright (c) 2010 Oron Peled
|
|
+## Covered under the included MIT/X-Consortium License:
|
|
+## http://www.opensource.org/licenses/mit-license.php
|
|
+## All modifications and contributions by other persons to
|
|
+## this script are assumed to have been donated to the
|
|
+## Logwatch project and thus assume the above copyright
|
|
+## and licensing terms. If you want to make contributions
|
|
+## under your own copyright or a different license this
|
|
+## must be explicitly stated in the contribution an the
|
|
+## Logwatch project reserves the right to not accept such
|
|
+## contributions. If you have made significant
|
|
+## contributions to this script and want to claim
|
|
+## copyright please contact logwatch-devel@lists.sourceforge.net.
|
|
+#########################################################
|
|
+
|
|
+
|
|
+my $Detail = $ENV{'LOGWATCH_DETAIL_LEVEL'} || 0;
|
|
+
|
|
+my %no_mail;
|
|
+my %messages_for;
|
|
+my %auth_fail;
|
|
+my %conn_fail;
|
|
+
|
|
+#Inits
|
|
+
|
|
+while (defined($ThisLine = <STDIN>)) {
|
|
+ chomp($ThisLine);
|
|
+ $ThisLine =~ s/^[a-zA-Z0-9]+: //;
|
|
+ if($ThisLine =~ s/^No mail for (\S+) at (\S+)//) {
|
|
+ $no_mail{"${1} at ${2}"}++;
|
|
+ } elsif($ThisLine =~ /^reading message /) {
|
|
+ # ignore
|
|
+ } elsif($ThisLine =~ s/^Query status=[23]//) {
|
|
+ # ignore. Counted below (Authorization, Connection)
|
|
+ } elsif($ThisLine =~ s/^Authorization failure on (\S+)//) {
|
|
+ $auth_fail{"${1}"}++;
|
|
+ } elsif($ThisLine =~ s/^\S+ connection to \S+ failed: .*//) {
|
|
+ # ignore. Counted below
|
|
+ } elsif($ThisLine =~ s/^connection to (\S+) \[[^]]+\] failed: (.*).//) {
|
|
+ $conn_fail{"${1} -- ${2}"}++;
|
|
+ } elsif($ThisLine =~ s/^(\d+) messages? for (\S+) at (\S+).*.//) {
|
|
+ $messages_for{"${2} at ${3}"} += $1;
|
|
+ } else {
|
|
+ chomp($ThisLine);
|
|
+ # Report any unmatched entries...
|
|
+ $OtherList{$ThisLine}++;
|
|
+ }
|
|
+}
|
|
+
|
|
+if (keys %messages_for) {
|
|
+ my $total;
|
|
+ print "\nMessages\n";
|
|
+ foreach my $who (sort keys %messages_for) {
|
|
+ print " $who: $messages_for{$who}\n";
|
|
+ $total += $messages_for{$who};
|
|
+ }
|
|
+ print " Total: $total\n";
|
|
+}
|
|
+
|
|
+if (keys %conn_fail) {
|
|
+ my $total;
|
|
+ print "\nConnection failures\n";
|
|
+ foreach my $who (sort keys %conn_fail) {
|
|
+ print " $who: $conn_fail{$who} Time(s)\n";
|
|
+ $total += $conn_fail{$who};
|
|
+ }
|
|
+ print " Total: $total\n";
|
|
+}
|
|
+
|
|
+if (keys %auth_fail) {
|
|
+ my $total;
|
|
+ print "\nAuthorization failures\n";
|
|
+ foreach my $who (sort keys %auth_fail) {
|
|
+ print " $who: $auth_fail{$who} Time(s)\n";
|
|
+ $total += $auth_fail{$who};
|
|
+ }
|
|
+ print " Total: $total\n";
|
|
+}
|
|
+
|
|
+if (keys %no_mail) {
|
|
+ my $total;
|
|
+ print "\nNo Mail\n";
|
|
+ foreach my $who (sort keys %no_mail) {
|
|
+ print " $who: $no_mail{$who} Time(s)\n";
|
|
+ $total += $no_mail{$who};
|
|
+ }
|
|
+ print " Total: $total\n";
|
|
+}
|
|
+
|
|
+if (keys %OtherList) {
|
|
+ print "\n**Unmatched Entries**\n";
|
|
+ foreach $line (sort {$OtherList{$b}<=>$OtherList{$a} } keys %OtherList) {
|
|
+ print " $line: $OtherList{$line} Time(s)\n";
|
|
+ }
|
|
+}
|
|
+
|
|
+exit(0);
|
|
+
|
|
+# vi: shiftwidth=3 tabstop=3 syntax=perl et
|
|
+# Local Variables:
|
|
+# mode: perl
|
|
+# perl-indent-level: 3
|
|
+# indent-tabs-mode: nil
|
|
+# End:
|