Mailing List Archive

[Bug 2982] New: Writing logs to standard output
https://bugs.exim.org/show_bug.cgi?id=2982

Bug ID: 2982
Summary: Writing logs to standard output
Product: Exim
Version: 4.96
Hardware: x86
OS: Linux
Status: NEW
Severity: wishlist
Priority: medium
Component: Logging
Assignee: unallocated@exim.org
Reporter: ivanov17@riseup.net
CC: exim-dev@exim.org

Exim cannot write logs to standard output. This creates some problems when Exim
is running as a container process.

I can read container logs when I run the daemon with `-bdf` option, but this
only works with pseudo-TTY allocated to the container. Unfortunately, I can't
collect logs from such containers.

I have searched the web for a solution, but everything that I found is ugly.
First, I can create symlinks to /dev/stdout and /dev/stderr instead of log
files. Another option is to run multiple processes in a container (xtail or a
syslog daemon). That is a wrong way, but even if I do, I need to write simple
process manager and in the case of the syslog daemon, I have to run it as root,
because it has to create /dev/log socket.


It would be great that Exim could write logs to standard output and we could
use someting like log_file_path = stdout in the config to enable this.

--
You are receiving this mail because:
You are on the CC list for the bug.
--
## List details at https://lists.exim.org/mailman/listinfo/exim-dev Exim details at http://www.exim.org/ ##
Re: [Bug 2982] New: Writing logs to standard output [ In reply to ]
On Fri, 10 Mar 2023, admin--- via Exim-dev wrote:

> https://bugs.exim.org/show_bug.cgi?id=2982
>
> Bug ID: 2982
> Summary: Writing logs to standard output
> Product: Exim
> Version: 4.96
> Hardware: x86
> OS: Linux
> Status: NEW
> Severity: wishlist
> Priority: medium
> Component: Logging
> Assignee: unallocated@exim.org
> Reporter: ivanov17@riseup.net
> CC: exim-dev@exim.org
>
> Exim cannot write logs to standard output. This creates some problems when Exim
> is running as a container process.
>
> I can read container logs when I run the daemon with `-bdf` option, but this
> only works with pseudo-TTY allocated to the container. Unfortunately, I can't
> collect logs from such containers.
>
> I have searched the web for a solution, but everything that I found is ugly.
> First, I can create symlinks to /dev/stdout and /dev/stderr instead of log
> files. Another option is to run multiple processes in a container (xtail or a
> syslog daemon). That is a wrong way, but even if I do, I need to write simple
> process manager and in the case of the syslog daemon, I have to run it as root,
> because it has to create /dev/log socket.
>
>
> It would be great that Exim could write logs to standard output and we could
> use someting like log_file_path = stdout in the config to enable this.

Does
log_file_path = /proc/self/fd/1
help ?

--
Andrew C. Aitchison Kendal, UK
andrew@aitchison.me.uk

--
## List details at https://lists.exim.org/mailman/listinfo/exim-dev Exim details at http://www.exim.org/ ##