aboutsummaryrefslogtreecommitdiff
path: root/middleware/metrics/handler.go
diff options
context:
space:
mode:
authorGravatar Miek Gieben <miek@miek.nl> 2016-06-25 18:12:13 +0100
committerGravatar Miek Gieben <miek@miek.nl> 2016-06-25 18:12:13 +0100
commit05461ad525972e356983899cb0b85c910d242aa8 (patch)
tree98b857f4a33304c89f3b3acc1c39ae92e9aa6db9 /middleware/metrics/handler.go
parent11094409ac7c6727810079c79a9796da20439635 (diff)
downloadcoredns-05461ad525972e356983899cb0b85c910d242aa8.tar.gz
coredns-05461ad525972e356983899cb0b85c910d242aa8.tar.zst
coredns-05461ad525972e356983899cb0b85c910d242aa8.zip
middleware/metrics: log qtype as well
Diffstat (limited to 'middleware/metrics/handler.go')
-rw-r--r--middleware/metrics/handler.go25
1 files changed, 25 insertions, 0 deletions
diff --git a/middleware/metrics/handler.go b/middleware/metrics/handler.go
index 019a02c3e..6b0401378 100644
--- a/middleware/metrics/handler.go
+++ b/middleware/metrics/handler.go
@@ -48,7 +48,32 @@ func Report(state middleware.State, zone, rcode string, size int, start time.Tim
if state.Do() {
requestDo.WithLabelValues(zone).Inc()
}
+ typ := state.QType()
+ if _, known := monitorType[typ]; known {
+ requestType.WithLabelValues(zone, dns.Type(typ).String())
+ } else {
+ requestType.WithLabelValues(zone, other)
+ }
responseSize.WithLabelValues(zone, net).Observe(float64(size))
responseRcode.WithLabelValues(zone, rcode).Inc()
}
+
+var monitorType = map[uint16]bool{
+ dns.TypeAAAA: true,
+ dns.TypeA: true,
+ dns.TypeCNAME: true,
+ dns.TypeDNSKEY: true,
+ dns.TypeDS: true,
+ dns.TypeMX: true,
+ dns.TypeNSEC3: true,
+ dns.TypeNSEC: true,
+ dns.TypeNS: true,
+ dns.TypePTR: true,
+ dns.TypeRRSIG: true,
+ dns.TypeSOA: true,
+ dns.TypeSRV: true,
+ dns.TypeTXT: true,
+}
+
+const other = "other"