| 1 | // SPDX-License-Identifier: GPL-3.0-or-later |
| 2 | |
| 3 | package dnsdist |
| 4 | |
| 5 | // https://dnsdist.org/guides/webserver.html#get--jsonstat |
| 6 | // https://dnsdist.org/statistics.html |
| 7 | |
| 8 | type statisticMetrics struct { |
| 9 | AclDrops float64 `stm:"acl-drops" json:"acl-drops"` |
| 10 | CacheHits float64 `stm:"cache-hits" json:"cache-hits"` |
| 11 | CacheMisses float64 `stm:"cache-misses" json:"cache-misses"` |
| 12 | CPUSysMsec float64 `stm:"cpu-sys-msec" json:"cpu-sys-msec"` |
| 13 | CPUUserMsec float64 `stm:"cpu-user-msec" json:"cpu-user-msec"` |
| 14 | DownStreamSendErrors float64 `stm:"downstream-send-errors" json:"downstream-send-errors"` |
| 15 | DownStreamTimeout float64 `stm:"downstream-timeouts" json:"downstream-timeouts"` |
| 16 | DynBlocked float64 `stm:"dyn-blocked" json:"dyn-blocked"` |
| 17 | EmptyQueries float64 `stm:"empty-queries" json:"empty-queries"` |
| 18 | LatencyAvg100 float64 `stm:"latency-avg100" json:"latency-avg100"` |
| 19 | LatencyAvg1000 float64 `stm:"latency-avg1000" json:"latency-avg1000"` |
| 20 | LatencyAvg10000 float64 `stm:"latency-avg10000" json:"latency-avg10000"` |
| 21 | LatencyAvg1000000 float64 `stm:"latency-avg1000000" json:"latency-avg1000000"` |
| 22 | LatencySlow float64 `stm:"latency-slow" json:"latency-slow"` |
| 23 | Latency0 float64 `stm:"latency0-1" json:"latency0-1"` |
| 24 | Latency1 float64 `stm:"latency1-10" json:"latency1-10"` |
| 25 | Latency10 float64 `stm:"latency10-50" json:"latency10-50"` |
| 26 | Latency100 float64 `stm:"latency100-1000" json:"latency100-1000"` |
| 27 | Latency50 float64 `stm:"latency50-100" json:"latency50-100"` |
| 28 | NoPolicy float64 `stm:"no-policy" json:"no-policy"` |
| 29 | NonCompliantQueries float64 `stm:"noncompliant-queries" json:"noncompliant-queries"` |
| 30 | NonCompliantResponses float64 `stm:"noncompliant-responses" json:"noncompliant-responses"` |
| 31 | Queries float64 `stm:"queries" json:"queries"` |
| 32 | RdQueries float64 `stm:"rdqueries" json:"rdqueries"` |
| 33 | RealMemoryUsage float64 `stm:"real-memory-usage" json:"real-memory-usage"` |
| 34 | Responses float64 `stm:"responses" json:"responses"` |
| 35 | RuleDrop float64 `stm:"rule-drop" json:"rule-drop"` |
| 36 | RuleNxDomain float64 `stm:"rule-nxdomain" json:"rule-nxdomain"` |
| 37 | RuleRefused float64 `stm:"rule-refused" json:"rule-refused"` |
| 38 | SelfAnswered float64 `stm:"self-answered" json:"self-answered"` |
| 39 | ServFailResponses float64 `stm:"servfail-responses" json:"servfail-responses"` |
| 40 | TruncFailures float64 `stm:"trunc-failures" json:"trunc-failures"` |
| 41 | } |