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

Daniel Parthey daniel.parthey at informatik.tu-chemnitz.de
Mon Feb 25 23:34:43 EET 2013


Timo Sirainen wrote:
> On 25.2.2013, at 0.53, Daniel Parthey <daniel.parthey at informatik.tu-chemnitz.de> wrote:
> 
> > # 2.1.10: /etc/dovecot/dovecot.conf
> > # OS: Linux 2.6.32-45-server x86_64 Ubuntu 10.04.4 LTS 
> > deliver_log_format = mailbox: deliver: session=<%{session}> msgid=%m from=%f: %$
> > 
> > produces log messages always containing "session=<session}>", like this one:
> > 
> > Feb 24 09:22:09 10.129.3.233 dovecot: lmtp(3484, user at example.org): mbnWK6/NKVGcDQAAiWCYmA: sieve: mailbox: deliver: session=<session}> msgid=<20130224082208.8A807C0CF at mx01.example.org> from=postmaster at example.org: stored mail into mailbox 'INBOX/postmaster'
> > 
> > http://wiki2.dovecot.org/Variables leads me to the assumption
> > that %{session} works "everywhere" and for deliver_log_format too.
> 
> Added "(almost)" :)
> 
> > Is deliver_log_format variable expansion handled differently
> > from login_log_format_elements and mail_log_prefix?
> 
> Very differently. Hmm.
> 
> The idea behind imap/pop3 session IDs is to track the session through proxies, authentication, etc.
> 
> 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.

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 ([10.129.3.193])
  by mail01.example.org (Dovecot) with LMTP id vdSeD+CrK1HXZQAAiWCYmA
  ; Mon, 25 Feb 2013 19:25:02 +0100
Received: from mx01.example.org ([127.0.0.1])
  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?

Regards
Daniel
-- 
https://plus.google.com/103021802792276734820


More information about the dovecot mailing list