Hey everybody

I have a logger supervised by the very s6-svscan instance it logs through the fifo trick. Now sending SIGTERM to the s6-svscan process won't work, since it waits for the logger forever,
which in turn waits for s6-svscan to close the fifo.
I have solved this by the following script:

.s6-svscan/SIGTERM

| #!/bin/execlineb -P
|
| # in case no message has been sent yet
| foreground { echo }
|
| foreground { s6-svc -h s6-svscan-log }
|
| s6-svscanctl -t .

This has the obvious downside that the catch all logger is brought down early. Since this is not the main supervision tree, I require the ability to stop this instance of s6-svscan. This also means that it is not too bad that the catch all logger is brought down early,
since logs are propagated up the hierarchy.

Still, I wonder whether there is a more elegant solution to this.

Regards

Paul

Attachment: OpenPGP_0x71C7C85A2EA30F62.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to