postfix/postfix.patch.pfls

changeset 495
01294b31a79e
parent 146
bc79b3740eb8
     1.1 --- a/postfix/postfix.patch.pfls	Wed Aug 08 20:36:32 2012 +0200
     1.2 +++ b/postfix/postfix.patch.pfls	Thu Aug 09 00:41:14 2012 +0200
     1.3 @@ -1,32 +1,28 @@
     1.4 -This patch makes Pflogsumm working with the particular format
     1.5 -of the OSSP fsl based Postfix logfile and additionally allows
     1.6 -one to specify a more flexible data format.
     1.7 -
     1.8  Index: pflogsumm.1
     1.9 ---- pflogsumm.1.orig	2007-04-06 16:11:28 +0200
    1.10 -+++ pflogsumm.1	2007-04-06 17:35:12 +0200
    1.11 -@@ -172,6 +172,8 @@
    1.12 - .Vb 2
    1.13 - \&    -d today       generate report for just today
    1.14 - \&    -d yesterday   generate report for just "yesterday"
    1.15 -+\&    -d YYYY-MM-DD  generate report for just "YYYY-MM-DD"
    1.16 -+\&                   (Really takes string Date::Parse will handle)
    1.17 - .Ve
    1.18 - .PP
    1.19 - .Vb 1
    1.20 +--- pflogsumm.1.orig	2012-02-05 23:34:29.000000000 +0100
    1.21 ++++ pflogsumm.1	2012-02-06 08:49:47.000000000 +0100
    1.22 +@@ -171,6 +171,8 @@
    1.23 + \&
    1.24 + \&    \-d today       generate report for just today
    1.25 + \&    \-d yesterday   generate report for just "yesterday"
    1.26 ++\&    \-d YYYY-MM-DD  generate report for just "YYYY-MM-DD"
    1.27 ++\&                    (Really takes string Date::Parse will handle)
    1.28 + \&
    1.29 + \&    \-\-deferral\-detail <cnt>
    1.30 + \&
    1.31  Index: pflogsumm.pl
    1.32 ---- pflogsumm.pl.orig	2008-06-29 15:46:01 +0200
    1.33 -+++ pflogsumm.pl	2008-06-29 19:39:07 +0200
    1.34 +--- pflogsumm.pl.orig	2012-02-05 23:25:25.000000000 +0100
    1.35 ++++ pflogsumm.pl	2012-02-06 20:53:39.000000000 +0100
    1.36  @@ -10,7 +10,7 @@
    1.37   
    1.38   =head1 SYNOPSIS
    1.39   
    1.40 --    pflogsumm.pl -[eq] [-d <today|yesterday>] [-h <cnt>] [-u <cnt>]
    1.41 -+    pflogsumm.pl -[eq] [-d <today|yesterday|YYYY-MM-DD>] [-h <cnt>] [-u <cnt>]
    1.42 - 	[--verp_mung[=<n>]] [--verbose_msg_detail] [--iso_date_time]
    1.43 - 	[-m|--uucp_mung] [-i|--ignore_case] [--smtpd_stats] [--mailq]
    1.44 - 	[--problems_first] [--rej_add_from] [--no_bounce_detail]
    1.45 -@@ -37,6 +37,9 @@
    1.46 +-    pflogsumm.pl -[eq] [-d <today|yesterday>] [--detail <cnt>]
    1.47 ++    pflogsumm.pl -[eq] [-d <today|yesterday|YYYY-MM-DD>] [--detail <cnt>]
    1.48 + 	[--bounce-detail <cnt>] [--deferral-detail <cnt>]
    1.49 + 	[-h <cnt>] [-i|--ignore-case] [--iso-date-time] [--mailq]
    1.50 + 	[-m|--uucp-mung] [--no-no-msg-size] [--problems-first]
    1.51 +@@ -43,6 +43,9 @@
    1.52   
    1.53       -d today       generate report for just today
    1.54       -d yesterday   generate report for just "yesterday"
    1.55 @@ -34,9 +30,9 @@
    1.56  +                   (Actually this will take any date string
    1.57  +                   parsable by the perl Date::Parse module)
    1.58   
    1.59 -     -e             extended (extreme? excessive?) detail
    1.60 +     --deferral-detail <cnt>
    1.61   
    1.62 -@@ -359,6 +362,7 @@
    1.63 +@@ -398,6 +401,7 @@
    1.64   use strict;
    1.65   use locale;
    1.66   use Getopt::Long;
    1.67 @@ -44,28 +40,28 @@
    1.68   eval { require Date::Calc };
    1.69   my $hasDateCalc = $@ ? 0 : 1;
    1.70   
    1.71 -@@ -542,8 +546,8 @@
    1.72 -     my $logRmdr;
    1.73 -     next unless((($msgMonStr, $msgDay, $msgHr, $msgMin, $msgSec, $logRmdr) =
    1.74 - 	/^(...) +(\d+) (..):(..):(..) \S+ (.+)$/o) == 6);
    1.75 --    unless((($cmd, $qid) = $logRmdr =~ m#^(?:postfix|$syslogName)/([^\[:]*).*?: ([^:\s]+)#o) == 2 ||
    1.76 +@@ -639,8 +643,8 @@
    1.77 + 	--$msgMon;
    1.78 +     }
    1.79 + 
    1.80 +-    unless((($cmd, $qid) = $logRmdr =~ m#^(?:postfix|$syslogName)(?:/(?:smtps|submission))?/([^\[:]*).*?: ([^:\s]+)#o) == 2 ||
    1.81  -           (($cmd, $qid) = $logRmdr =~ m#^((?:postfix)(?:-script)?)(?:\[\d+\])?: ([^:\s]+)#o) == 2)
    1.82 -+    unless((($cmd, $qid) = $logRmdr =~ m#^<[a-z]+>\s+(?:postfix|$syslogName)/([^\[:]*).*?: ([^:\s]+)#o) == 2 ||
    1.83 ++    unless((($cmd, $qid) = $logRmdr =~ m#^<[a-z]+>\s+(?:postfix|$syslogName)(?:/(?:smtps|submission))?/([^\[:]*).*?: ([^:\s]+)#o) == 2 ||
    1.84  +           (($cmd, $qid) = $logRmdr =~ m#^<[a-z]+>\s+((?:postfix)(?:-script)?)(?:\[\d+\])?: ([^:\s]+)#o) == 2)
    1.85       {
    1.86   	#print UNPROCD "$_";
    1.87   	next;
    1.88 -@@ -1406,11 +1410,11 @@
    1.89 +@@ -1514,11 +1518,11 @@
    1.90   	# Back up to yesterday
    1.91   	$time -= ((localtime($time))[2] + 2) * 3600;
    1.92       } elsif($dateOpt ne "today") {
    1.93  -	die "$usageMsg\n";
    1.94  +	$time = str2time($dateOpt);
    1.95       }
    1.96 -     my ($t_mday, $t_mon) = (localtime($time))[3,4];
    1.97 +     my ($t_mday, $t_mon, $t_year) = (localtime($time))[3,4,5];
    1.98   
    1.99 --    return sprintf("%s %2d", $monthNames[$t_mon], $t_mday);
   1.100 -+    return sprintf("%s %02d", $monthNames[$t_mon], $t_mday);
   1.101 +-    return sprintf("%s %2d", $monthNames[$t_mon], $t_mday), sprintf("%04d-%02d-%02d", $t_year+1900, $t_mon+1, $t_mday);
   1.102 ++    return sprintf("%s %02d", $monthNames[$t_mon], $t_mday), sprintf("%04d-%02d-%02d", $t_year+1900, $t_mon+1, $t_mday);
   1.103   }
   1.104   
   1.105   # if there's a real domain: uses that.  Otherwise uses the IP addr.

mercurial