forked from cerc-io/plugeth
swarm/api/http: added logging to denote request ended (#17371)
This commit is contained in:
parent
45eaef2431
commit
3ec5dda4d2
@ -64,8 +64,8 @@ func ParseURI(h http.Handler) http.Handler {
|
|||||||
func InitLoggingResponseWriter(h http.Handler) http.Handler {
|
func InitLoggingResponseWriter(h http.Handler) http.Handler {
|
||||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||||
writer := newLoggingResponseWriter(w)
|
writer := newLoggingResponseWriter(w)
|
||||||
|
|
||||||
h.ServeHTTP(writer, r)
|
h.ServeHTTP(writer, r)
|
||||||
|
log.Debug("request served", "ruid", GetRUID(r.Context()), "code", writer.statusCode)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -84,15 +84,16 @@ func RespondError(w http.ResponseWriter, r *http.Request, msg string, code int)
|
|||||||
}
|
}
|
||||||
|
|
||||||
func respond(w http.ResponseWriter, r *http.Request, params *ResponseParams) {
|
func respond(w http.ResponseWriter, r *http.Request, params *ResponseParams) {
|
||||||
|
|
||||||
w.WriteHeader(params.Code)
|
w.WriteHeader(params.Code)
|
||||||
|
|
||||||
if params.Code >= 400 {
|
if params.Code >= 400 {
|
||||||
w.Header().Del("Cache-Control") //avoid sending cache headers for errors!
|
w.Header().Del("Cache-Control")
|
||||||
w.Header().Del("ETag")
|
w.Header().Del("ETag")
|
||||||
}
|
}
|
||||||
|
|
||||||
acceptHeader := r.Header.Get("Accept")
|
acceptHeader := r.Header.Get("Accept")
|
||||||
// this cannot be in a switch form since an Accept header can be in the form of "Accept: */*, text/html, application/xhtml+xml, application/xml;q=0.9, */*;q=0.8"
|
// this cannot be in a switch since an Accept header can have multiple values: "Accept: */*, text/html, application/xhtml+xml, application/xml;q=0.9, */*;q=0.8"
|
||||||
if strings.Contains(acceptHeader, "application/json") {
|
if strings.Contains(acceptHeader, "application/json") {
|
||||||
if err := respondJSON(w, r, params); err != nil {
|
if err := respondJSON(w, r, params); err != nil {
|
||||||
RespondError(w, r, "Internal server error", http.StatusInternalServerError)
|
RespondError(w, r, "Internal server error", http.StatusInternalServerError)
|
||||||
|
Loading…
Reference in New Issue
Block a user