Update offsite-power-check.sh

This commit is contained in:
2023-11-05 17:12:30 -06:00
parent 002f37c794
commit 52016d3bb3

View File

@@ -7,14 +7,15 @@ PW_LOGPOWER=${PW_LOGFOLDER}/log-power
[ ! -f ${PW_LOGFILE} ] && touch ${PW_LOGFILE}
[ ! -f ${PW_LOGPOWER} ] && touch ${PW_LOGPOWER}
source ${PW_FOLDER}/settings.conf
SENDNOTICE2(){
TITLE=${1}
MESSAGE="${2}
$(date)"
MSGSOUND=Cosmic
PUSHOVER_APP_TOKEN="aduyec9mcuoaxir5pavirb8tioixpe"
PUSHOVER_USER_TOKEN="ubt1csryf5rwa1j96de8revt2fvw4j"
if [ "${3}" = "2" ]; then
PRIORITY="${3}&retry=60&expire=600"
@@ -43,7 +44,7 @@ while true; do
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'Volts - Offsite Back to Normal Voltage" >> ${PW_LOGPOWER}
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'Volts - OFFSITE POWER NOMINAL AGAIN" >> ${PW_LOGFILE}
SENDNOTICE2 "OFFSITE POWER NOMINAL AGAIN" "Normal voltage detected
VOLTAGE: ${OFFSITE_VOLTIN}'Volts"
VOLTAGE: ${OFFSITE_VOLTIN}'Volts"
rm -f ${PW_TMPFOLDER}/power.offsite.ac.*
fi
if [ -f ${PW_TMPFOLDER}/power.offsite.off ]; then
@@ -52,25 +53,20 @@ while true; do
elif [ $(expr `date +%s` - $(stat -f %m ${PW_TMPFOLDER}/power.offsite.restored)) -gt 60 ]; then
SENDNOTICE2 "OFFSITE HOST POWER" "Powering offsite host(s) back on after power was restored"
for offsite_host in "${PW_OFFSITEHOSTS[@]}"; do
# HOSTPOWER ${offsite_host} on >/dev/null 2>&1
done
ipmitool -I lanplus -H 10.2.1.21 -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power on
rm -f ${PW_TMPFOLDER}/power.offsite.*
echo "POWERING ON HOST"
fi
else
[ $(expr `date +%s` - $(stat -f %m ${PW_LOGPOWER})) > 300 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'Volts - Offsite Normal Voltage" >> ${PW_LOGPOWER}
fi
echo "NORMAL: ${OFFSITE_VOLTIN}"
else
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'Volts - OFFSITE POWER OFF/LOW POWER" >> ${PW_LOGPOWER}
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'Volts - OFFSITE POWER OFF/LOW POWER" >> ${PW_LOGFILE}
if [ ! -f ${PW_TMPFOLDER}/power.offsite.ac.low ] || [ $(expr `date +%s` - $(stat -f %m ${PW_TMPFOLDER}/power.offsite.ac.low)) -gt 240 ]; then
SENDNOTICE2 "OFFSITE POWER ALERT - POWER OFF/LOW!!" "Power off or low voltage detected
BATT CAPACITY: ${OFFSITE_BATT_CAP}'(percent)
BATT RUNTIME: ${OFFSITE_BATT_RUNTIME}'Mins" 1
BATT CAPACITY: ${OFFSITE_BATT_CAP}'(percent)
BATT RUNTIME: ${OFFSITE_BATT_RUNTIME}'Mins" 1
touch ${PW_TMPFOLDER}/power.offsite.ac.low
fi
@@ -80,15 +76,17 @@ while true; do
touch ${PW_TMPFOLDER}/power.offsite.off
echo "SHUTTING DOWN HOST"
fi
echo "LOW/OFF: ${OFFSITE_VOLTIN}"
fi
else
SENDNOTICE2 "NUT DRIVER FAILUER" "Restarting NUT service"
SENDNOTICE2 "NUT DRIVER FAILURE" "Restarting NUT service"
/usr/local/etc/rc.d/nut.sh restart
sleep 10s
fi
sleep 10s
done
SENDNOTICE2 "TEST" "Testing 321"
exit 0