From 9aa81123bb64abc640f7a1f4444e0b75b47f3b9d Mon Sep 17 00:00:00 2001 From: David Schroeder Date: Sat, 13 Jan 2024 10:15:22 -0600 Subject: [PATCH] Update power.inc.sh --- inc/power.inc.sh | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/inc/power.inc.sh b/inc/power.inc.sh index 8e35d193..dbd2d3c8 100644 --- a/inc/power.inc.sh +++ b/inc/power.inc.sh @@ -6,9 +6,11 @@ AVERAGEPOWER(){ total_amp=0 total_watt=0 while IFS=$'\t' read date amp watt ;do - total_amp=$(bc <<< "scale=2; ${total_amp}+${amp}") - total_watt=$(bc <<< "scale=2; ${total_watt}+${watt}") - ((logsfound++)) + if [ "${amp}" != "" ] && [ "${watt}" != "" ]; then + total_amp=$(bc <<< "scale=2; ${total_amp}+${amp}") + total_watt=$(bc <<< "scale=2; ${total_watt}+${watt}") + ((logsfound++)) + fi done < <(${mysql_conn} -se "USE servermonitor; SELECT date,amp,watt from power_data WHERE sensorid=${sensorid} AND date BETWEEN DATE_SUB(DATE(NOW()), INTERVAL ${daysback} DAY) AND NOW() ORDER BY id DESC;") if [ "${logsfound}" != "0" ]; then average_amp=$(bc <<< "scale=2; ${total_amp}/${logsfound}") @@ -22,8 +24,10 @@ AVERAGEPOWER(){ total=0 [ "${3}" != "" ] && ptype=${3} || ptype=watt while IFS=$'\t' read date ${ptype} ;do - total=$(bc <<< "scale=2; ${total}+${!ptype}") - ((logsfound++)) + if [ "${!ptype}" != "" ]; then + total=$(bc <<< "scale=2; ${total}+${!ptype}") + ((logsfound++)) + fi done < <(${mysql_conn} -se "USE servermonitor; SELECT date,${ptype} from power_data WHERE sensorid=${sensorid} AND date BETWEEN DATE_SUB(DATE(NOW()), INTERVAL ${daysback} DAY) AND NOW() ORDER BY id DESC;") [ "${logsfound}" != "0" ] && average=$(bc <<< "scale=2; ${total}/${logsfound}") || average=0 echo ${average}