Michael,
> I thought I once read that you want the amavisd value (max_servers)
> higher than postfix since the release form quarantine function would use
> an amavisd server.

If you only use amavisd-release once in a blue moon and it can wait a
little when all child processes are busy checking mail, it is fine to have 
Postfix max_proc setting the same as $max_servers.

If amavisd-release is used regularly, perhaps by some GUI in end-user's hands,
then it may be useful to have one additional amavisd child process in order
to promptly respond to amavisd-release requests.

Dustin,
> lost connection with localhost[127.0.0.1] while sending end of data -- 
message may be sent more than once
> ... it also has many (2000+) temp directories under /var/amavis/tmp that
> have been 'left behind' over the last 4 or 5 weeks...

Given these symptoms, the first thing to check is like Gary says, i.e. see if 
amavisd-nanny reports any processes that 'went away' from the last time
the amavisd-nanny was run. It needn't be running all the time, but it makes
a prudent habit to run it for few seconds every few days, and see if it has
anything to report. Any instance of 'went away' should be investigated,
unless you already know what might have been a cause (like a disk full).

After you notice a case of lost or runaway process (either reported by
amavisd-nanny, or noticing a leftover directory, or seeing Postfix log
entry on 'lost connection with localhost'), the next step is to grep the
log for that specific id, and see how processing of that message
went, and what was the last thing reported in the log for that specific id.
In order for this step to be useful, it is best to have a log level 5 (or 4),
to be able to see at what stage of mail checking processing got stuck.
Besides looking for processes that never finish mail checking,
notice also cases where mail checking does finish, but way after Postfix
has already given up and logged 'lost connections' - timestamps are an
obvious clue in such cases.

I keep two syslogd entries for amavisd, one to log regular level-0 entries
for archival an user support purposes, and another to a separate file,
at log level 5 and at syslog priority debug, which can be rotated often and 
need not be archived, but it provides useful information if it turns out that 
a lost or runaway processing occurred during last few days. One may
throw-in an additional medium-level log file, when one is interested in TIMING 
reports and a little more detail that log-0 entries. Example syslog.conf:

user.notice  /var/log/amavisd.log
user.info    /var/log/amavisd-info.log
user.debug   /var/log/amavisd-debug.log

On Linux don't forget to prefix filenames with a '-'
to turn off syncing after every write.

Corresponding amavisd.conf setting could be:

$DO_SYSLOG = 1;
$SYSLOG_LEVEL = 'user.debug';
$log_level = 5;


  Mark


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
AMaViS-user mailing list
AMaViS-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amavis-user
AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3
AMaViS-HowTos:http://www.amavis.org/howto/

Reply via email to