From c8264e3450ff5b729ac97a030ff170ef919b26c9 Mon Sep 17 00:00:00 2001 From: David Schroeder Date: Tue, 16 May 2023 20:33:50 -0500 Subject: [PATCH] Update powerwall.sh --- powerwall.sh | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/powerwall.sh b/powerwall.sh index 005af99e..85222768 100755 --- a/powerwall.sh +++ b/powerwall.sh @@ -114,6 +114,7 @@ CHECKTEMP_SERVICE(){ fi if [ $(bc -l <<< "$temp_f >= $temp_warn") -eq 1 ] && [ $(bc -l <<< "$temp_f < $temp_crit") -eq 1 ]; then + touch ${TMPFOLDER}/temp.warn if [ $temp_diff -gt 1 ] || [ "${last_temp[${SENSOR}]}" = "1" ]; then SENDNOTICE "${SENSOR} TEMP WARNING" "($datetime) WARNING TEMP: ${temp_f}'F - (Difference of ${temp_diff}')" 1 echo "($datetime) - ${temp_f}'F - alert sent" >> ${logtemp} @@ -122,6 +123,7 @@ CHECKTEMP_SERVICE(){ fi elif [ $(bc -l <<< "$temp_f >= $temp_crit") -eq 1 ] && [ $(bc -l <<< "$temp_f < $temp_crit_sys") -eq 1 ]; then + touch ${TMPFOLDER}/temp.crit if [ $temp_diff -gt 1 ] || [ "${last_temp[${SENSOR}]}" = "1" ]; then SENDNOTICE "${SENSOR} TEMP CRITICAL" "($datetime) CRITICAL TEMP: ${temp_f}'F - (Difference of ${temp_diff}') Shutting down servers!!" 1 @@ -134,6 +136,7 @@ Shutting down servers!!" 1 fi elif [ $(bc -l <<< "$temp_f >= $temp_crit_sys") -eq 1 ]; then + touch ${TMPFOLDER}/temp.critsys if [ $temp_diff -gt 1 ] || [ "${last_temp[${SENSOR}]}" = "1" ]; then SENDNOTICE "${SENSOR} TEMP CRITICAL" "($datetime) SYSTEM CRITICAL TEMP: ${temp_f}'F - (Difference of ${temp_diff}') Shutting down system servers!!" 1 @@ -165,11 +168,17 @@ NORMAL TEMP: ${temp_f}'F" echo "($datetime) - ${temp_f}'F - Normal Temp" >> ${logtemp} fi + rm -f ${TMPFOLDER}/temp.* last_temp[${SENSOR}]=1 fi - [ -f ${TMPFOLDER}/${SENSOR}.insert ] && errtime=$(expr `date +%s` - $(stat -c %Y ${TMPFOLDER}/${SENSOR}.insert)) || errtime=100000 - if [ ${errtime} -ge 300 ]; then + [ -f ${TMPFOLDER}/${SENSOR}.insert ] && lastinsert=$(expr `date +%s` - $(stat -c %Y ${TMPFOLDER}/${SENSOR}.insert)) || lastinsert=100000 + if [ "$(compgen -G "${TMPFOLDER}/temp.*")" != "" ] || [ "$(compgen -G "${TMPFOLDER}/power.ac.*")" != "" ] || [ "$(compgen -G "${TMPFOLDER}/power.dc.*")" != "" ]; then + wait=60 + else + wait=300 + fi + if [ ${lastinsert} -ge ${wait} ]; then if [ "${temp_h}" != "" ]; then QRY="USE servermonitor; INSERT INTO sensor_data (\`sensorid\`, \`date\`, \`temp\`, \`hum\`) VALUES ('${SENSOR_ID[${SENSOR}]}','${datetime}','${temp_f}','${temp_h}')" else @@ -330,7 +339,7 @@ POWERLOGGER_SERVICE(){ ${mysql_conn} -e "USE servermonitor; ${QRY}" - if [ "$(compgen -G "${TMPFOLDER}/power.ac.*")" != "" ] || [ "$(compgen -G "${TMPFOLDER}/power.dc.*")" != "" ]; then + if [ "$(compgen -G "${TMPFOLDER}/temp.*")" != "" ] || [ "$(compgen -G "${TMPFOLDER}/power.ac.*")" != "" ] || [ "$(compgen -G "${TMPFOLDER}/power.dc.*")" != "" ]; then sleep 1m else sleep 5m