diff --git a/pkg/middlewares/localdns/handler.go b/pkg/middlewares/localdns/handler.go index 4ada8482..a3dcc336 100644 --- a/pkg/middlewares/localdns/handler.go +++ b/pkg/middlewares/localdns/handler.go @@ -87,7 +87,11 @@ func (h *handler) ServeDNS(w dns.ResponseWriter, r *dns.Msg) { for i, localExchange := range h.localExchanges { response, err := localExchange(h.ctx, r) if err != nil { - h.logger.Debug(err.Error()) + requestString := fmt.Sprintf("%s %s %s", + dns.ClassToString[r.Question[0].Qclass], + dns.TypeToString[r.Question[0].Qtype], + r.Question[0].Name) + h.logger.Debug("for " + requestString + ": " + err.Error()) continue } diff --git a/pkg/middlewares/localdns/handler_test.go b/pkg/middlewares/localdns/handler_test.go index d93f1289..d0c6bcfe 100644 --- a/pkg/middlewares/localdns/handler_test.go +++ b/pkg/middlewares/localdns/handler_test.go @@ -183,12 +183,14 @@ func Test_handler_ServeDNS(t *testing.T) { "local_name_exchange_error": { request: &dns.Msg{ Question: []dns.Question{{ - Name: "domain.local.", + Qclass: dns.ClassINET, + Qtype: dns.TypeA, + Name: "domain.local.", }}, }, makeHandler: func(ctrl *gomock.Controller) *handler { logger := NewMockLogger(ctrl) - logger.EXPECT().Debug("test error") + logger.EXPECT().Debug("for IN A domain.local.: test error") localExchanges := []server.Exchange{ makeTestExchange(nil, errTest), @@ -207,7 +209,9 @@ func Test_handler_ServeDNS(t *testing.T) { Rcode: dns.RcodeNameError, }, Question: []dns.Question{{ - Name: "domain.local.", + Qclass: dns.ClassINET, + Qtype: dns.TypeA, + Name: "domain.local.", }}, }, }, @@ -284,7 +288,9 @@ func Test_handler_ServeDNS(t *testing.T) { "local_name_success_after_failures": { request: &dns.Msg{ Question: []dns.Question{{ - Name: "domain.local.", + Qclass: dns.ClassINET, + Qtype: dns.TypeA, + Name: "domain.local.", }}, }, makeHandler: func(ctrl *gomock.Controller) *handler { @@ -307,7 +313,7 @@ func Test_handler_ServeDNS(t *testing.T) { } logger := NewMockLogger(ctrl) - logger.EXPECT().Debug("test error") + logger.EXPECT().Debug("for IN A domain.local.: test error") logger.EXPECT().Debug("response received for " + "domain.local. from 10.0.0.2:53 has " + "rcode REFUSED")