iankelling.org
/
git
/
distro-setup
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
improve beetag usability
[distro-setup]
/
mailtest-check
diff --git
a/mailtest-check
b/mailtest-check
index c7d40c17502e967b808e2e251a6b50b63cb1464c..036aeff1a2faf981367d7ff69f9ebb98cff26a58 100755
(executable)
--- a/
mailtest-check
+++ b/
mailtest-check
@@
-57,10
+57,11
@@
if [[ $1 == nonint ]]; then
fi
#### end arg processing ####
fi
#### end arg processing ####
-
-if ! $int; then
- sleep 60
-fi
+# we put this in to avoid dns errors that happen on reboot,
+# but I want to debug them.
+# if ! $int; then
+# sleep 60
+# fi
# TODO, get je to deliver the local mailbox: /m/md/INBOX
# TODO, get je to deliver the local mailbox: /m/md/INBOX
@@
-103,6
+104,7
@@
main() {
try_left=$(( try_limit - ( EPOCHSECONDS - try_start_time) ))
timeout=120 # somewhat arbitrary value
if (( try_left < 0 )); then
try_left=$(( try_limit - ( EPOCHSECONDS - try_start_time) ))
timeout=120 # somewhat arbitrary value
if (( try_left < 0 )); then
+ echo "mailtest-check: failed to rsync fencepost > $try_limit seconds"
break
fi
if (( try_left < timeout )); then
break
fi
if (( try_left < timeout )); then
@@
-144,9
+146,11
@@
EOF
fi
tmpfile=$(mktemp)
declare -i unexpected=0
fi
tmpfile=$(mktemp)
declare -i unexpected=0
- declare -i missing_dnswl=0
for folder in ${folders[@]}; do
for from in ${froms[@]}; do
for folder in ${folders[@]}; do
for from in ${froms[@]}; do
+ declare -i missing_dnswl=0
+ declare -i dnsfail=0
+ declare -i unexpected=0
latest=
last_sec=0
latest=
last_sec=0
@@
-215,8
+219,8
@@
EOF
# eggs has RCVD_IN_DNSWL_MED
keys+=(RCVD_IN_DNSWL_MED)
elif [[ $from == *@gnu.org ]]; then
# eggs has RCVD_IN_DNSWL_MED
keys+=(RCVD_IN_DNSWL_MED)
elif [[ $from == *@gnu.org ]]; then
- # eggs has th
ese
- keys+=(RCVD_IN_DNSWL_MED
DKIMWL_WL_HIGH
)
+ # eggs has th
is. it used to have DKIMWL_WL_HIGH sometime in 2022
+ keys+=(RCVD_IN_DNSWL_MED)
fi
for t in ${keys[@]}; do
fi
for t in ${keys[@]}; do
@@
-264,9
+268,10
@@
EOF
rm -f $resultfile
for r in ${results[@]}; do
case $r in
rm -f $resultfile
for r in ${results[@]}; do
case $r in
- DKIM_INVALID|T_SPF_TEMPERROR|T_SPF_HELO_TEMPERROR)
- missing_dnswl+=1
- ;;
+ # iank: for when we want to handle dns errors differently
+ # DKIM_INVALID|T_SPF_TEMPERROR|T_SPF_HELO_TEMPERROR)
+ # dnsfail+=1
+ # ;;
*)
unexpected=$(( unexpected + 1 ))
;;
*)
unexpected=$(( unexpected + 1 ))
;;
@@
-276,7
+281,9
@@
EOF
# We expect dns failures from time to time, so
# we count them separately and alert differently.
case $miss in
# We expect dns failures from time to time, so
# we count them separately and alert differently.
case $miss in
- DKIM_VALID|DKIM_VALID_AU|DKIM_VALID_EF|SPF_HELO_PASS|SPF_PASS|RCVD_IN_DNSWL_MED|DKIMWL_WL_HIGH)
+ # iank: dns fail
+ # DKIM_VALID|DKIM_VALID_AU|DKIM_VALID_EF|SPF_HELO_PASS|SPF_PASS|
+ RCVD_IN_DNSWL_MED|DKIMWL_WL_HIGH)
missing_dnswl+=1
;;
*)
missing_dnswl+=1
;;
*)
@@
-284,6
+291,10
@@
EOF
;;
esac
done
;;
esac
done
+ pr <<EOF
+mailtest_check_missing_dnswl{folder="$folder",from="$from"} $missing_dnswl
+mailtest_check_unexpected_spamd_results{folder="$folder",from="$from"} $unexpected
+EOF
fi # if spamdpid
fi # if $slow
fi # if spamdpid
fi # if $slow
@@
-297,12
+308,6
@@
mailtest_check_last_usec{folder="$folder",from="$from"} $last_sec
EOF
done # end for from in ${froms[@]}
done # end for folder in ${folders[@]}
EOF
done # end for from in ${froms[@]}
done # end for folder in ${folders[@]}
- if $slow; then
- pr <<EOF
-mailtest_check_missing_dnswl $missing_dnswl
-mailtest_check_unexpected_spamd_results $unexpected
-EOF
- fi
dir=/var/lib/prometheus/node-exporter
if [[ -e $dir ]]; then
dir=/var/lib/prometheus/node-exporter
if [[ -e $dir ]]; then