From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=MAILING_LIST_MULTI, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 13359 invoked from network); 20 Aug 2022 14:58:20 -0000 Received: from alyss.skarnet.org (95.142.172.232) by inbox.vuxu.org with ESMTPUTF8; 20 Aug 2022 14:58:20 -0000 Received: (qmail 12373 invoked by uid 89); 20 Aug 2022 14:58:45 -0000 Mailing-List: contact supervision-help@list.skarnet.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Received: (qmail 12366 invoked from network); 20 Aug 2022 14:58:45 -0000 From: "Laurent Bercot" To: supervision@list.skarnet.org Subject: Re: Trouble starting services on boot with s6-rc Date: Sat, 20 Aug 2022 14:58:18 +0000 Message-Id: In-Reply-To: References: <18dc7efd-9ce3-4350-b051-49c047e32e7a@www.fastmail.com> Reply-To: "Laurent Bercot" User-Agent: eM_Client/9.1.2109.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable >I am a bit ashamed to admit I cannot find the logs. From reading https://w= iki.gentoo.org/wiki/S6_and_s6-rc-based_init_system#logger I thought maybe I = should be looking for file /run/uncaught-logs but could not find any such= file in my docker instance(I understand, docker is not Gentoo). By default, s6-overlay containers don't have a catch-all logger, so all the logs fall through to the container's stdout/stderr. You can have an in-container catch-all logger that logs to /run/uncaught-logs if you define S6_LOGGING to 1 or 2. >While the docs did speak a lot to the directory structure used by s6, I st= ill am finding it quite hard to figure out what the default directories are = for some things. (e.g. I was clear on where my uncompiled s6-rc service di= rectories should go but they seemed to "magically" get complied on boot and = show up in a scan_dir) That's a thing with s6, and even s6-rc: it does not define policies,=20 but only mechanism. In other words: it lets you place things wherever you=20 want, there's no default. Of course, higher-level software that uses the s6 bricks needs to=20 define policies in order to get things done; that's why s6-overlay is a set of scripts putting directories in certain places and calling s6 binaries with certain arguments and options. s6-overlay uses s6-rc-compile under the hood, so it compiles your database for you at boot time, to keep things as simple as possible=20 (even though it's not the optimal way of doing it). >One additional item. As seems like not a great idea to smash the timeout f= or all services. Is there any way to adjust it on a per service basis? If n= ot >consider me a +1 to kindly add it to a wishlist somewhere. You can define timeout-up and timeout-down files in your s6-rc source definition directories, they do just that. :) >n.b. You should put up a BTC lightning "tip bucket" somewhere :) Thank you. Please see this Twitter thread: https://twitter.com/laurentbercot/status/1209247040657674240 -- Laurent