>Hi all - I had a use-case where I needed s6-tcpclient to be completely
>silent, no matter the error (my existing system reads standard output
>and standard error, and tries to parse it).
Sorry, not applying this patch. Parsing stderr is not supported:
this would make error message format a public API, which it isn't
(and depends on the libc anyway). That's the main difference between
stdout and stderr: stdout messages are API, but stderr messages are
not - they are ultimately made for human consumption, not machine
consumption.
> Long-term, I'm going to change the system to log (but not parse)
>standard
>error from child processes. In the meantime, I figured this could be a
>useful feature for others.
No. Don't help people mistakenly rely on whether stderr prints
something or not. :P
In the case of s6-tcpclient, verbosity 0 (-q) ensures it only writes to
stderr if it dies, meaning that your application is not run anyway. So
you can have a completely silent s6-tcpclient if your application runs.
And of course, you can always redirect stderr to /dev/null, but that
silences everything, including your application ^^
--
Laurent
Received on Thu Apr 12 2018 - 15:27:23 UTC