diff --git a/client/admin.go b/client/admin.go index b3485af2..364b3105 100644 --- a/client/admin.go +++ b/client/admin.go @@ -37,7 +37,8 @@ func (svr *Service) RunAdminServer(address string) (err error) { user, passwd := svr.cfg.AdminUser, svr.cfg.AdminPwd router.Use(frpNet.NewHTTPAuthMiddleware(user, passwd).Middleware) - // api, see dashboard_api.go + // api, see admin_api.go + router.HandleFunc("/healthz", svr.healthz) router.HandleFunc("/api/reload", svr.apiReload).Methods("GET") router.HandleFunc("/api/status", svr.apiStatus).Methods("GET") router.HandleFunc("/api/config", svr.apiGetConfig).Methods("GET") diff --git a/client/admin_api.go b/client/admin_api.go index 49c2abfd..a3540ff5 100644 --- a/client/admin_api.go +++ b/client/admin_api.go @@ -32,6 +32,11 @@ type GeneralResponse struct { Msg string } +// /healthz +func (svr *Service) healthz(w http.ResponseWriter, r *http.Request) { + w.WriteHeader(200) +} + // GET api/reload func (svr *Service) apiReload(w http.ResponseWriter, r *http.Request) { res := GeneralResponse{Code: 200} diff --git a/server/dashboard.go b/server/dashboard.go index edac675e..7defec3c 100644 --- a/server/dashboard.go +++ b/server/dashboard.go @@ -48,6 +48,7 @@ func (svr *Service) RunDashboardServer(address string) (err error) { router.HandleFunc("/api/proxy/{type}", svr.APIProxyByType).Methods("GET") router.HandleFunc("/api/proxy/{type}/{name}", svr.APIProxyByTypeAndName).Methods("GET") router.HandleFunc("/api/traffic/{name}", svr.APIProxyTraffic).Methods("GET") + router.HandleFunc("/healthz", svr.Healthz) // view router.Handle("/favicon.ico", http.FileServer(assets.FileSystem)).Methods("GET") diff --git a/server/dashboard_api.go b/server/dashboard_api.go index d3100c84..7d159c7a 100644 --- a/server/dashboard_api.go +++ b/server/dashboard_api.go @@ -51,6 +51,11 @@ type serverInfoResp struct { ProxyTypeCounts map[string]int64 `json:"proxy_type_count"` } +// /healthz +func (svr *Service) Healthz(w http.ResponseWriter, r *http.Request) { + w.WriteHeader(200) +} + // api/serverinfo func (svr *Service) APIServerInfo(w http.ResponseWriter, r *http.Request) { res := GeneralResponse{Code: 200}