From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.2 required=3.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id E6DD61F61A for ; Mon, 1 Aug 2022 21:24:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=80x24.org; s=selector1; t=1659389088; bh=zQ2Ybxd4olriz0jhen00FgddhlLvF7DQEcoQdAkcpCo=; h=From:To:Subject:Date:In-Reply-To:References:From; b=HfNWWdpPuoTac60SM4VX7/f+dO4y38EqpWvB8Yb8vWUg4TVgqwOjrNAvXuZkaS0Rq bS54UqUSwkLfSzCk8eG7X0j3sm86MSrcwZ/2m+Eo3wV1pTv60yto+IrelO3moKCVb4 QrwOw9U26rWiAwmFoz4s8x7K9HD39CDZ2PLZHJwI= From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 4/6] daemon: add diagnostics about inherited/bound listeners Date: Mon, 1 Aug 2022 21:24:45 +0000 Message-Id: <20220801212447.270000-5-e@80x24.org> In-Reply-To: <20220801212447.270000-1-e@80x24.org> References: <20220801212447.270000-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: These are helpful for diagnosing configuration problems, as well as a bug (to be fixed in the following commit). --- lib/PublicInbox/Daemon.pm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/PublicInbox/Daemon.pm b/lib/PublicInbox/Daemon.pm index 87a359e7..3264bb6c 100644 --- a/lib/PublicInbox/Daemon.pm +++ b/lib/PublicInbox/Daemon.pm @@ -129,6 +129,7 @@ sub load_mod ($;$) { die "multiple psgi= options specified\n" if @$p > 1; check_absolute('psgi=', $p->[0]) if $daemonize; $tlsd->{psgi} = $p->[0]; + warn "# $scheme://$addr psgi=$p->[0]\n"; } } for my $f (@paths) { @@ -138,6 +139,7 @@ sub load_mod ($;$) { $p = File::Spec->canonpath($p->[0]); open_log_path(my $fh, $p); $tlsd->{$f} = $logs{$p} = $fh; + warn "# $scheme://$addr $f=$p\n"; } \%xn; } @@ -247,8 +249,10 @@ EOF warn "error binding $l: $! ($@)\n" unless $s; umask $prev; if ($s) { - $listener_names->{sockname($s)} = $s; $s->blocking(0); + my $k = sockname($s); + warn "# bound $scheme://$k\n"; + $listener_names->{$k} = $s; push @listeners, $s; } } @@ -434,11 +438,12 @@ sub inherit ($) { if (my $k = sockname($s)) { my $prev_was_blocking = $s->blocking(0); warn <<"" if $prev_was_blocking; -Inherited socket (fd=$fd) is blocking, making it non-blocking. +Inherited socket ($k fd=$fd) is blocking, making it non-blocking. Set 'NonBlocking = true' in the systemd.service unit to avoid stalled processes when multiple service instances start. $listener_names->{$k} = $s; + warn "# inherited $k fd=$fd\n"; push @rv, $s; } else { warn "failed to inherit fd=$fd (LISTEN_FDS=$fds)";