[adguardhome_dns] Add doq (DNS-over-QUIC), fix getting U when logfile is empty
- Print U values when logfile is not here - Print 0 values when logfile is there but no values are found - Add support for DNS-over-QUIC
This commit is contained in:
parent
b963a960d3
commit
0f08bce55a
|
@ -1,4 +1,4 @@
|
||||||
#!/bin/sh
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ GPLv2
|
||||||
. "$MUNIN_LIBDIR/plugins/plugin.sh"
|
. "$MUNIN_LIBDIR/plugins/plugin.sh"
|
||||||
|
|
||||||
RECORDS="A AAAA ANY CNAME MX NS NXDOMAIN PTR SIG SOA SRV TXT"
|
RECORDS="A AAAA ANY CNAME MX NS NXDOMAIN PTR SIG SOA SRV TXT"
|
||||||
CLIENTS="dns doh dot"
|
CLIENTS="dns doh dot doq"
|
||||||
|
|
||||||
case $1 in
|
case $1 in
|
||||||
|
|
||||||
|
@ -125,12 +125,46 @@ case $1 in
|
||||||
esac
|
esac
|
||||||
|
|
||||||
INTERVAL=$(date -d "${interval:-5} minutes ago" +%FT%H:%M)
|
INTERVAL=$(date -d "${interval:-5} minutes ago" +%FT%H:%M)
|
||||||
LOGDATA=$(sed -ne "s/^\\(.*\\)\\($INTERVAL\\)/\\1\\2/p" "${log:-"/opt/AdGuardHome/data/querylog.json"}")
|
|
||||||
|
if [ ! -f "${log:-"/opt/AdGuardHome/data/querylog.json"}" ]; then
|
||||||
|
|
||||||
|
for VALUE in queries blocked safesearch safebrowsing parental "$RECORDS" "$CLIENTS" avgproc; do
|
||||||
|
export $VALUE="U"
|
||||||
|
done
|
||||||
|
for KEY in $RECORDS; do
|
||||||
|
export $KEY="U"
|
||||||
|
done
|
||||||
|
|
||||||
|
for KEY in $CLIENTS; do
|
||||||
|
if [ $KEY = "dns" ]; then
|
||||||
|
export $KEY="U"
|
||||||
|
else
|
||||||
|
export $KEY="U"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
LOGDATA=$(sed -ne "s/^\\(.*\\)\\($INTERVAL\\)/\\1\\2/p" "${log:-"/opt/AdGuardHome/data/querylog.json"}")
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -z "$LOGDATA" ]; then
|
if [ -z "$LOGDATA" ]; then
|
||||||
|
|
||||||
for VALUE in queries blocked safesearch safebrowsing parental "$RECORDS" "$CLIENTS" avgproc; do
|
for VALUE in queries blocked safesearch safebrowsing parental "$RECORDS" "$CLIENTS" avgproc; do
|
||||||
export $VALUE="U"
|
export $VALUE="0"
|
||||||
|
done
|
||||||
|
|
||||||
|
for KEY in $RECORDS; do
|
||||||
|
export $KEY="0"
|
||||||
|
done
|
||||||
|
|
||||||
|
for KEY in $CLIENTS; do
|
||||||
|
if [ $KEY = "dns" ]; then
|
||||||
|
export $KEY="0"
|
||||||
|
else
|
||||||
|
export $KEY="0"
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
else
|
else
|
||||||
|
@ -163,7 +197,7 @@ else
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
avgproc=$(echo "$LOGDATA" | grep -Po '\"Elapsed\":[0-9]+' | sed "s/\"Elapsed\"://g" | awk '{ total += $0/1000000; count++ } END { print total/count }')
|
avgproc=$(echo "$LOGDATA" | grep -Po '\"Elapsed\":[0-9]+' | sed "s/\"Elapsed\"://g" | awk -v "count=0" '{ total += $0/1000000; count++ } END { print total/count }')
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue