Versions in this module Expand all Collapse all v0 v0.0.2 Oct 1, 2023 v0.0.1 Sep 30, 2023 Changes in this version + const ErrEndOfToken + func AnonymizeIP(ip net.IP) + type AddParams struct + Answer *dns.Msg + AuthenticatedData bool + Cached bool + ClientID string + ClientIP net.IP + ClientProto ClientProto + Elapsed time.Duration + OrigAnswer *dns.Msg + Question *dns.Msg + ReqECS *net.IPNet + Result *filtering.Result + Upstream string + type Client struct + Disallowed bool + DisallowedRule string + IgnoreQueryLog bool + Name string + WHOIS *whois.Info + type ClientProto string + const ClientProtoDNSCrypt + const ClientProtoDoH + const ClientProtoDoQ + const ClientProtoDoT + const ClientProtoPlain + func NewClientProto(s string) (cp ClientProto, err error) + type Config struct + AnonymizeClientIP bool + Anonymizer *aghnet.IPMut + BaseDir string + ConfigModified func() + Enabled bool + FileEnabled bool + FindClient func(ids []string) (c *Client, err error) + HTTPRegister aghhttp.RegisterFunc + Ignored *aghnet.IgnoreEngine + MemSize uint32 + RotationIvl time.Duration + type QueryLog interface + Add func(params *AddParams) + Close func() + ShouldLog func(host string, qType, qClass uint16, ids []string) bool + Start func() + WriteDiskConfig func(c *Config) + func New(conf Config) (ql QueryLog, err error)