From 86e8e7fd21f8fc3eea3a55a4928ca1a68c8af3f2 Mon Sep 17 00:00:00 2001 From: embr Date: Mon, 20 Dec 2021 10:34:57 +0100 Subject: [PATCH] Log when listening (#350) * Log when starting letsencrypt endpoint + clearer errors Running `gotosocial server` with the default configuration will try to bind to :80 and listen for letsencrypt challenges, which will fail if running as non-root (w/o capabilities), or if eg. nginx hogs the port. When that happens, this should make it more obvious what's wrong. * Log what address/port we're listening on Always nice not to have to guess. Also feels more consistent than just doing it for the letsencrypt endpoint. --- internal/router/router.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/internal/router/router.go b/internal/router/router.go index aa588906f..92f90c483 100644 --- a/internal/router/router.go +++ b/internal/router/router.go @@ -79,13 +79,15 @@ func (r *router) Start() { // serve the http handler on the selected letsencrypt port, for receiving letsencrypt requests and solving their devious riddles go func() { listen := fmt.Sprintf("%s:%d", bindAddress, lePort) + logrus.Infof("letsencrypt listening on %s", listen) if err := http.ListenAndServe(listen, r.certManager.HTTPHandler(http.HandlerFunc(httpsRedirect))); err != nil && err != http.ErrServerClosed { - logrus.Fatalf("listen: %s", err) + logrus.Fatalf("letsencrypt: listen: %s", err) } }() // and serve the actual TLS handler go func() { + logrus.Infof("listening on %s", r.srv.Addr) if err := r.srv.ListenAndServeTLS("", ""); err != nil && err != http.ErrServerClosed { logrus.Fatalf("listen: %s", err) } @@ -93,6 +95,7 @@ func (r *router) Start() { } else { // no tls required go func() { + logrus.Infof("listening on %s", r.srv.Addr) if err := r.srv.ListenAndServe(); err != nil && err != http.ErrServerClosed { logrus.Fatalf("listen: %s", err) }