So it seems that s6-log does not like buffered output. I modified
doorknob to vsnprintf into a buffer and then tried various output
methods.
1. puts(msg) Failed as expected (basically the same as vprintf).
2. write(1, msg, strlen(msg)) Worked! So non-buffered ok.
3. fputs(msg, stderr) Then add `fdmove -c 2 1' to the run file works!
So fdmove seems to fix things up. Which is probably why most people
don't see this problem.
Obviously, for 2 and 3 I did a strcat(msg, "\n").
So I think I will go with 2, but to stderr to follow Jonathan de Boyne
Pollard's comment "Unix conventions: Logs go to standard error".
Thanks everybody for the input. I probably would not have suspected the
buffered output was a problem.
Cheers,
Sean
Received on Sun Jan 27 2019 - 18:56:46 UTC
This archive was generated by hypermail 2.3.0
: Sun May 09 2021 - 19:44:19 UTC