On 01.06.2018 05:46, SATOH Fumiyasu wrote:
On Fri, 01 Jun 2018 03:40:07 +0900, Timo Sirainen wrote:
When running multiple instances of dovecot on the same host (or running multiple docker container), it is hard to distinguish logs from different processes: the syslog entries are all prefixed with the same identifier "dovecot" It is hardcoded here: https://github.com/dovecot/core/blob/master/src/lib-master/master-service.c#...
Would it make sense to use the already implemented instance-name as syslog ident? How do others solve that problem? I have a patchset to implement that. Please see the attachment. Subject: [PATCH 1/2] master: Do not prepend "dovecot-" to a process name Why not? I'd think it would be useful to always find dovecot processes. I want to use 'director/*' names, not 'dovecot-director/*' for short name.
- openlog(ident, options, facility);
- static char *syslog_ident = NULL;
- i_free(syslog_ident);
- syslog_ident = i_strdup(ident);
- openlog(syslog_ident, options, facility);
I don't think this is necessary? Sorry. I'm not expert of Dovecot implementation...
Also not needed. I think $INSTANCE_NAME environment variable is useful for external program, e.g., custom checkpassword program.env_put(t_strconcat("INSTANCE_NAME=", set->instance_name, NULL));
But yeah, I guess in general it would make sense to use instance_name for syslog ident.
Thanks.
This feature has been merged.
Aki