diff options
author | Martin Polden <mpolden@mpolden.no> | 2019-12-30 16:23:07 +0100 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2019-12-30 16:23:07 +0100 |
commit | 091d5f5857f76c9271fd8386ac534677c8080460 (patch) | |
tree | a86b3eebae5d6fd95e83039bfdef8244ffedb90c | |
parent | 6c3aeec9d232e40406bc3e977441fc9a16d5d99a (diff) |
Log resolver address on error
-rw-r--r-- | dns/dnsutil/dnsutil.go | 3 | ||||
-rw-r--r-- | dns/proxy.go | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/dns/dnsutil/dnsutil.go b/dns/dnsutil/dnsutil.go index 141f5c6..c7b52f0 100644 --- a/dns/dnsutil/dnsutil.go +++ b/dns/dnsutil/dnsutil.go @@ -2,6 +2,7 @@ package dnsutil import ( "errors" + "fmt" "sync" "time" @@ -52,7 +53,7 @@ func (c *Client) Exchange(msg *dns.Msg) (*dns.Msg, error) { defer wg.Done() r, _, err1 := c.Exchanger.Exchange(msg, addr) if err1 != nil { - err = err1 + err = fmt.Errorf("resolver %s failed: %w", addr, err1) return } ch <- r diff --git a/dns/proxy.go b/dns/proxy.go index 9daf552..58cdb47 100644 --- a/dns/proxy.go +++ b/dns/proxy.go @@ -39,6 +39,7 @@ type Proxy struct { } type logger interface { + Print(...interface{}) Printf(string, ...interface{}) Record(net.IP, bool, uint16, string, ...string) Close() error @@ -146,7 +147,7 @@ func (p *Proxy) ServeDNS(w dns.ResponseWriter, r *dns.Msg) { p.writeMsg(w, rr, false) p.cache.Set(key, rr) } else { - p.logger.Printf("resolver(s) failed: %s", err) + p.logger.Print(err) dns.HandleFailed(w, r) } } |