X-Git-Url: https://iankelling.org/git/?p=distro-setup;a=blobdiff_plain;f=mailtest-check;h=81363012fc0b3de90f64b47ee3213caaa4a21256;hp=3fdefffb1050afca706edf6622ee5e061dc33185;hb=e958999a4ab6fddd723270b596b4899c0811fa41;hpb=608a1255fc3700611bdabdc9c8635940ac3390af diff --git a/mailtest-check b/mailtest-check index 3fdefff..8136301 100755 --- a/mailtest-check +++ b/mailtest-check @@ -76,16 +76,23 @@ esac getspamdpid() { if [[ ! $spamdpid || ! -d /proc/$spamdpid ]]; then - spamdpid=$(systemctl status spamassassin| sed -n '/^ *Main PID:/s/[^0-9]//gp' ||:) + spamdpid=$(systemctl show --property MainPID --value spamassassin | sed 's/^1$//' ||:) fi } getspamdpid +pr() { + cat >>/var/lib/prometheus/node-exporter/mailtest-check.prom.$$ +} +pr < 0 )) +EOF e spamdpid: $spamdpid if [[ ! $spamdpid ]]; then echo $HOSTNAME mailtest spamd pid not found. systemctl status spamassassin: systemctl status spamassassin fi tmpfile=$(mktemp) +declare -i unexpected=0 for folder in ${folders[@]}; do for from in ${froms[@]}; do latest= @@ -102,7 +109,10 @@ for folder in ${folders[@]}; do fi done <$tmpfile - if [[ $latest ]]; then + if [[ ! $latest ]]; then + # 10 is an arbitrary bad value + unexpected+=10 + else to=$(awk '/^Envelope-to: / {print $2}' $latest) last_sec=$(awk '/^Subject: / {print $4}' $latest) @@ -196,5 +206,15 @@ for folder in ${folders[@]}; do if (( last_sec <= limit )); then echo $HOSTNAME mailtest $folder $from $(date -d @$last_sec +'%a %m-%d %H:%M') fi + # usec = unix seconds + pr <