diff --git a/defaults.inc b/defaults.inc index 92b78710..2ec0ffa7 100755 --- a/defaults.inc +++ b/defaults.inc @@ -1,5 +1,5 @@ -VERS='2.5.116-01092024' +VERS='2.5.117-01092024' noheader=' update service dailytemp confsync -r -report ' diff --git a/inc/power.inc.sh b/inc/power.inc.sh index 409010ce..d18805f5 100644 --- a/inc/power.inc.sh +++ b/inc/power.inc.sh @@ -14,22 +14,18 @@ AVERAGEPOWER(){ } GET_OFFSITEHOST_FANSPEED(){ - vHOSTFAN=$(ssh -q -o ConnectTimeout=1 -o ConnectionAttempts=1 root@${PW_RACADM_ACCESS} racadm -r 10.2.1.21 -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep "System Board Fan1" 2>&1) + vHOSTFAN=$(ssh -q -o ConnectTimeout=1 -o ConnectionAttempts=1 root@${PW_RACADM_ACCESS} racadm -r 10.2.1.21 -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep "System Board Fan3" 2>&1) FanSpeed=$(echo ${vHOSTFAN} | awk '/ / {print $8}' | sed -e 's/%//g') echo ${FanSpeed} > ${PW_TMPFOLDER}/.fanspeed } GET_HOST_FANSPEED(){ - for ESXIHOST in "${PW_ALLHOSTS[@]}"; do - if [ ! -f ${PW_TMPFOLDER}/${PW_ESXI_HOST_NAMES[${ESXIHOST}]}.down ]; then - vHOSTFAN=$(ssh -q -o ConnectTimeout=1 -o ConnectionAttempts=1 root@${PW_RACADM_ACCESS} racadm -r ${PW_HOST_IDRACS[${PW_ESXI_HOST_NAMES[${ESXIHOST}]}]} -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep "System Board Fan1" 2>&1) - if [ "$(echo ${vHOSTFAN} | awk '/ / {print $4}' | sed -e 's/%//g')" == "RPM" ]; then - FanSpeed=$(echo ${vHOSTFAN} | awk '/ / {print $9}' | sed -e 's/%//g') - else - FanSpeed=$(echo ${vHOSTFAN} | awk '/ / {print $8}' | sed -e 's/%//g') - fi - echo ${FanSpeed} > ${PW_TMPFOLDER}/.fanspeed.${PW_ESXI_HOST_NAMES[${ESXIHOST}]} - fi - done + vHOSTFAN=$(ssh -q -o ConnectTimeout=1 -o ConnectionAttempts=1 root@${PW_RACADM_ACCESS} racadm -r ${PW_HOST_IDRACS[${PW_ESXI_HOST_NAMES[${1}]}]} -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep "System Board Fan3" 2>&1) + if [ "$(echo ${vHOSTFAN} | awk '/ / {print $4}' | sed -e 's/%//g')" == "RPM" ]; then + FanSpeed=$(echo ${vHOSTFAN} | awk '/ / {print $9}' | sed -e 's/%//g') + else + FanSpeed=$(echo ${vHOSTFAN} | awk '/ / {print $8}' | sed -e 's/%//g') + fi + echo ${FanSpeed} > ${PW_TMPFOLDER}/.fanspeed.${PW_ESXI_HOST_NAMES[${1}]} } CHECKPOWER(){ @@ -55,7 +51,13 @@ CHECKPOWER(){ done [ "${avgdays}" == "0" ] && unset avgdays [ "${avgdays}" != "" ] && avgdayshdr="${avgdays}-Day-Avg" || avgdayshdr="" - [ "${PTYPE}" != "power" ] && GET_HOST_FANSPEED & + if [ "${PTYPE}" != "power" ]; then + for ESXIHOST in "${PW_ALLHOSTS[@]}"; do + if [ ! -f ${PW_TMPFOLDER}/${PW_ESXI_HOST_NAMES[${ESXIHOST}]}.down ]; then + GET_HOST_FANSPEED ${ESXIHOST} & + fi + done + fi if ([ "${STYPE}" == "" ] || [ "${STYPE}" == "mainsite" ]) && [ "${PTYPE}" != "esxi" ]; then [ ${REPORT} -eq 0 ] && echo @@ -225,7 +227,7 @@ CHECKPOWER(){ OFFSITE_BATT_RUNTIME=`echo "scale=2; ${OFFSITE_BATT_RUNTIME}/60" | bc` OFFSITE_BATT_CAP=$(echo "${upsinfo}" | grep 'battery.charge:' | sed 's/.*: //') - # vHOSTFAN=$(ssh -q -o ConnectTimeout=1 -o ConnectionAttempts=1 root@${PW_RACADM_ACCESS} racadm -r 10.2.1.21 -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep "System Board Fan1" 2>&1) + # vHOSTFAN=$(ssh -q -o ConnectTimeout=1 -o ConnectionAttempts=1 root@${PW_RACADM_ACCESS} racadm -r 10.2.1.21 -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep "System Board Fan3" 2>&1) # FanSpeed=$(echo ${vHOSTFAN} | awk '/ / {print $8}' | sed -e 's/%//g') # OFFSITE_VOLTIN=$(snmpwalk -t 1 -r 0 -v 1 -c public 10.2.1.100 iso.3.6.1.4.1.3808.1.1.1.3.2.1.0 | sed 's/.*: //') @@ -352,7 +354,7 @@ CHECKPOWER(){ fi fi done - # rm -f ${PW_TMPFOLDER}/.fanspeed.* + rm -f ${PW_TMPFOLDER}/.fanspeed.* DIVIDER . lightCyan 75 [ "${STYPE}" == "" ] || [ "${STYPE}" == "mainsite" ] && echo -e "${idsCL[LightCyan]}Mainsite Total ${idsCL[Default]}: ${idsCL[LightGreen]}${SENSOR_TOTAL_AMPS_MAINSITE}'amps - `IDS_NUMBER_FORMAT ${SENSOR_TOTAL_WATTS_MAINSITE}`'watts" [ "${STYPE}" == "" ] || [ "${STYPE}" == "offsite" ] && echo -e "${idsCL[LightCyan]}Offsite Total ${idsCL[Default]}: ${idsCL[LightGreen]}${SENSOR_TOTAL_AMPS_OFFSITE}'amps - `IDS_NUMBER_FORMAT ${SENSOR_TOTAL_WATTS_OFFSITE}`'watts"