From 4fcf9a1e36d1714fac470c5433718065df894e3e Mon Sep 17 00:00:00 2001 From: Jonathan Lange Date: Mon, 12 Dec 2016 17:12:28 +0000 Subject: [PATCH] Add flag for logging headers --- prog/app.go | 6 +++++- prog/main.go | 14 ++++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/prog/app.go b/prog/app.go index 0e66b8f19..454f3b909 100644 --- a/prog/app.go +++ b/prog/app.go @@ -270,7 +270,11 @@ func appMain(flags appFlags) { handler := router(collector, controlRouter, pipeRouter, flags.externalUI) if flags.logHTTP { - handler = middleware.LogFailed.Wrap(handler) + if flags.logHTTPHeaders { + handler = middleware.Log{LogRequestHeaders: true}.Wrap(handler) + } else { + handler = middleware.LogFailed.Wrap(handler) + } } server := &graceful.Server{ diff --git a/prog/main.go b/prog/main.go index 0a679970c..ac1ca13a7 100644 --- a/prog/main.go +++ b/prog/main.go @@ -112,12 +112,13 @@ type probeFlags struct { } type appFlags struct { - window time.Duration - listen string - stopTimeout time.Duration - logLevel string - logPrefix string - logHTTP bool + window time.Duration + listen string + stopTimeout time.Duration + logLevel string + logPrefix string + logHTTP bool + logHTTPHeaders bool weaveEnabled bool weaveAddr string @@ -298,6 +299,7 @@ func main() { flag.StringVar(&flags.app.logLevel, "app.log.level", "info", "logging threshold level: debug|info|warn|error|fatal|panic") flag.StringVar(&flags.app.logPrefix, "app.log.prefix", "", "prefix for each log line") flag.BoolVar(&flags.app.logHTTP, "app.log.http", false, "Log individual HTTP requests") + flag.BoolVar(&flags.app.logHTTPHeaders, "app.log.httpHeaders", false, "Log HTTP headers. Needs app.log.http to be enabled.") flag.StringVar(&flags.app.weaveAddr, "app.weave.addr", app.DefaultWeaveURL, "Address on which to contact WeaveDNS") flag.StringVar(&flags.app.weaveHostname, "app.weave.hostname", app.DefaultHostname, "Hostname to advertise in WeaveDNS")