minor alerts improvements
authorIan Kelling <ian@iankelling.org>
Thu, 17 Feb 2022 22:58:03 +0000 (17:58 -0500)
committerIan Kelling <ian@iankelling.org>
Thu, 17 Feb 2022 22:58:03 +0000 (17:58 -0500)
brc2
check-remote-mailqs
check-stale-alerts
fixvpndns
hssh
mailtest-check

diff --git a/brc2 b/brc2
index 9c941fec155146f664ce3a5b5f4d6cf7f556474d..9bc89d5158c499ff9892e08c26e1f193f5dcc690 100644 (file)
--- a/brc2
+++ b/brc2
@@ -282,6 +282,26 @@ aclear() {
   system-status _
 }
 
+alerts() {
+  find /var/local/cron-errors /home/iank/cron-errors /sysd-mail-once-state -type f
+}
+ralerts() { # remote alerts
+  local ret shell
+  # this list is duplicated in check-remote-mailqs
+  for h in bk je li frodo kwwg x3wg x2wg kdwg sywg; do
+    echo $h:
+    shell="ssh $h"
+    if [[ $HOSTNAME == "${h%wg}" ]]; then
+      shell=
+    fi
+    ret=0
+    $shell find /var/local/cron-errors /home/iank/cron-errors /sysd-mail-once-state -type f || ret=$?
+    if (( ret )); then
+      echo ret:$ret
+    fi
+  done
+}
+
 ap() {
   # pushd in case current directory has an ansible.cfg file
   pushd /a/xans >/dev/null
index b47810162fa14f7d26aff69d294c0ae17576f953..3caaa61be67db995ba291b24038937cd299e7c8b 100755 (executable)
@@ -9,7 +9,8 @@ source /a/bin/errhandle/err
 shopt -s nullglob
 shopt -s dotglob
 
-for h in bk je li frodo kwwg x3wg x2wg kdwg; do
+# this list duplicated in brc2 ralerts
+for h in bk je li frodo kwwg x3wg x2wg kdwg sywg; do
   statedir=/b/bash_unpublished/mailq-state
   statefile=$statedir/$h
   [[ -d $statedir ]] || continue
index 0bf76ef5e0a62005730b811586666a46a9d4a9aa..a6d8c822ee0f9f3db3859f7c3e4e40607b701cc1 100755 (executable)
@@ -1,4 +1,12 @@
 #!/bin/bash
+
+time_arg="-ctime +4"
+case $1 in
+  now)
+    time_arg=
+    ;;
+esac
+
 if [[ ! -e /dev/shm/iank-status ]]; then
   exit 0
 fi
index 30e07255a443e1720f2a08348a520e8a14504ed2..0619293aa181e2e6f259248a49966c79800ac436 100755 (executable)
--- a/fixvpndns
+++ b/fixvpndns
@@ -11,8 +11,9 @@ esac
 
 
 if ! resolvectl dnsovertls tunfsf &>/dev/null; then
-  echo failed resolvectl dnsovertls tunfsf. rerunning:
-  resolvectl dnsovertls tunfsf
+  ## most likely the interface doesnt exist. if we wanted verbose output, then:
+  # echo failed resolvectl dnsovertls tunfsf. rerunning:
+  # resolvectl dnsovertls tunfsf ||:
   exit 0
 fi
 read _ link _ < <(resolvectl dnsovertls tunfsf)
diff --git a/hssh b/hssh
index 47ca7a75a88494a2e4ee964b8ef9f5b9952e8377..a239bfed5cb58189b5c3a9339f0a82cdb9158105 100755 (executable)
--- a/hssh
+++ b/hssh
@@ -31,6 +31,7 @@ timeout -s 9 600 /usr/local/bin/mount-latest-subvol
 rsync --server -OtpRe.LsfxC . /usr/local
 /usr/local/bin/mail-backup-clean
 /usr/local/bin/check-mailq
+find /var/local/cron-errors /home/iank/cron-errors /sysd-mail-once-state -type f
 EOF
 
 allow=false
index cd12bc7b3738ff47d775d27ec9f444974d6d2359..466908d30c55a92b32cac3b92f8f0bba1fb30f4a 100755 (executable)
@@ -76,13 +76,14 @@ esac
 
 getspamdpid() {
   if [[ ! $spamdpid || ! -d /proc/$spamdpid ]]; then
-    spamdpid=$(systemctl status spamassassin| sed -n '/^ *Main PID:/s/[^0-9]//gp')
+    spamdpid=$(systemctl status spamassassin| sed -n '/^ *Main PID:/s/[^0-9]//gp' ||:)
   fi
 }
 getspamdpid
 e spamdpid: $spamdpid
 if [[ ! $spamdpid ]]; then
-  echo $HOSTNAME mailtest spamd pid not found
+  echo $HOSTNAME mailtest spamd pid not found. systemctl status spamassassin:
+  systemctl status spamassassin
 fi
 tmpfile=$(mktemp)
 for folder in ${folders[@]}; do