From 0c1320da0087d7233687f50d086008e45b491c17 Mon Sep 17 00:00:00 2001 From: "Jonathan Leibiusky @xetorthio" Date: Thu, 9 Nov 2017 10:28:48 -0300 Subject: [PATCH] Add ping and metrics endpoint to redirect server --- handlers/bootstrap.go | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/handlers/bootstrap.go b/handlers/bootstrap.go index 951f8ca..24c7301 100644 --- a/handlers/bootstrap.go +++ b/handlers/bootstrap.go @@ -103,12 +103,22 @@ func Register(extend HandlerExtender) { } go func() { - http.HandleFunc("/", func(rw http.ResponseWriter, r *http.Request) { + rr := mux.NewRouter() + rr.HandleFunc("/ping", Ping).Methods("GET") + rr.Handle("/metrics", promhttp.Handler()) + rr.HandleFunc("/", func(rw http.ResponseWriter, r *http.Request) { http.Redirect(rw, r, fmt.Sprintf("https://%s", r.Host), http.StatusMovedPermanently) }) + nr := negroni.Classic() + nr.UseHandler(rr) log.Println("Starting redirect server") - log.Fatal(http.ListenAndServe(":3001", nil)) - log.Fatal(httpServer.ListenAndServe()) + redirectServer := http.Server{ + Addr: "0.0.0.0:3001", + Handler: nr, + IdleTimeout: 30 * time.Second, + ReadHeaderTimeout: 5 * time.Second, + } + log.Fatal(redirectServer.ListenAndServe()) }() log.Println("Listening on port " + config.PortNumber)