[Dovecot] %{session} does not work with deliver_log_format

Timo Sirainen tss at iki.fi
Wed Mar 20 18:27:26 EET 2013

On 25.2.2013, at 23.34, Daniel Parthey <daniel.parthey at informatik.tu-chemnitz.de> wrote:

>> LMTP has a completely different session ID currently, which gets reset for each mail delivery and is written to the Received: header that it writes.
>> It doesn't traverse through proxies, because each delivery gets a different ID anyway.
>> So .. Why is it that you want this? For matching a log line with a Received:
>> header? I guess that could be done, but the name should probably be different
>> from %{session} so it won't get mixed up with what IMAP/POP3 uses it for.
> I simply run an LMTP director/proxy to prevent NFS locking issues
> and in error cases I want to investigate where the mail has gone
> (through the director lmtp to the mailbox lmtp). I thought this
> is what "session IDs" were intended for.

The SMTP server should log the delivery ID that the backend generates, and you should be able to grep for it, right?

> Obviously, the generated ID is a different one for director and mailbox,
> looking at the Received: lines of a single message:
> Received: from mail01.example.org ([])
>  by mail01.example.org (Dovecot) with LMTP id vdSeD+CrK1HXZQAAiWCYmA
>  ; Mon, 25 Feb 2013 19:25:02 +0100
> Received: from mx01.example.org ([])
>  by mail01.example.org (Dovecot) with LMTP id fu7aIn6sK1EMaQAAiWCYmA
>  ; Mon, 25 Feb 2013 19:25:02 +0100
> What would you suggest how to track an LMTP delivery through a
> director proxy? Should one use the MessageID to correlate the
> lmtp log entries in dovecot-director.log and dovecot.log?

I was first thinking about having LMTP proxy log the delivery ID, until I noticed that LMTP proxy doesn't log anything about delivered mails currently. I'm not really sure if that would be of any actual help?..

More information about the dovecot mailing list