adguard

package
v0.28.11 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 12, 2025 License: GPL-3.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ID          = "adguard_home"
	EndpointKey = "endpoint"
	UsernameKey = "username"
	PasswordKey = "password"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AdGuardHome

type AdGuardHome struct {
	// contains filtered or unexported fields
}

func GetClient added in v0.28.11

func GetClient() *AdGuardHome

func NewAdGuardHome

func NewAdGuardHome(endpoint string, username string, password string) *AdGuardHome

func (*AdGuardHome) GetStats

func (v *AdGuardHome) GetStats() (*Stats, error)

func (*AdGuardHome) GetStatus

func (v *AdGuardHome) GetStatus() (*ServerStatus, error)

type ServerStatus added in v0.26.1

type ServerStatus struct {
	DnsAddresses               []string `json:"dns_addresses"`
	DnsPort                    int32    `json:"dns_port"`
	HttpPort                   int32    `json:"http_port"`
	ProtectionEnabled          bool     `json:"protection_enabled"`
	ProtectionDisabledDuration *int64   `json:"protection_disabled_duration,omitempty"`
	DhcpAvailable              *bool    `json:"dhcp_available,omitempty"`
	Running                    bool     `json:"running"`
	Version                    string   `json:"version"`
	Language                   string   `json:"language"`
}

ServerStatus AdGuard Home server status and configuration

type Stats added in v0.26.1

type Stats struct {
	// Time units
	TimeUnits *string `json:"time_units,omitempty"`
	// Total number of DNS queries
	NumDnsQueries *int32 `json:"num_dns_queries,omitempty"`
	// Number of requests blocked by filtering rules
	NumBlockedFiltering *int32 `json:"num_blocked_filtering,omitempty"`
	// Number of requests blocked by safebrowsing module
	NumReplacedSafebrowsing *int32 `json:"num_replaced_safebrowsing,omitempty"`
	// Number of requests blocked by safesearch module
	NumReplacedSafesearch *int32 `json:"num_replaced_safesearch,omitempty"`
	// Number of blocked adult websites
	NumReplacedParental *int32 `json:"num_replaced_parental,omitempty"`
	// Average time in seconds on processing a DNS request
	AvgProcessingTime *float32        `json:"avg_processing_time,omitempty"`
	TopQueriedDomains []TopArrayEntry `json:"top_queried_domains,omitempty"`
	TopClients        []TopArrayEntry `json:"top_clients,omitempty"`
	TopBlockedDomains []TopArrayEntry `json:"top_blocked_domains,omitempty"`
	// Total number of responses from each upstream.
	TopUpstreamsResponses []TopArrayEntry `json:"top_upstreams_responses,omitempty"`
	// Average processing time in seconds of requests from each upstream.
	TopUpstreamsAvgTime  []TopArrayEntry `json:"top_upstreams_avg_time,omitempty"`
	DnsQueries           []int32         `json:"dns_queries,omitempty"`
	BlockedFiltering     []int32         `json:"blocked_filtering,omitempty"`
	ReplacedSafebrowsing []int32         `json:"replaced_safebrowsing,omitempty"`
	ReplacedParental     []int32         `json:"replaced_parental,omitempty"`
}

Stats Server statistics data

type TopArrayEntry added in v0.26.1

type TopArrayEntry struct {
	DomainOrIp           *float32 `json:"domain_or_ip,omitempty"`
	AdditionalProperties map[string]interface{}
}

TopArrayEntry Represent the number of hits or time duration per key (url, domain, or client IP).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL