feat: replace logrus logger with logf
logf is a minimal logger with no dependencies. this commit should bring down the binary size.
This commit is contained in:
parent
218eb0233a
commit
0f8084b13c
14 changed files with 102 additions and 114 deletions
|
@ -5,7 +5,7 @@ import (
|
|||
"time"
|
||||
|
||||
"github.com/miekg/dns"
|
||||
"github.com/sirupsen/logrus"
|
||||
"github.com/mr-karan/logf"
|
||||
)
|
||||
|
||||
// ClassicResolver represents the config options for setting up a Resolver.
|
||||
|
@ -66,7 +66,7 @@ func (r *ClassicResolver) Lookup(question dns.Question) (Response, error) {
|
|||
messages = prepareMessages(question, r.resolverOptions.Ndots, r.resolverOptions.SearchList)
|
||||
)
|
||||
for _, msg := range messages {
|
||||
r.resolverOptions.Logger.WithFields(logrus.Fields{
|
||||
r.resolverOptions.Logger.WithFields(logf.Fields{
|
||||
"domain": msg.Question[0].Name,
|
||||
"ndots": r.resolverOptions.Ndots,
|
||||
"nameserver": r.server,
|
||||
|
@ -93,7 +93,7 @@ func (r *ClassicResolver) Lookup(question dns.Question) (Response, error) {
|
|||
default:
|
||||
r.client.Net = "tcp"
|
||||
}
|
||||
r.resolverOptions.Logger.WithField("protocol", r.client.Net).Debug("Response truncated; retrying now")
|
||||
r.resolverOptions.Logger.WithFields(logf.Fields{"protocol": r.client.Net}).Debug("Response truncated; retrying now")
|
||||
return r.Lookup(question)
|
||||
}
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ import (
|
|||
|
||||
"github.com/ameshkov/dnscrypt/v2"
|
||||
"github.com/miekg/dns"
|
||||
"github.com/sirupsen/logrus"
|
||||
"github.com/mr-karan/logf"
|
||||
)
|
||||
|
||||
// DNSCryptResolver represents the config options for setting up a Resolver.
|
||||
|
@ -49,7 +49,7 @@ func (r *DNSCryptResolver) Lookup(question dns.Question) (Response, error) {
|
|||
messages = prepareMessages(question, r.resolverOptions.Ndots, r.resolverOptions.SearchList)
|
||||
)
|
||||
for _, msg := range messages {
|
||||
r.resolverOptions.Logger.WithFields(logrus.Fields{
|
||||
r.resolverOptions.Logger.WithFields(logf.Fields{
|
||||
"domain": msg.Question[0].Name,
|
||||
"ndots": r.resolverOptions.Ndots,
|
||||
"nameserver": r.server,
|
||||
|
|
|
@ -10,7 +10,7 @@ import (
|
|||
"time"
|
||||
|
||||
"github.com/miekg/dns"
|
||||
"github.com/sirupsen/logrus"
|
||||
"github.com/mr-karan/logf"
|
||||
)
|
||||
|
||||
// DOHResolver represents the config options for setting up a DOH based resolver.
|
||||
|
@ -49,7 +49,7 @@ func (r *DOHResolver) Lookup(question dns.Question) (Response, error) {
|
|||
)
|
||||
|
||||
for _, msg := range messages {
|
||||
r.resolverOptions.Logger.WithFields(logrus.Fields{
|
||||
r.resolverOptions.Logger.WithFields(logf.Fields{
|
||||
"domain": msg.Question[0].Name,
|
||||
"ndots": r.resolverOptions.Ndots,
|
||||
"nameserver": r.server,
|
||||
|
@ -80,15 +80,15 @@ func (r *DOHResolver) Lookup(question dns.Question) (Response, error) {
|
|||
return rsp, fmt.Errorf("error from nameserver %s", resp.Status)
|
||||
}
|
||||
rtt := time.Since(now)
|
||||
// if debug, extract the response headers
|
||||
if r.resolverOptions.Logger.IsLevelEnabled(logrus.DebugLevel) {
|
||||
for header, value := range resp.Header {
|
||||
r.resolverOptions.Logger.WithFields(logrus.Fields{
|
||||
header: value,
|
||||
}).Debug("DOH response header")
|
||||
}
|
||||
|
||||
// Log the response headers in debug mode.
|
||||
for header, value := range resp.Header {
|
||||
r.resolverOptions.Logger.WithFields(logf.Fields{
|
||||
header: value,
|
||||
}).Debug("DOH response header")
|
||||
}
|
||||
// extract the binary response in DNS Message.
|
||||
|
||||
// Extract the binary response in DNS Message.
|
||||
body, err := ioutil.ReadAll(resp.Body)
|
||||
if err != nil {
|
||||
return rsp, err
|
||||
|
@ -98,7 +98,7 @@ func (r *DOHResolver) Lookup(question dns.Question) (Response, error) {
|
|||
if err != nil {
|
||||
return rsp, err
|
||||
}
|
||||
// pack questions in output.
|
||||
// Pack questions in output.
|
||||
for _, q := range msg.Question {
|
||||
ques := Question{
|
||||
Name: q.Name,
|
||||
|
@ -107,13 +107,13 @@ func (r *DOHResolver) Lookup(question dns.Question) (Response, error) {
|
|||
}
|
||||
rsp.Questions = append(rsp.Questions, ques)
|
||||
}
|
||||
// get the authorities and answers.
|
||||
// Get the authorities and answers.
|
||||
output := parseMessage(&msg, rtt, r.server)
|
||||
rsp.Authorities = output.Authorities
|
||||
rsp.Answers = output.Answers
|
||||
|
||||
if len(output.Answers) > 0 {
|
||||
// stop iterating the searchlist.
|
||||
// Stop iterating the searchlist.
|
||||
break
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ import (
|
|||
|
||||
"github.com/lucas-clemente/quic-go"
|
||||
"github.com/miekg/dns"
|
||||
"github.com/sirupsen/logrus"
|
||||
"github.com/mr-karan/logf"
|
||||
)
|
||||
|
||||
// DOQResolver represents the config options for setting up a DOQ based resolver.
|
||||
|
@ -47,7 +47,7 @@ func (r *DOQResolver) Lookup(question dns.Question) (Response, error) {
|
|||
defer session.CloseWithError(quic.ApplicationErrorCode(quic.NoError), "")
|
||||
|
||||
for _, msg := range messages {
|
||||
r.resolverOptions.Logger.WithFields(logrus.Fields{
|
||||
r.resolverOptions.Logger.WithFields(logf.Fields{
|
||||
"domain": msg.Question[0].Name,
|
||||
"ndots": r.resolverOptions.Ndots,
|
||||
"nameserver": r.server,
|
||||
|
|
|
@ -5,13 +5,13 @@ import (
|
|||
|
||||
"github.com/miekg/dns"
|
||||
"github.com/mr-karan/doggo/pkg/models"
|
||||
"github.com/sirupsen/logrus"
|
||||
"github.com/mr-karan/logf"
|
||||
)
|
||||
|
||||
// Options represent a set of common options
|
||||
// to configure a Resolver.
|
||||
type Options struct {
|
||||
Logger *logrus.Logger
|
||||
Logger *logf.Logger
|
||||
|
||||
Nameservers []models.Nameserver
|
||||
UseIPv4 bool
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue