Re: [exim] Best way to pass information between message and …

Top Page
Delete this message
Reply to this message
Author: W B Hacker
Date:  
To: exim users
Subject: Re: [exim] Best way to pass information between message and its' bounce
jori.hamalainen@??? wrote:
>> - Something similar applies w/r global variables.
>
>> As Exim normally spawns a child process for each connection,
>> changes are not readily shareable across multiple such instances.
>
>> That said, it is common to use flat-files or CDB/BDB/DB or SQL
>> to hold information written by Exim or other processes, such
>> as white/grey/black lists. The information will at least be
>> actioned on the next 'new' run of a child process with no
>> restart of the parent Exim daemon required.
>
> Thanks for quick answers, so the thing are like I suspected.
>
> However one caveat in global stats-variables when using database for
> it is that if I need to write diffent lines into it by *end* status of
> transport (timed out, successfull, denied etc). Can that be done?


One would need a 'write' embedded in each router/transport set that
might be activated (at all), as the completion of (the last of
potentially several) delivery has no independent follow-on activity.

'log_selector = +all' will show you which router/transport set(s) have
acted, including queue time and delivery time.

>
> As if I want to graph in Cacti/MRTG the successfull & unsuccessfull
> transport attempts.
>
> BR,
> Jori
>


You probably won't need to add anything at all for that.

Exim has a stats tool that can probably pre-digest whatever you need
more easily by analyzing the logs.

'+all' produces too much minutiae for long-running use, but you can
easily tailor what is and is not logged.