> > My boss wants all email from and all email to a certain email address
> > to be logged to a file somewhere for archival purposes. Sounds simple
> > enough, right? I am figuring I could do this with a system filter like so:
> > # Exim filter
> > if $message_headers contains "(test|Test)@domain.com" then
> > logfile /var/log/exim_filterlog
> > logwrite "$tod_log $message_id message-copy \
> > $sender_address ($sender_host_name[$sender_host_address]) \
> > => $recipients (recipients=$recipients_count) \
> > subject=$header_subject"
> > save /mail/spool/domain.com/test.copy 0600
> > save /mail/archive/domain.com/test 0600
> > endif
> >
> > This does not seem to work. No log message gets written to
> > /var/log/exim_filterlog, no copy of incoming or outgoing messages
> > gets placed in /mail/spool/domain.com/test.copy or
> > /mail/archive/domain.com/test, but the message does get delivered
> > to the correct mail spool (/mail/spool/domain.com/test)
>
> (1) Try running a delivery with -d11 set to get the filter debugging
> information.
This is what I get:
LOG: 0 MAIN PANIC
== /mail/spool/domain.com/test.archive <message filter> transporting
defer (-1): No transport specified for local delivery from system filter -
check message_filter_file_transport or message_filter_directory_transport
Any ideas? If this is just supposed to save to a file in mailspool format,
why is it using a transport?
> (3) Make sure the files all all writeable by the Exim user.
yup, all owned by the proper user...
-J