switch to miekg/dns for better results
This commit is contained in:
parent
a76b11b2b2
commit
1130cfaff0
5 changed files with 79 additions and 35 deletions
|
@ -67,7 +67,7 @@ func main() {
|
|||
case <-ticker.C:
|
||||
for d, tlds := range config.Domains {
|
||||
for _, tld := range tlds {
|
||||
go checkDomain(0, fmt.Sprintf("%v.%v", d, tld), query, client)
|
||||
go checkDomain(0, d, tld, query, client)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -85,18 +85,19 @@ func main() {
|
|||
<-s
|
||||
}
|
||||
|
||||
func checkDomain(counter int, d string, query *db.Queries, client webhook.Client) {
|
||||
domain := dns.CheckDomain(d)
|
||||
retrievedDomainJson, dbErr := query.GetItem(context.TODO(), d)
|
||||
func checkDomain(counter int, d, tld string, query *db.Queries, client webhook.Client) {
|
||||
domain := dns.CheckDomain(d, tld)
|
||||
fqdn := fmt.Sprintf("%s.%s", d, tld)
|
||||
retrievedDomainJson, dbErr := query.GetItem(context.TODO(), fqdn)
|
||||
retrievedDomain := dns.Domain{}
|
||||
if err := json.Unmarshal(retrievedDomainJson.Data, &retrievedDomain); !errors.Is(dbErr, sql.ErrNoRows) && err != nil {
|
||||
logger.Error("failed unmarshalling deal", slog.Any("error", err))
|
||||
}
|
||||
if reflect.DeepEqual(domain, retrievedDomain) {
|
||||
logger.Debug("domain did not change", slog.String("domain", d))
|
||||
logger.Debug("domain did not change", slog.String("domain", fqdn))
|
||||
return
|
||||
}
|
||||
logger.Info("domain changed", slog.String("domain", d))
|
||||
logger.Info("domain changed", slog.String("domain", fqdn))
|
||||
counter += 1
|
||||
if counter >= 2 {
|
||||
go sendWebhook(client, domain, retrievedDomain)
|
||||
|
@ -113,7 +114,7 @@ func checkDomain(counter int, d string, query *db.Queries, client webhook.Client
|
|||
return
|
||||
}
|
||||
time.Sleep(1 * time.Minute)
|
||||
checkDomain(counter, d, query, client)
|
||||
checkDomain(counter, d, tld, query, client)
|
||||
}
|
||||
|
||||
func sendWebhook(client webhook.Client, domain dns.Domain, oldDomain dns.Domain) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue