tsweb: consider 304s as successful for quiet logging
Static resource handlers will generate lots of 304s, which are effectively successful responses. Signed-off-by: Mihai Parparita <mihai@tailscale.com>
This commit is contained in:
parent
e1bdbfe710
commit
c66e15772f
|
@ -185,7 +185,7 @@ type ReturnHandler interface {
|
|||
}
|
||||
|
||||
type HandlerOptions struct {
|
||||
Quiet200s bool // if set, do not log successfully handled HTTP requests
|
||||
QuietLoggingIfSuccessful bool // if set, do not log successfully handled HTTP requests (200 and 304 status codes)
|
||||
Logf logger.Logf
|
||||
Now func() time.Time // if nil, defaults to time.Now
|
||||
|
||||
|
@ -317,7 +317,7 @@ func (h retHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
|||
}
|
||||
}
|
||||
|
||||
if msg.Code != 200 || !h.opts.Quiet200s {
|
||||
if !h.opts.QuietLoggingIfSuccessful || (msg.Code != http.StatusOK && msg.Code != http.StatusNotModified) {
|
||||
h.opts.Logf("%s", msg)
|
||||
}
|
||||
|
||||
|
|
|
@ -303,7 +303,7 @@ func BenchmarkLogNot200(b *testing.B) {
|
|||
// Implicit 200 OK.
|
||||
return nil
|
||||
})
|
||||
h := StdHandler(rh, HandlerOptions{Quiet200s: true})
|
||||
h := StdHandler(rh, HandlerOptions{QuietLoggingIfSuccessful: true})
|
||||
req := httptest.NewRequest("GET", "/", nil)
|
||||
rw := new(httptest.ResponseRecorder)
|
||||
for i := 0; i < b.N; i++ {
|
||||
|
|
Loading…
Reference in New Issue