Robert,
You're right. What I thought was ...
rdeliver (delivery attempt)
is actually
redliver (number of recipients)
so the r/l deliver record format, space delimited, looks like:
mm:dd ;day:month
mm:ss ;min:sec
processname-(PID) ; useless for accouting purposes,
probably rdeliver/ldeliver
destination-MTA
destination-mail-account
'multiple' ;present if (number of recipitents) > (1)
(number of recipients)
<source-mail-address>
msg-length-bytes
The variable format is a pain but I think it can be easily handled with the
following, single parsing condition.
> The records with "(1)" seem to send single message. It looks like some
have a number greater than one and the word multiple in the record.
yep, I agree. The word 'multiple' seems to be redundant with (number of
recipients).
>It looks like one would need to parse more than ldeliver and rdeliver
records.
I chased down a few 'multiple' records and here's what I conclude as a
parsing refinement:
If an rdeliver line includes ' multiple ', then ignore the line as an
accounting record.
... simply because a 'multiple' line will spawn (n) single redliver fully
qualified lines for each destination in the original rdliver line.)
> How would you figure out where these messages are going?
The resulting single rdliver (1) lines (spawned by the multiple rdeliver
line) fully qualify the destination MTA and mail-account.
btw, Robert, if you could knock together a PERL script which reads a log
file (inpath\filename as script input parameter) and selected only the "r/l
deliver .... (1)" lines to be written to a ';' field-delimited text file
(out path\filename as script input parameter) with one record/line, then
any of us could easily import such a file into Access or SQL. This
approach removes the ODBC complexity both from a) developing the PERL
script and b) from a script user setting up PERL ODBC for his database.
Regards,
Len
Please visit http://www.ipswitch.com/support/mailing-lists.html
to be removed from this list.