]> git.sven.stormbind.net Git - sven/pflogsumm.git/blob - pflogsumm-faq.txt
Add gbp.conf to use pristine-tar = tar
[sven/pflogsumm.git] / pflogsumm-faq.txt
1
2 FAQ for Pflogsumm.pl - A Log Summarizer/Analyzer for the Postfix MTA
3
4 Introduction
5
6     I wouldn't have believed it.  What started out mostly as a light-
7     hearted exercise in improving my facility with Perl--with the hope
8     that something useful would come out of it as well--has turned out to
9     be a somewhat popular utility.  And as more Admins find out about
10     postfix, and more end up trying pflogsumm.pl,  many of the questions,
11     suggestions, and enhancement requests are becoming "frequently
12     asked".  So odd as it seems (to me, at any rate), it looks like it's
13     time for a FAQ.
14
15
16 Index of pflogsumm.pl Frequently Asked Questions (in no particular order)
17
18      1. Project Status
19      2. "Could You Make" or "Here's A Patch To Make" Pflogsumm Do ...
20      3. Requires Date:Calc Module
21      4. Built-In Support for Compressed Logs
22      5. Processing Multiple Log Files
23      6. Time-Based Reporting and Statistics
24      7. By-domain Listings
25      8. Reject, Deferred and Bounced Detail Info
26      9. "Orphaned" (no size) Messages
27     10. Pflogsumm misses/mis-diagnoses/mis-reports, etc. <whatever>
28     11. Pflogsumm is generating lots of "uninitialized value" warnings
29     12. Pflogsumm just doesn't work or doesn't report anything
30     13. Postfix Rejects Pflogsumm Reports Because Of Body Checks
31     14. Pflogsumm Reports Double Traffic When Anti-Virus Scanner Used
32     15. Pflogsumm's numbers don't add up
33     16. Hourly stats for reports run without "-d" option are halved
34     17. How Do I Get Pflogsumm To Email Reports To Me Daily/Weekly/etc.?
35     18. How Can I View Pflogsumm's Reports In My Web Browser?
36     19. New Red Hat install - Pflogsumm no longer works!
37     20. How can I best format my custom reject messages for display in
38         Pflogsumm's output?
39     21. Pflogsumm doesn't understand my log file format
40     22. Why Isn't There Any Mention Of "Monkey Butler" In The FAQ?
41     23. Translating Pflogsumm (Support for Internationalization)
42     24. Pflogsumm may sometimes calculate "yesterday" incorrectly
43     25. Sending Logfile Samples
44     26. From Where Can I  Obtain Pflogsumm?
45
46
47 1. Project Status
48
49     New work on Pflogsumm is sporadic.  It pretty much does everything I
50     need it to do and, so far as I can tell, pretty much what most other
51     people need it to do.  And my time is limited.
52
53     I'll still take bug reports.  I'll still fix bugs.  (But I promise no
54     time-line.)  I'll still answer questions (as time allows).  And I
55     *may* add the occasional enhancement or whatever--as the mood
56     strikes--but Pflogsumm is pretty much a "finished work" as far as I'm
57     concerned.
58
59
60 2. "Could You Make" or "Here's A Patch To Make" Pflogsumm Do ...
61
62     Unless it's a *bug* fix, please see: "1. Project Status"
63
64     To the argument "But it's a patch, all you have to do is...," the
65     answer is: "Not quite."  Every time I make a change to Pflogsumm I
66     have to run it through a series of regression checks to make sure the
67     change didn't break something.  Then there's the commit,
68     documentation, web page update, etc. cycle.
69
70     I'm particularly unlikely to add code to Pflogsumm to account for
71     non-standard Postfix log entries.  "Non-standard" being defined as
72     "other than what Wietse's code does."  Or additional stats gathering
73     that nobody else has requested and strikes *me* as of limited interest
74     or use.  In addition to the development cycle, there's the issue of
75     "code bloat."  Pflogsumm already takes enough (too much?) time and
76     memory on busy machines with large logs.  I'm not prone to make this
77     worse for the sake of these things.
78
79     See Also: 21. Pflogsumm doesn't understand my log file format
80
81
82 3. Requires Date::Calc Module
83
84     Pflogsumm requires the Date::Calc module.  You can download and
85     install the Date::Calc module from CPAN.  It can be found at:
86
87         http://search.cpan.org/search?module=Date::Calc
88
89     Or you can remove the code that's dependent on the Date::Calc module.
90     For the convenience of folks that would prefer to take this approach,
91     I've "fenced" all such code like this:
92
93         # ---Begin: SMTPD_STATS_SUPPORT---
94               .
95               .
96               .
97         <bunch of code>
98               .
99               .
100               .
101         # ---End: SMTPD_STATS_SUPPORT---
102
103     However, if you do this you will lose support for --smtpd_stats.
104
105     Later versions of the Pflogsumm distribution include a script to
106     semi-automate removing smtpd stats support, if you so-desire.
107
108     As of Pflogsumm-1.1.1, the presence of Date::Calc is optional.  If you
109     don't want to use the Pflogsumm options that depend upon it, you
110     neither need Date::Calc, nor is it necessary to manually remove the
111     code that depends upon it.
112
113
114 4. Built-In Support for Compressed Logs
115
116     I took a look at this.  There is a Perl module (which I downloaded,
117     built, and installed here) to interface to libz, but after considering
118     the changes that would be necessary--and the fact that those changes
119     would require that potential users have to download/build/install libz
120     (and of the correct version) and the additional Perl module, I decided
121     to forego this enhancement.
122
123     I could just open a pipe within Pflogsumm and use zcat/gunzip/gzip.
124     That would depend upon a) them being there [probably a safe bet--
125     considering the logs somehow got into that format :-), but...] and b)
126     one of these either being in the path or having an environment
127     variable or a script variable or...
128
129     The thing is, in the latter case there's really no "savings" over
130     simply piping into Pflogsumm in the first place.  Multiple processes
131     get spawned, pipes opened, etc. either way.  It would add a little
132     convenience, is all.
133
134     So I could do it.  And there are a couple of ways I could do it.  And
135     my mind is certainly still open on the issue.  I'm just not convinced
136     there's a good reason to do it, is all.  And I'd like to avoid
137     "creeping over-feature-itis" if I can.  My position is *not* set in
138     stone on this issue.  In the mean-time:
139
140         zcat /var/log/maillog.0.gz |pflogsumm.pl <args...>
141
142         or
143
144         gunzip </var/log/maillog.0.gz |pflogsumm.pl <args...>
145
146     should do the trick quite nicely for you.
147
148     If you've a complex situation, for example: your logs aren't rotated
149     exactly at midnight, you might try something like:
150
151         (zcat /var/log/maillog.0.gz; cat /var/log/maillog) \
152             |pflogsumm.pl -d yesterday
153
154     See Also:  5. Processing Multiple Log Files
155               17. How Do I Get Pflogsumm To Email Reports To Me
156                   Daily/Weekly/etc.?
157
158
159 5. Processing Multiple Log Files
160
161     When processing multiple log files (say: an entire weeks worth of logs
162     that are rotated daily), it is important that Pflogsumm be fed them in
163     chronological order.  For performance and memory conservation reasons,
164     Pflogsumm relies on log messages "arriving" in the order in which they
165     were created.
166
167     If you do something like this:
168
169         pflogsumm /var/log/maillog*
170
171     you might not get what you expect!  Instead, try something like:
172
173         pflogsumm `ls -rt /var/log/maillog*`
174
175     A more complex example, where compressed logs are involved:
176
177         (zcat `ls -rt /var/log/maillog.*.gz`; cat /var/log/maillog) \
178             |pflogsumm.pl
179
180     Obviously, this depends on the file modification times for your logs
181     being reflective of their chronological order.  If that can't be
182     trusted, you're gonna have to get ugly.  Like in enumerating each
183     file, or as in:
184
185         (for each in 3 2 1 0; do
186              zcat "/var/log/maillog.$each.gz"
187          done
188          cat /var/log/maillog) |pflogsumm.pl
189
190     or (somewhat more efficiently--by running zcat only once):
191
192         (zcat `for ea in 3 2 1 0; do echo "/var/log/maillog.$ea.gz";
193          done`; cat /var/log/maillog) |pflogsumm.pl
194
195     [Note: I didn't actually run these.  So you would be well-advised
196      to double-check them.]
197
198     See Also:  4. Built-In Support for Compressed Logs
199               17. How Do I Get Pflogsumm To Email Reports To Me
200                   Daily/Weekly/etc.?
201
202
203 6. Time-Based Reporting and Statistics
204
205     There has been a small assortment of requests for different time
206     statistics reporting.  And adding this would be relatively straight-
207     forward.  (Just have to reach a consensus on exactly *what* should be
208     reported, and how.  This could easily get out of hand!)
209
210     There's only one *small* problem.  Ironically, it's time.
211
212     I've experimented with Pflogsumm grokking the log timestamps.  As a
213     matter-of-fact: the enhancement added in the 19990110-05 version
214     required that I do some of this.  My first pass was to use the Perl
215     timelocal() function to convert those sub-strings to an integer for
216     subsequent comparison operations.  Imagine my surprise when
217     performance of the resulting code was a factor of five (5) times
218     slower than that of its predecessor.  After a "remove the statements
219     until it got fast again" exercise, I found that the culprit was
220     timelocal().
221
222     As of version 19990321-01, Pflogsumm does by-domain stats reporting of
223     average and maximum delivery time by host/domain.  And an even earlier
224     version added by-hour and by-day message count reporting.  Anything
225     much beyond these is going to get "expensive."
226
227     If/when any additional time-based stats reporting is added: I think
228     they are definitely going to be optional.
229
230     One way you can make up for Pflogsumm's deficiency in this respect is
231     to use good ol' Unix tools like "grep" to pre-process your log files
232     before feeding them to Pflogsumm.  E.g.:
233
234         grep "Feb  9" /var/log/maillog |pflogsumm what_ever_args
235
236     Note that single-digit days-of-the-month have an additional leading
237     space in the logfiles, where the digit for two-digit dates would be.
238
239
240 7. By-domain Listings
241
242     I figured on the desire for this one from the start.  There are many
243     possibilities:
244
245         1) A single report, split by domain
246         2) An option to limit reporting to a particular domain
247
248     This issue is kind of tricky.  The popularity of Unix amongst
249     SysAdmins is testimony to the beauty of being able to wire- together
250     small, simple tools so that one can generate output to ones taste.
251     Anything I do is likely to make some Admins happy and others wishing
252     I'd done it "the other way".
253
254     One thought that occurred is to perhaps provide a couple of options
255     that would allow one to limit a particular report to
256
257         sender=regular_expression and/or recipient=regular_expression
258
259     The problem with this solution is that an Admin desiring to emit
260     custom reports for multiple domains would have to re-process the same
261     log multiple times--once for each desired domain.
262
263     So I'm still thinking about this one.
264
265
266 8. Reject, Deferred and Bounced Detail Info
267
268     I've actually only received one query about this so far, but there are
269     bound to be more.  So...
270
271     The "detailed" information in the "Reject", "Deferred" and "Bounced"
272     reports is a compromise.  Just take a stroll through your postfix logs
273     some day and observe the variation in how the "reason" for a
274     particular reject, defer, or bounce is reported.  Without putting a
275     lot of static comparisons for each-and-every case into the analyzer, I
276     have absolutely no hope is doing this very well.
277
278     Emitting the entire "reason" is not good, either.  The entire "reason"
279     string can be very long.  Depending on what somebody is using to
280     display Pflogsumm's output, the lines may well wrap-- producing output
281     that is no more readable than just grepping the logs.
282
283     And anything more I do to this end may soon be rendered moot.  After
284     Wietse gets most of the more important functional stuff out of the
285     way, Postfix logging is going to be completely re-written.  (Oh boy,
286     won't that be fun!)  I'm hoping I'll be able to get some input into
287     the process so the formatting is more amenable to automated
288     processing.  Wietse has indicated that such would be the case.
289
290     Also, please note my primary objective behind Pflogsumm (besides the
291     entertainment value): "just enough detail to give the administrator a
292     ``heads up'' for potential trouble spots."  It's not *supposed* to do
293     away with manual inspection entirely.
294
295     For those that really want all that extra detail in the log summary
296     reports, specify the "--verbose_msg_detail" switch.
297
298     See Also: 25. Sending Logfile Samples
299
300
301 9. "Orphaned" (no size) Messages
302
303     The Problem:
304
305         Message size is reported only by the queue manager.  The message
306         may be delivered long-enough after the (last) qmgr log entry that
307         the information is not in the log(s) processed by a particular run
308         of pflogsumm.pl.
309
310     The Result:
311
312         "Orphaned" messages.  These are reported by Pflogsumm as "Messages
313         with no size data."
314
315         This, of course, throws off "Recipients by message size" and the
316         total for "bytes delivered."  ("bytes in messages" in earlier
317         versions.)
318
319     The Solution:
320
321         "Memorize" message sizes by queue i.d.  Easy in theory.  Difficult
322         in practice.  At least at the moment.
323
324         You see, if Pflogsumm's going to "memorize" message sizes, it has
325         to have some definitive way to know when to delete a no-
326         longer-needed reference.  Otherwise the memory file will just grow
327         forever.
328
329     As with the "Reject, Deferred and Bounced Detail Info" issue above,
330     I'm hoping the get some input into future changes in logging issues.
331     In any event: maybe whatever comes out of the logging redesign will
332     provide a solution.
333
334     As of Pflogsumm version 1.0.12, the "Messages with no size data" report
335     can be turned off.
336
337
338 10. Pflogsumm misses/mis-diagnoses/mis-reports, etc. <whatever>
339
340     Are you using a real old version of VMailer?  As of pflogsumm.pl
341     version 19990220-06, versions of VMailer prior to 19981023 are no
342     longer supported.  Sorry.  Pflogsumm-19990121-01.pl will be made
343     permanently available from now on for those with out-of-date versions
344     of VMailer prior to 19981023.
345
346     Are you processing your log files in chronological order?  See item
347     "5: "Processing Multiple Log Files".
348
349     Pflogsumm.pl is being developed by me on my rather small-scale server
350     at home.  There are only two users on the system.  And I do no
351     mail-forwarding.  So the log samples I have to work with are
352     commensurately limited.
353
354     If there's something that Pflogsumm is not doing, or not doing right,
355     let me know what it is, what you think it ought to do, and send me a
356     representative sample of *real* log entries with which to work.
357
358     See Also: 5. Processing Multiple Log Files
359               12. Pflogsumm just doesn't work or doesn't report anything
360               15. Pflogsumm's numbers don't add up
361               19. New Red Hat install - Pflogsumm no longer works!
362               21. Pflogsumm doesn't understand my log file format
363               25. Sending Logfile Samples
364
365
366 11. Pflogsumm is generating lots of "uninitialized value" warnings
367
368     Are you using a version of Perl lower than 5.004_04?  Perhaps with a
369     "beta" version of pflogsumm.pl?  If so, try turning off the "-w"
370     switch.  Pflogsumm as of 19990413-02beta appeared to work correctly
371     with Perl 5.003 in spite of the warnings.  (Those warnings didn't
372     appear with Perl 5.004.)
373
374     I don't guarantee that I'll remember to test future versions of
375     pflogsumm.pl against 5.003, but I'll try to :-).
376
377     You really should consider upgrading your Perl to 5.004 or later.
378
379
380 12. Pflogsumm just doesn't work or doesn't report anything
381
382     Did you *download* Pflogsumm as opposed to grabbing it by
383     "copy-and-paste" from a browser?  Copy-and-paste can result in lines
384     being unintentionally wrapped and hard-tabs being converted to
385     spaces.  This will break Pflogsumm.
386
387     Also, I've received a couple of reports by people downloading
388     Pflogsumm with Lynx that the download has long lines wrapped.
389     Naturally, this breaks Pflogsumm.
390
391     See Also: 10. Pflogsumm misses/mis-diagnoses/mis-reports, etc.
392                <whatever>
393               19. New Red Hat install - Pflogsumm no longer works!
394               21. Pflogsumm doesn't understand my log file format
395
396
397 13. Postfix Rejects Pflogsumm Reports Because Of Body Checks
398
399     You configure Postfix to do body checks, Postfix does its thing,
400     Pflogsumm reports it and Postfix catches the the same string in the
401     Pflogsumm report.  There are several solutions to this.
402
403     Wolfgang Zeikat contributed this:
404
405         #!/usr/bin/perl
406         use MIME::Lite;
407
408         ### Create a new message:
409         $msg = MIME::Lite->new(
410             From     => 'your@send.er',
411             To       => 'your@recipie.nt',
412             # Cc     => 'some@other.com, some@more.com',
413             Subject  => 'pflogsumm',
414             Date     => `date`,
415             Type     => 'text/plain',
416             Encoding => 'base64',
417             Path     =>'/tmp/pflogg',
418         );
419
420         $msg->send;
421
422     Where "/tmp/pflogg" is the output of Pflogsumm.  This puts Pflogsumm's
423     output in a base64 MIME attachment.
424
425     In a follow-up to a thread in the postfix-users mailing list, Ralf
426     Hildebrandt noted:
427
428         "mpack does the same thing."
429
430     The canonical FTP site for mpack is ftp.andrew.cmu.edu:pub/mpack/
431
432     The solution I came up with is to modify the body_checks statements to
433     ignore the strings when they're in a Pflogsumm report, as follows:
434
435     Bounce anything with 6 or more "$"s in a row...
436
437         /\${6,}/    REJECT
438
439     Which, of course, catches the line in the Pflogsumm report too.
440     So...
441
442         /^(?!\s+[0-9]+\s+).*?\${6,}/    REJECT
443
444     which reads "anything with 6 or more '$'s in a row that is not a line
445     beginning with one or more whitespace characters, followed by one or
446     more digits, followed by one or more whitespace characters."
447
448     (This is using PCRE's, btw.)
449
450     Note that my solution will be more computationally expensive, by a
451     *long* way, than encoding Pflogsumm's output into a format that
452     body_checks won't catch.
453
454     Robert L Mathews suggested the following solution
455
456         /^ {6,11}[[:digit:]]{1,6}[ km] /    OK
457
458     Placed at the beginning of a body_checks file, this will "pre-approve"
459     lines in Pflogsumm's output that might otherwise get caught.  That's
460     a POSIX regexp version.  A PCRE version of the same thing would be:
461
462         /^ {6,11}\d{1,6}[ km] /    OK
463
464
465 14. Pflogsumm Reports Double Traffic When Anti-Virus Scanner Used
466
467     Sadly, there's absolutely nothing I can do about this :-(.
468
469     The problem arises because of the way in which anti-virus scanning is
470     handled by Postfix.  Basically, Postfix "delivers" each email to the
471     anti-virus scanner and the anti-virus scanner re-sends it through
472     Postfix.  So each email really is received twice and sent/delivered
473     twice.
474
475     And yes, I tried.  I really, really tried.  If I recall correctly, I
476     spent come two days mucking-about with this problem.  Actually thought
477     I had it once or twice.  But the results inevitably failed regression
478     testing.  At the end of this, and with some more careful thought, I
479     realized it just wasn't possible.  If you think you can prove me
480     wrong, please do so.  I'd be quite pleased to be proven wrong on this
481     one.
482
483     johnfawcett at tiscali-dot-it believes he's done it.  You may find
484     prefiltering your log with his "prepflog" does it for you.  You can
485     find it at <http://web.tiscali.it/postfix/>.
486
487
488 15. Pflogsumm's numbers don't add up
489
490     Pflogsumm reports more "delivered" than "received"
491
492         Naturally.  A single email message can have multiple recipients.
493
494     Pflogsumm reports more "rejected" than "received"
495
496     Why doesn't delivered + deferred + bounce + rejected = received?
497
498         Some rejects (header and body checks, for example) happen in
499         "cleanup," after alias lists are expanded.  Thus a single received
500         message will be rejected multiple times: once for each recipient.
501
502     The "size=" fields, multiplied by their "nrcpt=" fields, when added-up
503     yields a total higher than Pflogsumm's "bytes delivered" total.
504
505         Pflogsumm doesn't count something delivered until it actually *is*
506         delivered.  Nrcpt only suggests the number of intended recipients,
507         not how many are actually deliverable.  Only if there were no
508         bounces, rejects, defers or other undeliverables for everything
509         that was received would a calculation such as that above yield the
510         proper value.
511
512     Pflogsumm's "% rejected" doesn't add up
513
514         The "percent rejected" and "percent discarded" figures are only
515         approximations.  They are calculated as follows (example is for
516         "percent rejected"):
517
518             percent rejected =
519
520                 (rejected / (delivered + rejected + discarded)) * 100
521
522         Given the issues discussed above, this is really the best that can
523         be hoped-for, IMO.
524
525     I consistently see more "delivered" than "received."  How is that
526     possible?
527
528         Any message that's got multiple recipients in the "To:,"
529         "Cc:," and "Bcc:" fields will result in a single "received"
530         with multiple "delivered"s, as well as, possibly, multiple
531         "rejects" (or reject warnings, discards or holds), depending
532         on where in Postfix' processing the rule was that resulted
533         in the reject, etc.
534
535     See Also: 10. Pflogsumm misses/mis-diagnoses/mis-reports, etc.
536                   <whatever>
537
538
539 16. Hourly stats for reports run without "-d" option are halved
540
541     Scenario: On day #1 of a fresh logfile, you run Pflogsumm with "-d
542     today" and the next day you run it with no "-d" option.  The "Per-Hour
543     Traffic" statistics are approximately halved.  How can this be?
544
545     Note that when you run Pflogsumm on a logfile that contains multi-day
546     logfile entries, Pflogsumm automatically changes the per-hour stats to
547     daily traffic averages.  If there's even *one* logfile entry from
548     another day, all of the per-hour stats will be divided by two.  Unless
549     you rotate logfiles *precisely* at midnight--and it's unlikely you can
550     guarantee that happening--there's no way to prevent this.
551
552
553 17. How Do I Get Pflogsumm To Email Reports To Me Daily/Weekly/etc.?
554
555     Excuse me?  You're running a mailserver and you don't know how to use
556     cron to run things on a scheduled basis and pipe the output to
557     something that'll email it to you?
558
559     Oh. My. Lord.
560
561     *sigh*
562
563     Here's my crontab entries:
564
565     10 0 * * * /usr/local/sbin/pflogsumm -d yesterday /var/log/syslog \
566         2>&1 |/usr/bin/mailx -s "`uname -n` daily mail stats" postmaster
567
568     10 4 * * 0   /usr/local/sbin/pflogsumm /var/log/syslog.0 \
569         2>&1 |/usr/bin/mailx -s "`uname -n` weekly mail stats" postmaster
570
571     (Those are actually each a single line.  I line-broke them [and
572     signified that with the "\"s] for readability.)
573
574     The first generates stats for the previous day and is run *after*
575     midnight.  The second is run against the previous week's entire log.
576     (I rotate my logs weekly.)
577
578     If you rotate your logs on a different schedule, want monthly reports,
579     etc., I leave it as an exercise to you, the reader, to figure out how
580     to concatenate several logs to stdout and feed that to Pflogsumm.
581
582     See Also: 4. Built-In Support for Compressed Logs
583               5. Processing Multiple Log Files
584               The Unix manual pages for "cron," "crontab," "cat,"
585               "zcat," "gzip," "gunzip," "mail," "mailx," etc.
586
587
588 18. How Can I View Pflogsumm's Reports In My Web Browser?
589
590     Just direct Pflogsumm's output to a file, call it "something.txt" or
591     whatever, and look at it with your browser :).  If you want to get
592     fancy, create a post-processing shell script that'll create a
593     date-tagged file, like "mailstats-20030216.txt".  It's easy.
594
595     See Also: Pflogsumm Through A Browser, on Pflogsumm's home page.
596
597
598 19. New Red Hat install - Pflogsumm no longer works!
599
600     From some email exchanges with a couple of people that reported
601     this...
602
603         "It appears the Pflogsumm is broken with RedHat9.  I can take
604          the same log file and run it under Solaris9/RedHat 7.3 (perl 5.8
605          on both) without a problem, but it breaks on RH9."
606
607         "Oops.  Sorry about the false alarm.  This is an issue with
608          some of the other Perl scripts that are out there due to Red Hat
609          8/9 using LANG=en_US.UTF-8
610
611          Changing the locale to "POSIX" fixes this...
612              LANG=C
613
614          Note that Pflogsumm works fine when run through cron.daily, as
615          cron has different environment settings."
616
617         "Ah, the good old RH8/9 UTF-8 strikes again.  I should have
618          known. Setting  LANG to either en_US or C fixes the problem."
619
620     What the above means is that you have to change the "LANG" environment
621     variable from "en_US.UTF-8" to "en_US" or "C".  E.g.:
622
623         LANG="en_US"
624         export LANG
625
626     in your shell.  Or you could add these commands to your login
627     profile.  (I.e.: $HOME/.bash_profile, if you're using bash.)  Or set
628     the system-wide default in /etc/sysconfig/i18n.  My RH boxes have LANG
629     set to "en_US" there, and everything seems to work fine.  (If you set
630     it in your profile or the system-wide default, you'll need a fresh
631     login for it to take effect, obviously.)
632
633     See Also: 10. Pflogsumm misses/mis-diagnoses/mis-reports, etc.
634                <whatever>
635               12. Pflogsumm just doesn't work or doesn't report anything
636               21. Pflogsumm doesn't understand my log file format
637
638
639 20. How can I best format my custom reject messages for display in
640     Pflogsumm's output?
641
642     Reject reason strings found in the mail log will be truncated at the
643     first comma (","), colon (":") or semi-colon (";").  If you want a
644     "clause" in your reject message to appear in Pflogsumm's output,
645     without having to specify --verbose_msg_detail, use a punctuation mark
646     other than one of those three, such as a dash ("-").
647
648
649 21. Pflogsumm doesn't understand my log file format
650
651     I've received several requests to modify Pflogsumm's log file format
652     regular expression matching to accommodate "non-standard" log file
653     formats.  I'm not inclined to honour such requests.  The regexp that
654     identifies Postfix' log file entries is nearly incomprehensible as it
655     is.  If your log file format has extra fields (e.g.: FreeBSD syslogd
656     with "-v -v" specified), or, as in one case (metalog), is lacking
657     fields, and you insist on doing things that way, I recommend you
658     code-up a little pre-filter to mung the format into a standard one.
659
660     See Also: 10. Pflogsumm misses/mis-diagnoses/mis-reports, etc.
661                <whatever>
662               12. Pflogsumm just doesn't work or doesn't report anything
663               19. New Red Hat install - Pflogsumm no longer works!
664
665
666 22. Why Isn't There Any Mention Of "Monkey Butler" In The FAQ?
667
668     A friend of mine asked me if I'd put the phrase "monkey butler" in
669     the FAQ.  The answer is no.  Pflogsumm is used by some rather large
670     corporations.  There are credibility issues.  Sorry. :)
671
672
673 23. Translating Pflogsumm (Support for Internationalization)
674
675     Unfortunately, Pflogsumm doesn't currently have i18n support.
676
677     It wasn't until at least Perl 5.6 that i18n was included as part of
678     the base distribution.  Since, last time I looked, 5.005* was still
679     the most widely-used version of Perl (that's what I'm still running
680     everywhere, too), I can't put i18n in without chancing breaking
681     things right-and-left for the majority of my customers.
682
683     Even with Perl 5.6 and above, it was mentioned in postfix-users, by
684     Liviu Daia, that
685
686         "Perl 5.6+ has locales.  Locales can give you localized
687          dates, charsets, standard error messages etc., but it
688          won't automatically switch languages of the strings
689          defined in your program.  For that, you still need
690          gettext or something equivalent."
691
692     So I'm not clear on the future of i18n support in Pflogsumm.  But I'm
693     keeping an eye on things.  Proper i18n support has long been one of
694     the top things on my own wish list!
695
696     Prospective translators are urged to translate *only* the
697     stable/production versions.  Beta and Alpha versions can sometimes
698     change rapidly.
699
700     If you do translate Pflogsumm, let me know and I'll put a link to it
701     on Pflogsumm's main web page.
702
703
704 24. Pflogsumm may sometimes calculate "yesterday" incorrectly
705
706     As Wieland Chmielewski aptly noted:
707
708         Subroutine get_datestr incorrectly assumes that each day of
709         the year comprises 24 hours. In those countries which
710         participate in Daylight Saving Time policy there is one day
711         with 23 hours and one day with 25 hours. So, chances are (for
712         1 hour within those days) that get_datestr actually returns
713         either "the day before yesterday" or "today" instead of
714         "yesterday" as requested.
715
716     Right you are, Wieland, and thanks for the catch.
717
718     Problem is, of course, there's really no clean, easy, certain fix.
719     The work-around is to stay well clear of DST never-never land with
720     your cron jobs.
721
722
723 25. Sending Logfile Samples
724
725     Here's the deal with whatever you may send me in the way of log
726     samples:
727
728         . Obfuscate them if you want.  But take care not alter them
729           in such a manner that they're not accurate wrt the "realism" of
730           the data, make sure the field formatting is not altered, and
731           that the order of the log entries is not altered.
732
733         . The world is an unsafe place for your data, no matter where
734           it might reside.  But I'll do my level best to ensure that your
735           data does not fall into the hands of others.
736
737         . If you want, I'll PGP-encrypt the data when it's not in
738           use.
739
740         . You can PGP-encrypt it when you send it to me if you're
741           concerned.  My PGP public key can be found on my Web site and at
742           the PGP public key servers.
743
744         . If you want, I'll delete the sample data when the work is
745           done.  But I would *like* to keep it around for future
746           regression-testing.  It's your call.  Let me know.
747
748
749 26. From Where Can I  Obtain Pflogsumm?
750
751     http://jimsun.LinxNet.com/postfix_contrib.html
752
753
754 Created: 15 Feb., 1999 / Last updated: 10 April, 2004