Fix registration of metrics if querylog is enabled
This commit is contained in:
parent
e62050fb7e
commit
3b11648e14
|
@ -132,7 +132,7 @@ func setupPlugin(c *caddy.Controller) (*Plugin, error) {
|
||||||
}
|
}
|
||||||
case "querylog":
|
case "querylog":
|
||||||
d.QueryLogEnabled = true
|
d.QueryLogEnabled = true
|
||||||
once.Do(func() {
|
onceQueryLog.Do(func() {
|
||||||
go startQueryLogServer() // TODO: how to handle errors?
|
go startQueryLogServer() // TODO: how to handle errors?
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -184,7 +184,7 @@ func setup(c *caddy.Controller) error {
|
||||||
})
|
})
|
||||||
|
|
||||||
c.OnStartup(func() error {
|
c.OnStartup(func() error {
|
||||||
once.Do(func() {
|
onceMetrics.Do(func() {
|
||||||
m := dnsserver.GetConfig(c).Handler("prometheus")
|
m := dnsserver.GetConfig(c).Handler("prometheus")
|
||||||
if m == nil {
|
if m == nil {
|
||||||
return
|
return
|
||||||
|
@ -498,11 +498,11 @@ func (d *Plugin) ServeDNS(ctx context.Context, w dns.ResponseWriter, r *dns.Msg)
|
||||||
|
|
||||||
// log
|
// log
|
||||||
if d.QueryLogEnabled {
|
if d.QueryLogEnabled {
|
||||||
logRequest(rrw.Msg, result, time.Since(start), ip)
|
logRequest(r, rrw.Msg, result, time.Since(start), ip)
|
||||||
}
|
}
|
||||||
return rcode, err
|
return rcode, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *Plugin) Name() string { return "dnsfilter" }
|
func (d *Plugin) Name() string { return "dnsfilter" }
|
||||||
|
|
||||||
var once sync.Once
|
var onceMetrics, onceQueryLog sync.Once
|
||||||
|
|
Loading…
Reference in New Issue