@@ -1831,19 +1831,21 @@ func (edm *dnstapMinimiser) qnameSeen(msg *dns.Msg, seenQnameLRU *lru.Cache[stri
18311831 // only move an already added entry to the front of the
18321832 // eviction list which should be OK.
18331833
1834- _ , ok := seenQnameLRU .Get (msg .Question [0 ].Name )
1834+ qname := strings .ToLower (strings .ToValidUTF8 (msg .Question [0 ].Name , "" ))
1835+
1836+ _ , ok := seenQnameLRU .Get (qname )
18351837 if ok {
18361838 // It exists in the LRU cache
18371839 return true
18381840 }
18391841 // Add it to the LRU
1840- evicted := seenQnameLRU .Add (msg . Question [ 0 ]. Name , struct {}{})
1842+ evicted := seenQnameLRU .Add (qname , struct {}{})
18411843 if evicted {
18421844 edm .promSeenQnameLRUEvicted .Inc ()
18431845 }
18441846
18451847 // It was not in the LRU cache, does it exist in pebble (on disk)?
1846- _ , closer , err := pdb .Get ([]byte (msg . Question [ 0 ]. Name ))
1848+ _ , closer , err := pdb .Get ([]byte (qname ))
18471849 if err == nil {
18481850 // The value exists in pebble
18491851 if err := closer .Close (); err != nil {
@@ -1854,7 +1856,7 @@ func (edm *dnstapMinimiser) qnameSeen(msg *dns.Msg, seenQnameLRU *lru.Cache[stri
18541856
18551857 // If the key does not exist in pebble we insert it
18561858 if errors .Is (err , pebble .ErrNotFound ) {
1857- if err := pdb .Set ([]byte (msg . Question [ 0 ]. Name ), []byte {}, pebble .Sync ); err != nil {
1859+ if err := pdb .Set ([]byte (qname ), []byte {}, pebble .Sync ); err != nil {
18581860 edm .log .Error ("unable to insert key in pebble" , "error" , err )
18591861 }
18601862 return false
0 commit comments