Skip to content

Commit 61395f7

Browse files
zeidlitzquakj
authored andcommitted
fix: remove bad dns query
1 parent 41e42f1 commit 61395f7

File tree

1 file changed

+6
-28
lines changed

1 file changed

+6
-28
lines changed

dns.go

Lines changed: 6 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2,36 +2,27 @@ package main
22

33
import (
44
"fmt"
5-
"strconv"
6-
"time"
7-
85
"github.com/miekg/dns"
96
"github.com/prometheus/client_golang/prometheus"
107
"github.com/prometheus/client_golang/prometheus/promauto"
118
)
129

1310
var (
1411
dnsRequestsCounter = promauto.NewCounterVec(prometheus.CounterOpts{
15-
Name: "observer_dns_requests",
1612
Help: "Total number of sent DNS requests",
1713
}, []string{"resolver"})
1814
dnsFailuresCounter = promauto.NewCounterVec(prometheus.CounterOpts{
1915
Name: "observer_dns_failures",
2016
Help: "Total number of failed DNS requests",
2117
}, []string{"resolver"})
22-
dnsLatencyGauge = prometheus.NewGaugeVec(prometheus.GaugeOpts{
23-
Name: "observer_dns_latency",
18+
dnsRttGauge = prometheus.NewGaugeVec(prometheus.GaugeOpts{
19+
Name: "observer_dns_rtt",
2420
Help: "Latency of DNS reequest.",
2521
}, []string{"resolver"})
26-
dnsAgeGauge = prometheus.NewGaugeVec(prometheus.GaugeOpts{
27-
Name: "observer_dns_age",
28-
Help: "Age of DNS healthcheck record.",
29-
}, []string{"resolver"})
3022
)
3123

3224
func init() {
33-
prometheus.MustRegister(dnsLatencyGauge)
34-
prometheus.MustRegister(dnsAgeGauge)
25+
prometheus.MustRegister(dnsRttGauge)
3526
}
3627

3728
func sampleDns(targets []string, qname string) error {
@@ -52,30 +43,17 @@ func sampleDns(targets []string, qname string) error {
5243
r, rtt, err := dnsClient.Exchange(&dnsMessage, fmt.Sprintf("%s:53", target))
5344
if err != nil {
5445
dnsFailures.Inc()
55-
return err
46+
return fmt.Errorf("could not complete dns exchange: %w", err)
5647
}
5748

5849
if len(r.Answer) == 0 {
59-
return fmt.Errorf("dns message lenght %d", len(r.Answer))
50+
return fmt.Errorf("dns message %d : %s", len(r.Answer), r.Answer)
6051
}
6152

62-
dnsLatencyGauge.With(prometheus.Labels{
53+
dnsRttGauge.With(prometheus.Labels{
6354
"resolver": target,
6455
}).Set(rtt.Seconds())
6556

66-
for _, ans := range r.Answer {
67-
if t, ok := ans.(*dns.TXT); ok {
68-
if len(t.Txt) > 0 {
69-
stamp, err := strconv.Atoi(t.Txt[0])
70-
if err != nil {
71-
return fmt.Errorf("failed to parse healthcheck record")
72-
}
73-
dnsAgeGauge.With(prometheus.Labels{
74-
"resolver": target,
75-
}).Set(float64(int(time.Now().Unix()) - stamp))
76-
}
77-
}
78-
}
7957
}
8058
return nil
8159
}

0 commit comments

Comments
 (0)