From 12db7b9520e00ed7d28e3f6f6ef193ec44f40a77 Mon Sep 17 00:00:00 2001 From: Dan Fuhry Date: Fri, 21 Mar 2025 21:10:32 -0400 Subject: [PATCH] metrics/metricbus: add healthcheck endpoint --- metrics/metricbus/internal/server.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/metrics/metricbus/internal/server.go b/metrics/metricbus/internal/server.go index ba3f78c..eee8254 100644 --- a/metrics/metricbus/internal/server.go +++ b/metrics/metricbus/internal/server.go @@ -15,6 +15,7 @@ import ( "github.com/godbus/dbus/v5" "github.com/godbus/dbus/v5/introspect" + "go.fuhry.dev/runtime/constants" "go.fuhry.dev/runtime/metrics/metricbus" "go.fuhry.dev/runtime/mtls" "go.fuhry.dev/runtime/utils/hashset" @@ -115,7 +116,7 @@ func makeTlsListener(tcpAddr *net.TCPAddr, ctx context.Context) (net.Listener, e return nil, err } cv.AllowFrom(mtls.Service, "prometheus") - cv.AllowFrom(mtls.User, "dan") + cv.AllowFrom(mtls.Service, "healthcheck") return tls.NewListener(netListener, tlsc), nil } @@ -134,6 +135,7 @@ func NewMetricBusServerWithPort(port uint) (*mbServer, error) { } handler := http.NewServeMux() + handler.HandleFunc("/healthz", servicer.healthCheck) handler.HandleFunc("/metrics", servicer.metricsToString) server := &mbServer{ log: logger, @@ -301,6 +303,11 @@ func (s *mbServicer) metricsToString(w http.ResponseWriter, r *http.Request) { } } +func (s *mbServicer) healthCheck(w http.ResponseWriter, r *http.Request) { + w.WriteHeader(http.StatusOK) + w.Write([]byte(fmt.Sprintf("

%s Metric Collector

", constants.OrgName))) +} + func (s *mbServicer) Ping() *dbus.Error { return nil } -- 2.50.1