Browse Source

Simple debug HTTP request logging

Brian Akins 10 years ago
parent
commit
d8a836e618
2 changed files with 8 additions and 1 deletions
  1. 1 1
      etcdserver/etcdhttp/client.go
  2. 7 0
      etcdserver/etcdhttp/http.go

+ 1 - 1
etcdserver/etcdhttp/client.go

@@ -104,7 +104,7 @@ func NewClientHandler(server *etcdserver.EtcdServer) http.Handler {
 	mux.Handle(deprecatedMachinesPrefix, dmh)
 	handleSecurity(mux, sech)
 
-	return mux
+	return requestLogger(mux)
 }
 
 type keysHandler struct {

+ 7 - 0
etcdserver/etcdhttp/http.go

@@ -78,3 +78,10 @@ func allowMethod(w http.ResponseWriter, m string, ms ...string) bool {
 	http.Error(w, "Method Not Allowed", http.StatusMethodNotAllowed)
 	return false
 }
+
+func requestLogger(handler http.Handler) http.Handler {
+	return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
+		plog.Debugf("[%s] %s remote:%s", r.Method, r.RequestURI, r.RemoteAddr)
+		handler.ServeHTTP(w, r)
+	})
+}