fix security - health endpoint will now properly handle timeouts
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"net/http"
|
"net/http"
|
||||||
"sync"
|
"sync"
|
||||||
|
"time"
|
||||||
|
|
||||||
"github.com/gorilla/mux"
|
"github.com/gorilla/mux"
|
||||||
log "github.com/sirupsen/logrus"
|
log "github.com/sirupsen/logrus"
|
||||||
@@ -36,7 +37,16 @@ func (hs *HealthServer) Start() {
|
|||||||
r := mux.NewRouter()
|
r := mux.NewRouter()
|
||||||
r.Use(mux.CORSMethodMiddleware(r))
|
r.Use(mux.CORSMethodMiddleware(r))
|
||||||
r.HandleFunc("/health", hs.sendHealth).Methods(http.MethodGet)
|
r.HandleFunc("/health", hs.sendHealth).Methods(http.MethodGet)
|
||||||
err := http.ListenAndServe("0.0.0.0:8080", r)
|
|
||||||
|
server := &http.Server{
|
||||||
|
Addr: "0.0.0.0:8080",
|
||||||
|
Handler: r,
|
||||||
|
ReadTimeout: 15 * time.Second,
|
||||||
|
WriteTimeout: 15 * time.Second,
|
||||||
|
IdleTimeout: 60 * time.Second,
|
||||||
|
}
|
||||||
|
|
||||||
|
err := server.ListenAndServe()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.WithFields(log.Fields{
|
log.WithFields(log.Fields{
|
||||||
"Caller": "HealthServer.Start",
|
"Caller": "HealthServer.Start",
|
||||||
|
Reference in New Issue
Block a user