Skip to content

Commit

Permalink
swarm/api/http: added logging to denote request ended (ethereum#17371)
Browse files Browse the repository at this point in the history
acud authored and gbalint committed Aug 10, 2018

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
1 parent 45eaef2 commit 3ec5dda
Showing 2 changed files with 4 additions and 3 deletions.
2 changes: 1 addition & 1 deletion swarm/api/http/middleware.go
Original file line number Diff line number Diff line change
@@ -64,8 +64,8 @@ func ParseURI(h http.Handler) http.Handler {
func InitLoggingResponseWriter(h http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
writer := newLoggingResponseWriter(w)

h.ServeHTTP(writer, r)
log.Debug("request served", "ruid", GetRUID(r.Context()), "code", writer.statusCode)
})
}

5 changes: 3 additions & 2 deletions swarm/api/http/response.go
Original file line number Diff line number Diff line change
@@ -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) {

w.WriteHeader(params.Code)

if params.Code >= 400 {
w.Header().Del("Cache-Control") //avoid sending cache headers for errors!
w.Header().Del("Cache-Control")
w.Header().Del("ETag")
}

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 err := respondJSON(w, r, params); err != nil {
RespondError(w, r, "Internal server error", http.StatusInternalServerError)

0 comments on commit 3ec5dda

Please sign in to comment.