Update temp.inc.sh

This commit is contained in:
2024-02-26 22:25:34 -06:00
parent aeffe19df6
commit bca43705f1

View File

@@ -427,7 +427,8 @@ CHECKTEMPSENSOR(){
}
AVERAGETEMP(){
temptotal=0
daysback=${2}
lookback=${2}
interval=0
sensor=${1}
sensorid=${PW_SENSOR_ID[${sensor}]}
logsfound=0;
@@ -439,28 +440,29 @@ AVERAGETEMP(){
WHERE="sensorid=${sensorid}"
fi
if [[ "${daysback^^}" = *"M"* ]]; then
interval="${daysback::-1} MINUTE"
elif [[ "${daysback^^}" = *"H"* ]]; then
interval="${daysback::-1} HOUR"
elif [[ "${daysback^^}" = *"D"* ]]; then
interval="${daysback::-1} DAY"
elif [[ "${daysback}" =~ ^[0-9]+$ ]]; then
interval="${daysback} DAY"
if [[ "${lookback^^}" = *"M"* ]]; then
interval="${lookback::-1} MINUTE"
elif [[ "${lookback^^}" = *"H"* ]]; then
interval="${lookback::-1} HOUR"
elif [[ "${lookback^^}" = *"D"* ]]; then
interval="${lookback::-1} DAY"
elif [[ "${lookback}" =~ ^[0-9]+$ ]]; then
interval="${lookback} DAY"
fi
while IFS=$'\t' read date temp hum speed ;do
if ([ "${3}" == "FanSpeed" ] && [[ "${PW_ESXI_FANSPEEDCONTROL_HOSTS}" = *"${PW_HOST_IDRACS[${sensor}]}"* ]]) || [ "${sensorid}" == "19" ]; then
val=${speed}
else
val=${temp}
fi
if [ "${val}" != "" ] && [ "${val}" != "0" ] && [[ "${val}" =~ ^[0-9]+(\.[0-9]+)?$ ]]; then
temptotal=$(bc <<< "scale=2; ${temptotal}+${val}")
((logsfound++))
fi
done < <(${mysql_conn} -se "USE servermonitor; SELECT date,temp,hum,speed from sensor_data WHERE ${WHERE} AND date >= DATE_SUB(NOW(), INTERVAL ${interval}) ORDER BY id DESC;")
if [ ${logsfound} -gt 0 ]; then
if [ "${interval}" != "0" ]; then
while IFS=$'\t' read date temp hum speed ;do
if ([ "${3}" == "FanSpeed" ] && [[ "${PW_ESXI_FANSPEEDCONTROL_HOSTS}" = *"${PW_HOST_IDRACS[${sensor}]}"* ]]) || [ "${sensorid}" == "19" ]; then
val=${speed}
else
val=${temp}
fi
if [ "${val}" != "" ] && [ "${val}" != "0" ] && [[ "${val}" =~ ^[0-9]+(\.[0-9]+)?$ ]]; then
temptotal=$(bc <<< "scale=2; ${temptotal}+${val}")
((logsfound++))
fi
done < <(${mysql_conn} -se "USE servermonitor; SELECT date,temp,hum,speed from sensor_data WHERE ${WHERE} AND date >= DATE_SUB(NOW(), INTERVAL ${interval}) ORDER BY id DESC;")
fi
if [ "${interval}" != "0" ] && [ ${logsfound} -gt 0 ]; then
if [ "${3}" == "FanSpeed" ] && [[ "${PW_ESXI_FANSPEEDCONTROL_HOSTS}" = *"${PW_HOST_IDRACS[${sensor}]}"* ]]; then
average=$(ROUND_NUMBER $(bc <<< "scale=2; ${temptotal}/${logsfound}") 2)
elif [ "${sensorid}" == "19" ]; then