diff --git a/powerwall.sh b/powerwall.sh index c1edfebc..53e3aba7 100755 --- a/powerwall.sh +++ b/powerwall.sh @@ -626,13 +626,16 @@ CHECKPOWER(){ for SENSOR in ${PW_SENSOR_ORD[@]}; do if [ "${PW_HOST_IDRACS[${SENSOR}]}" != "" ]; 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') - unset IFS; IFS=$'\n' read -rd '' -a HOST_WATT_SENSORS <<<"${HOST_WATT_SENSORS}"; unset IFS - s=1 - for ss in "${HOST_WATT_SENSORS[@]}"; do - [[ "${ss}" = *"System Board"* ]] && break || ((s++)) - done - 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/.*: //') + 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') + unset IFS; IFS=$'\n' read -rd '' -a HOST_WATT_SENSORS <<<"${HOST_WATT_SENSORS}"; unset IFS + s=1 + for ss in "${HOST_WATT_SENSORS[@]}"; do + [[ "${ss}" = *"System Board"* ]] && break || ((s++)) + done + 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" echo -e "${idsCL[LightCyan]}${SENSOR} ${idsCL[Default]}: ${HOST_WATTS_disp}${idsCL[Default]}" fi