From d7c0410ea8921bc6a167e9ca3449acc28d8c51f9 Mon Sep 17 00:00:00 2001 From: Andrew Dunham Date: Mon, 3 Oct 2022 10:54:46 -0400 Subject: [PATCH] ipn/localapi: print hostinfo and health on bugreport (#5816) This information is super helpful when debugging and it'd be nice to not have to scroll around in the logs to find it near a bugreport. Signed-off-by: Andrew Dunham --- ipn/localapi/localapi.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/ipn/localapi/localapi.go b/ipn/localapi/localapi.go index f4292762e..a29e18270 100644 --- a/ipn/localapi/localapi.go +++ b/ipn/localapi/localapi.go @@ -26,6 +26,8 @@ import ( "tailscale.com/client/tailscale/apitype" "tailscale.com/envknob" + "tailscale.com/health" + "tailscale.com/hostinfo" "tailscale.com/ipn" "tailscale.com/ipn/ipnlocal" "tailscale.com/ipn/ipnstate" @@ -223,6 +225,13 @@ func (h *Handler) serveBugReport(w http.ResponseWriter, r *http.Request) { if note := r.FormValue("note"); len(note) > 0 { h.logf("user bugreport note: %s", note) } + hi, _ := json.Marshal(hostinfo.New()) + h.logf("user bugreport hostinfo: %s", hi) + if err := health.OverallError(); err != nil { + h.logf("user bugreport health: %s", err.Error()) + } else { + h.logf("user bugreport health: ok") + } if defBool(r.FormValue("diagnose"), false) { h.b.Doctor(r.Context(), logger.WithPrefix(h.logf, "diag: ")) }