Update powerwall.sh

This commit is contained in:
2023-12-03 12:01:24 -06:00
parent 5077e4a1e1
commit 89338c4ee5

View File

@@ -740,20 +740,18 @@ CHECKPOWER(){
if [ ${gochk} -eq 1 ]; then
echo -en "${idsCL[Yellow]}Pulling data for '${SENSOR}' ... "
# 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.3 | sed 's/.*: //')
# if [ "${HOST_WATTS}" = "" ]; then
HOST_WATT_SENSORS=$(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.8.1 -O vq | sed -e 's/"//g')
IFS=$'\n'
read -rd '' -a HOST_WATT_SENSORS <<<"${HOST_WATT_SENSORS}"
unset IFS
HOST_WATT_SENSORS=$(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.8.1 -O vq | sed -e 's/"//g')
IFS=$'\n'
read -rd '' -a HOST_WATT_SENSORS <<<"${HOST_WATT_SENSORS}"
unset IFS
if [[ "${HOST_WATT_SENSORS}" != *"Timeout"* ]]; then
found=0; PS1='0.0'; PS2='0.0'
for s in {1..5}; do
DP=$(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.8.1.${s} | sed 's/.*: //')
if [[ "${DP}" = *"System Board"* ]]; then
found=1
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/.*: //')
# break
elif [[ "${DP}" = *"PS1"* ]]; then
PS1=$(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/.*: //')
elif [[ "${DP}" = *"PS2"* ]]; then
@@ -765,18 +763,22 @@ CHECKPOWER(){
[ "${PS2}" != "0.0" ] && PS2=`echo "scale=1; ${PS2}/10" | bc` && (( $(bc <<<"${PS2} < 1") )) && [[ "${PS2}" = *"."* ]] && PS2="0${PS2}"
HOST_AMPS=`echo "scale=1; ${PS1}+${PS2}" | bc`
[[ "${HOST_WATTS}" = *"Timeout"* ]] && HOST_WATTS_disp="${idsCL[LightRed]}Host Offline" || HOST_WATTS_disp="${idsCL[Green]}${HOST_AMPS}'amps - `IDS_NUMBER_FORMAT ${HOST_WATTS}`'watts"
elif [ "$(ipmitool -I lanplus -H ${PW_HOST_IDRACS[${SENSOR}]} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power status | grep off)" != "" ]; then
HOST_WATTS_disp="${idsCL[LightRed]}Host offline"
HOST_WATTS_disp="${idsCL[LightRed]}Host powered down"
elif [ "${HOST_WATTS}" == "0" ]; then
HOST_WATTS_disp="${idsCL[Yellow]}Host PSU not capable"
else
HOST_WATTS_disp="${idsCL[LightRed]}Could not pull data"
fi
# fi
else
HOST_WATTS_disp="${idsCL[LightRed]}Host offline"
fi
MSG="${idsCL[White]}${SENSOR} ${idsCL[Default]}: ${HOST_WATTS_disp}"
echo -en "\r\033[K${MSG}"