From cb4c63ca681fbe92e7f78228249a73e294015b4e Mon Sep 17 00:00:00 2001 From: David Schroeder Date: Tue, 7 Nov 2023 07:41:00 -0600 Subject: [PATCH] Update powerwall.sh --- powerwall.sh | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/powerwall.sh b/powerwall.sh index 95b3c4fc..29dda863 100755 --- a/powerwall.sh +++ b/powerwall.sh @@ -533,11 +533,12 @@ AVERAGEPOWER(){ CHECKPOWER(){ start=`date +%s` rm -f ${PW_TMPFOLDER}/*.hostpower* + avgdays=1 if [ "${1}" == "" ] || [ "${1}" == "all" ] || [ "${1}" == "mainsite" ]; then echo DIVIDER . yellow 75 - echo -e "${idsCL[Yellow]}Mainsite Power Information 3-Day-Avg" + echo -e "${idsCL[Yellow]}Mainsite Power Information ${avgdays}-Day-Avg" DIVIDER . yellow 75 INVSTATSINFO=$(curl -s "http://${PW_INVERTER_IP}/stats.json") @@ -585,7 +586,8 @@ CHECKPOWER(){ # fi echo -e "${idsCL[LightCyan]}ServerRack Amps ${idsCL[Default]}: ${idsCL[Green]}${APCPDU_AMP}'amps${idsCL[Default]}" - average=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['server-rack']} 3) + average=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['server-rack']} ${avgdays}) + [[ "${average}" == *"."* ]] && [[ "${average}" != *".0"* ]] && average=`printf "%'.2f\n" ${average}` || average=`printf "%'.0f\n" ${average}` average_disp="${idsCL[LightYellow]} ${average}'watts" echo -e "${idsCL[LightCyan]}ServerRack Wattage ${idsCL[Default]}: ${idsCL[Green]}${APCPDU_WATT_disp}'watts ~ estimate${average_disp}${idsCL[Default]}" echo @@ -600,7 +602,8 @@ CHECKPOWER(){ fi echo -e "${idsCL[LightCyan]}NetworkRack Amps ${idsCL[Default]}: ${idsCL[Green]}${NETRK_AMP}'amps ~ estimate${idsCL[Default]}" - average=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['network-rack']} 3) + average=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['network-rack']} ${avgdays}) + [[ "${average}" == *"."* ]] && [[ "${average}" != *".0"* ]] && average=`printf "%'.2f\n" ${average}` || average=`printf "%'.0f\n" ${average}` average_disp="${idsCL[LightYellow]} ${average}'watts" echo -e "${idsCL[LightCyan]}NetworkRack Wattage ${idsCL[Default]}: ${idsCL[Green]}${NETRK_WATT}'watts ~ estimate${average_disp}${idsCL[Default]}" echo @@ -608,7 +611,8 @@ CHECKPOWER(){ echo -e "${idsCL[LightCyan]}Voltage ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_VOLT}'volts${idsCL[Default]}" echo -e "${idsCL[LightCyan]}Voltage Drop ${idsCL[Default]}: ${idsCL[LightRed]}${VOLT_DROP}'volts${idsCL[Default]}" echo -e "${idsCL[LightCyan]}Total Amps ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_AMP}'amps${idsCL[Default]}" - average=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['total']} 3) + average=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['total']} ${avgdays}) + [[ "${average}" == *"."* ]] && [[ "${average}" != *".0"* ]] && average=`printf "%'.2f\n" ${average}` || average=`printf "%'.0f\n" ${average}` average_disp="${idsCL[LightYellow]} ${average}'watts" echo -e "${idsCL[LightCyan]}Total Wattage ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_WATT_disp}'watts${average_disp}${idsCL[Default]}" echo @@ -620,7 +624,7 @@ CHECKPOWER(){ DIVIDER . yellow 75 - echo -e "${idsCL[Yellow]}Offsite Power Information 3-Day-Avg" + echo -e "${idsCL[Yellow]}Offsite Power Information ${avgdays}-Day-Avg" DIVIDER . yellow 75 upsinfo=$(ssh -q -o ConnectTimeout=1 -o ConnectionAttempts=1 admin@10.2.1.1 'upsc CP1500PFCLCD') @@ -652,7 +656,8 @@ CHECKPOWER(){ echo -e "${idsCL[LightCyan]}UPS Voltage Out ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_VOLTOUT}'volts${idsCL[Default]}" echo echo -e "${idsCL[LightCyan]}Total Amps ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_AMPS}'amps ~ estimate${idsCL[Default]}" - average=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['offsite-ups']} 3) + average=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['offsite-ups']} ${avgdays}) + [[ "${average}" == *"."* ]] && [[ "${average}" != *".0"* ]] && average=`printf "%'.2f\n" ${average}` || average=`printf "%'.0f\n" ${average}` average_disp="${idsCL[LightYellow]} ${average}'watts" echo -e "${idsCL[LightCyan]}Total Wattage ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_WATTS}'watts ~ estimate${average_disp}${idsCL[Default]}" echo @@ -663,7 +668,7 @@ CHECKPOWER(){ DIVIDER . yellow 75 - echo -e "${idsCL[Yellow]}ESXi Host Power Information 3-Day-Avg" + echo -e "${idsCL[Yellow]}ESXi Host Power Information ${avgdays}-Day-Avg" DIVIDER . yellow 75 for SENSOR in ${PW_SENSOR_ORD[@]}; do @@ -686,7 +691,8 @@ CHECKPOWER(){ HOST_WATTS=$(snmpwalk -t 1 -r 0 -v 1 -c public ${PW_HOST_IDRACS[${SENSOR}]} iso.3.6.1.4.1.674.10892.5.4.600.30.1.6.1.${s} | sed 's/.*: //') # fi [[ "${HOST_WATTS}" = *"Timeout"* ]] && HOST_WATTS_disp="${idsCL[LightRed]}Host Offline" || HOST_WATTS_disp="${idsCL[Green]}${HOST_WATTS}'watts" - average=$(AVERAGEPOWER ${PW_POWERSENSOR_ID[${SENSOR}]} 3) + average=$(AVERAGEPOWER ${PW_POWERSENSOR_ID[${SENSOR}]} ${avgdays}) + [[ "${average}" == *"."* ]] && [[ "${average}" != *".0"* ]] && average=`printf "%'.2f\n" ${average}` || average=`printf "%'.0f\n" ${average}` average_disp="${idsCL[LightYellow]} ${average}'watts" echo -e "${idsCL[LightCyan]}${SENSOR} ${idsCL[Default]}: ${HOST_WATTS_disp}${average_disp}${idsCL[Default]}" fi