diff options
author | 2016-04-03 17:16:46 +0100 | |
---|---|---|
committer | 2016-04-03 17:16:46 +0100 | |
commit | 7f36a853f79de0ecc3d899dea08629c6071f5437 (patch) | |
tree | b09e6fef474234d82f8a298dca4cfc8ad5d1aba0 | |
parent | dd537b163ddf63eae428da346e4fa12c2266c0e7 (diff) | |
download | coredns-7f36a853f79de0ecc3d899dea08629c6071f5437.tar.gz coredns-7f36a853f79de0ecc3d899dea08629c6071f5437.tar.zst coredns-7f36a853f79de0ecc3d899dea08629c6071f5437.zip |
Fix all the log replacers
-rw-r--r-- | middleware/log/README.md | 2 | ||||
-rw-r--r-- | middleware/log/log.go | 2 | ||||
-rw-r--r-- | middleware/replacer.go | 10 |
3 files changed, 10 insertions, 4 deletions
diff --git a/middleware/log/README.md b/middleware/log/README.md index 2e5cd6d41..dabbbd1aa 100644 --- a/middleware/log/README.md +++ b/middleware/log/README.md @@ -47,7 +47,7 @@ The following place holders are supported: * `{port}`: client's port. * `{rcode}`: response RCODE. * `{size}`: response size. -* `{duration}`: response duration (in seconds). +* `{duration}`: response duration. * `{>bufsize}`: the EDNS0 buffer size advertized by the client. * `{>do}`: is the EDNS0 DO (DNSSEC OK) bit set. * `{>id}`: query ID diff --git a/middleware/log/log.go b/middleware/log/log.go index 6419fb707..998c2b602 100644 --- a/middleware/log/log.go +++ b/middleware/log/log.go @@ -58,7 +58,7 @@ const ( // DefaultLogFilename is the default log filename. DefaultLogFilename = "query.log" // CommonLogFormat is the common log format. - CommonLogFormat = `{remote} ` + CommonLogEmptyValue + ` [{when}] "{type} {name} {proto}" {rcode} {size}` + CommonLogFormat = `{remote} ` + CommonLogEmptyValue + ` [{when}] "{type} {name} {proto} {>do} {>bufsize}" {rcode} {size} {duration}` // CommonLogEmptyValue is the common empty log value. CommonLogEmptyValue = "-" // CombinedLogFormat is the combined log format. diff --git a/middleware/replacer.go b/middleware/replacer.go index 6a5d48b27..b9ea26745 100644 --- a/middleware/replacer.go +++ b/middleware/replacer.go @@ -1,7 +1,6 @@ package middleware import ( - "fmt" "strconv" "strings" "time" @@ -62,7 +61,7 @@ func NewReplacer(r *dns.Msg, rr *ResponseRecorder, emptyValue string) Replacer { // TODO(miek): syntax for flags and document it rep.replacements[headerReplacer+"id}"] = strconv.Itoa(int(r.Id)) rep.replacements[headerReplacer+"opcode}"] = strconv.Itoa(int(r.Opcode)) - rep.replacements[headerReplacer+"do}"] = fmt.Sprintf("%b", state.Do()) + rep.replacements[headerReplacer+"do}"] = boolToString(state.Do()) rep.replacements[headerReplacer+"bufsize}"] = strconv.Itoa(state.Size()) return rep @@ -104,6 +103,13 @@ func (r replacer) Set(key, value string) { r.replacements["{"+key+"}"] = value } +func boolToString(b bool) string { + if b { + return "true" + } + return "false" +} + const ( timeFormat = "02/Jan/2006:15:04:05 -0700" headerReplacer = "{>" |