mirror of https://github.com/k3s-io/k3s
Don't log 'apiserver disabled' error sent by etcd-only nodes
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
(cherry picked from commit 08f1022663
)
pull/9939/head
parent
d25523fc94
commit
2ae9eaccd5
|
@ -104,14 +104,14 @@ func apiserver(runtime *config.ControlRuntime) http.Handler {
|
||||||
if runtime != nil && runtime.APIServer != nil {
|
if runtime != nil && runtime.APIServer != nil {
|
||||||
runtime.APIServer.ServeHTTP(resp, req)
|
runtime.APIServer.ServeHTTP(resp, req)
|
||||||
} else {
|
} else {
|
||||||
util.SendError(util.ErrNotReady, resp, req, http.StatusServiceUnavailable)
|
util.SendError(util.ErrAPINotReady, resp, req, http.StatusServiceUnavailable)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func apiserverDisabled() http.Handler {
|
func apiserverDisabled() http.Handler {
|
||||||
return http.HandlerFunc(func(resp http.ResponseWriter, req *http.Request) {
|
return http.HandlerFunc(func(resp http.ResponseWriter, req *http.Request) {
|
||||||
util.SendError(errors.New("apiserver disabled"), resp, req, http.StatusServiceUnavailable)
|
util.SendError(util.ErrAPIDisabled, resp, req, http.StatusServiceUnavailable)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,8 @@ import (
|
||||||
"k8s.io/apiserver/pkg/endpoints/handlers/responsewriters"
|
"k8s.io/apiserver/pkg/endpoints/handlers/responsewriters"
|
||||||
)
|
)
|
||||||
|
|
||||||
var ErrNotReady = errors.New("apiserver not ready")
|
var ErrAPINotReady = errors.New("apiserver not ready")
|
||||||
|
var ErrAPIDisabled = errors.New("apiserver disabled")
|
||||||
|
|
||||||
// SendErrorWithID sends and logs a random error ID so that logs can be correlated
|
// SendErrorWithID sends and logs a random error ID so that logs can be correlated
|
||||||
// between the REST API (which does not provide any detailed error output, to avoid
|
// between the REST API (which does not provide any detailed error output, to avoid
|
||||||
|
@ -36,8 +37,8 @@ func SendError(err error, resp http.ResponseWriter, req *http.Request, status ..
|
||||||
code = http.StatusInternalServerError
|
code = http.StatusInternalServerError
|
||||||
}
|
}
|
||||||
|
|
||||||
// Don't log "apiserver not ready" errors, they are frequent during startup
|
// Don't log "apiserver not ready" or "apiserver disabled" errors, they are frequent during startup
|
||||||
if !errors.Is(err, ErrNotReady) {
|
if !errors.Is(err, ErrAPINotReady) && !errors.Is(err, ErrAPIDisabled) {
|
||||||
logrus.Errorf("Sending HTTP %d response to %s: %v", code, req.RemoteAddr, err)
|
logrus.Errorf("Sending HTTP %d response to %s: %v", code, req.RemoteAddr, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue