webdav: log the X-Litmus header in the litmus_test_server.

This helps line up HTTP events (in the Go code) with the litmus test
suite (C code).

Change-Id: I2d0847069ae1304948ba1219b63cd438a4fa921c
Reviewed-on: https://go-review.googlesource.com/3760
Reviewed-by: Robert Stepanek <robert.stepanek@gmail.com>
Reviewed-by: Nick Cooper <nmvc@google.com>
Reviewed-by: Nigel Tao <nigeltao@golang.org>
diff --git a/webdav/litmus_test_server.go b/webdav/litmus_test_server.go
index 48ca718..e75e01e 100644
--- a/webdav/litmus_test_server.go
+++ b/webdav/litmus_test_server.go
@@ -31,10 +31,16 @@
 
 func main() {
 	flag.Parse()
+	log.SetFlags(0)
 	http.Handle("/", &webdav.Handler{
 		FileSystem: webdav.NewMemFS(),
 		LockSystem: webdav.NewMemLS(),
 		Logger: func(r *http.Request, err error) {
+			litmus := r.Header.Get("X-Litmus")
+			if len(litmus) > 19 {
+				litmus = litmus[:16] + "..."
+			}
+
 			switch r.Method {
 			case "COPY", "MOVE":
 				dst := ""
@@ -42,9 +48,9 @@
 					dst = u.Path
 				}
 				o := r.Header.Get("Overwrite")
-				log.Printf("%-10s%-25s%-25so=%-2s%v", r.Method, r.URL.Path, dst, o, err)
+				log.Printf("%-20s%-10s%-30s%-30so=%-2s%v", litmus, r.Method, r.URL.Path, dst, o, err)
 			default:
-				log.Printf("%-10s%-30s%v", r.Method, r.URL.Path, err)
+				log.Printf("%-20s%-10s%-30s%v", litmus, r.Method, r.URL.Path, err)
 			}
 		},
 	})