Update power.inc.sh
This commit is contained in:
152
inc/power.inc.sh
152
inc/power.inc.sh
@@ -120,14 +120,14 @@ CHECKPOWER(){
|
|||||||
BATTLIFE=`echo "scale=2; (${BATTV}*100)/${BATT_FULL}" | bc`
|
BATTLIFE=`echo "scale=2; (${BATTV}*100)/${BATT_FULL}" | bc`
|
||||||
if (( $(bc <<<"${BATTV} >= ${FLOAT_CHARGE}") )) || ([ "${PW_INVERTER_MODES[${INV_MODE}]}" == "AC Input" ] && (( $(bc <<<"${BATTA} < -2") ))); then
|
if (( $(bc <<<"${BATTV} >= ${FLOAT_CHARGE}") )) || ([ "${PW_INVERTER_MODES[${INV_MODE}]}" == "AC Input" ] && (( $(bc <<<"${BATTA} < -2") ))); then
|
||||||
if (( $(bc <<<"${BATTV} >= ${BULK_CHARGE}") )) || ([ "${PW_INVERTER_MODES[${INV_MODE}]}" == "AC Input" ] && (( $(bc <<<"${BATTA} < -2") ))); then
|
if (( $(bc <<<"${BATTV} >= ${BULK_CHARGE}") )) || ([ "${PW_INVERTER_MODES[${INV_MODE}]}" == "AC Input" ] && (( $(bc <<<"${BATTA} < -2") ))); then
|
||||||
BATTA_disp="${idsCL[Green]}`IDS_NUMBER_FORMAT ${BATTA}`'amps ${idsCL[LightCyan]}- Bulk Charging"
|
BATTA_disp="${idsCL[Green]}`IDS_NUMBER_FORMAT ${BATTA}`'A ${idsCL[LightCyan]}- Bulk Charging"
|
||||||
else
|
else
|
||||||
BATTA_disp="${idsCL[Green]}`IDS_NUMBER_FORMAT ${BATTA}`'amps ${idsCL[LightCyan]}- Float Charging"
|
BATTA_disp="${idsCL[Green]}`IDS_NUMBER_FORMAT ${BATTA}`'A ${idsCL[LightCyan]}- Float Charging"
|
||||||
fi
|
fi
|
||||||
elif [ "${BATTA}" = "-0.1" ] || [ "${BATTA}" = "-0.2" ] || [ "${BATTA}" = "-0.3" ]; then
|
elif [ "${BATTA}" = "-0.1" ] || [ "${BATTA}" = "-0.2" ] || [ "${BATTA}" = "-0.3" ]; then
|
||||||
BATTA_disp="${idsCL[LightCyan]}`IDS_NUMBER_FORMAT ${BATTA}`'amps ${idsCL[LightCyan]}- Standby"
|
BATTA_disp="${idsCL[LightCyan]}`IDS_NUMBER_FORMAT ${BATTA}`'A ${idsCL[LightCyan]}- Standby"
|
||||||
else
|
else
|
||||||
BATTA_disp="${idsCL[LightRed]}`IDS_NUMBER_FORMAT ${BATTA}`'amps ${idsCL[LightCyan]}- Discharging"
|
BATTA_disp="${idsCL[LightRed]}`IDS_NUMBER_FORMAT ${BATTA}`'A ${idsCL[LightCyan]}- Discharging"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
# if [ "$(CHECK_HOST ${PW_UPS_IP})" != "false" ]; then
|
# if [ "$(CHECK_HOST ${PW_UPS_IP})" != "false" ]; then
|
||||||
@@ -179,24 +179,24 @@ CHECKPOWER(){
|
|||||||
echo -e "${idsCL[White]}Inverter Errors ${idsCL[Default]}: ${INV_ERROR_disp}"
|
echo -e "${idsCL[White]}Inverter Errors ${idsCL[Default]}: ${INV_ERROR_disp}"
|
||||||
echo
|
echo
|
||||||
fi
|
fi
|
||||||
echo -en "${idsCL[White]}Inverter Input Volts ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${INPUTV}`'volts"
|
echo -en "${idsCL[White]}Inverter Input Volts ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${INPUTV}`'V"
|
||||||
[ "${TEST_INPUTACV}" != "" ] && echo -e " ${idsCL[Yellow]}***TEST MODE***" || echo ""
|
[ "${TEST_INPUTACV}" != "" ] && echo -e " ${idsCL[Yellow]}***TEST MODE***" || echo ""
|
||||||
echo -e "${idsCL[White]}Inverter Input Amps ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${INPUTA}`'amps"
|
echo -e "${idsCL[White]}Inverter Input Amps ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${INPUTA}`'A"
|
||||||
if [ ${REPORT} -eq 0 ]; then
|
if [ ${REPORT} -eq 0 ]; then
|
||||||
echo
|
echo
|
||||||
echo -e "${idsCL[White]}Inverter Output Volts ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OUTPUTV}`'volts / `IDS_NUMBER_FORMAT ${OUTPUTV2}`'volts"
|
echo -e "${idsCL[White]}Inverter Output Volts ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OUTPUTV}`'V / `IDS_NUMBER_FORMAT ${OUTPUTV2}`'V"
|
||||||
echo -e "${idsCL[White]}Inverter Output Amps ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OUTPUTA}`'amps / `IDS_NUMBER_FORMAT ${OUTPUTA2}`'amps"
|
echo -e "${idsCL[White]}Inverter Output Amps ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OUTPUTA}`'A / `IDS_NUMBER_FORMAT ${OUTPUTA2}`'A"
|
||||||
echo -e "${idsCL[White]}Inverter Output Watts ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OUTPUTW} 0`'watts"
|
echo -e "${idsCL[White]}Inverter Output Watts ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OUTPUTW} 0`'W"
|
||||||
echo
|
echo
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo -en "${idsCL[White]}Battery Voltage ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${BATTV}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)"
|
echo -en "${idsCL[White]}Battery Voltage ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${BATTV}`'V ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)"
|
||||||
[ "${TEST_BATTVOLT}" != "" ] && echo -e " ${idsCL[Yellow]}***TEST MODE***" || echo ""
|
[ "${TEST_BATTVOLT}" != "" ] && echo -e " ${idsCL[Yellow]}***TEST MODE***" || echo ""
|
||||||
echo -e "${idsCL[White]}Battery Amps Chg/DChg ${idsCL[Default]}: ${BATTA_disp}${idsCL[Default]}"
|
echo -e "${idsCL[White]}Battery Amps Chg/DChg ${idsCL[Default]}: ${BATTA_disp}${idsCL[Default]}"
|
||||||
echo
|
echo
|
||||||
echo -e "${idsCL[White]}Server Room Voltage IN ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_VOLTIN}'volts${idsCL[Default]}"
|
echo -e "${idsCL[White]}Server Room Voltage IN ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_VOLTIN}'V${idsCL[Default]}"
|
||||||
echo -e "${idsCL[White]}Server Room Voltage OUT ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_VOLTOUT}'volts${idsCL[Default]}"
|
echo -e "${idsCL[White]}Server Room Voltage OUT ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_VOLTOUT}'V${idsCL[Default]}"
|
||||||
[ ${REPORT} -eq 0 ] && echo -e "${idsCL[White]}Voltage Drop ${idsCL[Default]}: ${idsCL[LightRed]}${VOLT_DROP}'volts${idsCL[Default]}"
|
[ ${REPORT} -eq 0 ] && echo -e "${idsCL[White]}Voltage Drop ${idsCL[Default]}: ${idsCL[LightRed]}${VOLT_DROP}'V${idsCL[Default]}"
|
||||||
|
|
||||||
# echo
|
# echo
|
||||||
DIVIDER . lightCyan ${PRI_WIDTH}
|
DIVIDER . lightCyan ${PRI_WIDTH}
|
||||||
@@ -343,15 +343,15 @@ CHECKPOWER(){
|
|||||||
echo -e "${idsCL[White]}UPS Status ${idsCL[Default]}: ${idsCL[LightCyan]}${OFFSITE_STATUS}${idsCL[Default]}"
|
echo -e "${idsCL[White]}UPS Status ${idsCL[Default]}: ${idsCL[LightCyan]}${OFFSITE_STATUS}${idsCL[Default]}"
|
||||||
if [ ${REPORT} -eq 0 ]; then
|
if [ ${REPORT} -eq 0 ]; then
|
||||||
echo
|
echo
|
||||||
echo -e "${idsCL[White]}UPS Voltage In ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OFFSITE_VOLTIN}`'volts${idsCL[Default]}"
|
echo -e "${idsCL[White]}UPS Voltage In ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OFFSITE_VOLTIN}`'V${idsCL[Default]}"
|
||||||
echo -e "${idsCL[White]}UPS Voltage Out ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OFFSITE_VOLTOUT}`'volts${idsCL[Default]}"
|
echo -e "${idsCL[White]}UPS Voltage Out ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OFFSITE_VOLTOUT}`'V${idsCL[Default]}"
|
||||||
fi
|
fi
|
||||||
echo -e "${idsCL[White]}UPS Load Usage ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_LOAD}'%${idsCL[Default]}"
|
echo -e "${idsCL[White]}UPS Load Usage ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_LOAD}'%${idsCL[Default]}"
|
||||||
[ ${REPORT} -eq 0 ] && echo
|
[ ${REPORT} -eq 0 ] && echo
|
||||||
echo -e "${idsCL[White]}UPS Battery Capacity ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OFFSITE_BATT_CAP}`'%${idsCL[Default]}"
|
echo -e "${idsCL[White]}UPS Battery Capacity ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OFFSITE_BATT_CAP}`'%${idsCL[Default]}"
|
||||||
echo -e "${idsCL[White]}UPS Battery Runtime ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_BATT_RUNTIME}'mins${idsCL[Default]}"
|
echo -e "${idsCL[White]}UPS Battery Runtime ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_BATT_RUNTIME}'mins${idsCL[Default]}"
|
||||||
if [ ${REPORT} -eq 0 ]; then
|
if [ ${REPORT} -eq 0 ]; then
|
||||||
echo -e "${idsCL[White]}UPS Battery Voltage ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_BATT_VOLT}'volts${idsCL[Default]}"
|
echo -e "${idsCL[White]}UPS Battery Voltage ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_BATT_VOLT}'V${idsCL[Default]}"
|
||||||
echo
|
echo
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -412,10 +412,10 @@ CHECKPOWER(){
|
|||||||
echo
|
echo
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# echo -en "${idsCL[White]}Total Amps ${idsCL[Default]}: ${idsCL[Green]}${AD}'amps ${idsCL[Default]}~ est${idsCL[Green]}${idsCL[Default]}"
|
# echo -en "${idsCL[White]}Total Amps ${idsCL[Default]}: ${idsCL[Green]}${AD}'A ${idsCL[Default]}~ est${idsCL[Green]}${idsCL[Default]}"
|
||||||
# [ "${avgdays}" != "" ] && echo -e "${idsCL[LightYellow]} `IDS_NUMBER_FORMAT ${OFFSITE_AMP_avg}`'amps" || echo -e "${idsCL[Default]}"
|
# [ "${avgdays}" != "" ] && echo -e "${idsCL[LightYellow]} `IDS_NUMBER_FORMAT ${OFFSITE_AMP_avg}`'A" || echo -e "${idsCL[Default]}"
|
||||||
# echo -en "${idsCL[White]}Total Wattage ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OFFSITE_WATTS} 0`'watts ${idsCL[Default]}~ est"
|
# echo -en "${idsCL[White]}Total Wattage ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OFFSITE_WATTS} 0`'W ${idsCL[Default]}~ est"
|
||||||
# [ "${avgdays}" != "" ] && echo -e "${idsCL[LightYellow]} `IDS_NUMBER_FORMAT ${OFFSITE_WATT_avg} 0`'watts" || echo -e "${idsCL[Default]}\n"
|
# [ "${avgdays}" != "" ] && echo -e "${idsCL[LightYellow]} `IDS_NUMBER_FORMAT ${OFFSITE_WATT_avg} 0`'W" || echo -e "${idsCL[Default]}\n"
|
||||||
#
|
#
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -579,8 +579,8 @@ CHECKPOWER(){
|
|||||||
|
|
||||||
if [ ${HOST_WATTS} -gt 0 ]; then
|
if [ ${HOST_WATTS} -gt 0 ]; then
|
||||||
DIVIDER . darkGray ${PRI_WIDTH}
|
DIVIDER . darkGray ${PRI_WIDTH}
|
||||||
echo -e " PS1 : ${idsCL[Green]}`IDS_NUMBER_FORMAT ${PS1} 1 true`'amps ${idsCL[Default]}@${idsCL[LightCyan]} ${PS1V}'volts${idsCL[Default]}"
|
echo -e " PS1 : ${idsCL[Green]}`IDS_NUMBER_FORMAT ${PS1} 1 true`'A ${idsCL[Default]}@${idsCL[LightCyan]} ${PS1V}'V${idsCL[Default]}"
|
||||||
echo -e " PS2 : ${idsCL[Green]}`IDS_NUMBER_FORMAT ${PS2} 1 true`'amps ${idsCL[Default]}@${idsCL[LightCyan]} ${PS2V}'volts${idsCL[Default]}"
|
echo -e " PS2 : ${idsCL[Green]}`IDS_NUMBER_FORMAT ${PS2} 1 true`'A ${idsCL[Default]}@${idsCL[LightCyan]} ${PS2V}'V${idsCL[Default]}"
|
||||||
fi
|
fi
|
||||||
[ "${SENSOR}" != "KP-vMS-Host1" ] && DIVIDER . lightCyan ${PRI_WIDTH}
|
[ "${SENSOR}" != "KP-vMS-Host1" ] && DIVIDER . lightCyan ${PRI_WIDTH}
|
||||||
|
|
||||||
@@ -682,27 +682,27 @@ CHECKPOWER_SERVICE(){
|
|||||||
PW_DISCHARGE=0
|
PW_DISCHARGE=0
|
||||||
if (( $(bc <<<"${BATTVOLT} >= ${FLOAT_CHARGE}") )); then
|
if (( $(bc <<<"${BATTVOLT} >= ${FLOAT_CHARGE}") )); then
|
||||||
if (( $(bc <<<"${BATTVOLT} >= ${BULK_CHARGE}") )); then
|
if (( $(bc <<<"${BATTVOLT} >= ${BULK_CHARGE}") )); then
|
||||||
BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Bulk Charging"
|
BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'A - Bulk Charging"
|
||||||
else
|
else
|
||||||
BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Float Charging"
|
BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'A - Float Charging"
|
||||||
fi
|
fi
|
||||||
elif [ "${BATTA}" = "-0.1" ] || [ "${BATTA}" = "-0.2" ] || [ "${BATTA}" = "-0.3" ]; then
|
elif [ "${BATTA}" = "-0.1" ] || [ "${BATTA}" = "-0.2" ] || [ "${BATTA}" = "-0.3" ]; then
|
||||||
BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Standby"
|
BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'A - Standby"
|
||||||
else
|
else
|
||||||
BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Discharging"
|
BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'A - Discharging"
|
||||||
# PW_DISCHARGE=1
|
# PW_DISCHARGE=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ${TESTMODE} -eq 1 ] && [ ! -f ${PW_TMPFOLDER}/power.testmode.enabled ]; then
|
if [ ${TESTMODE} -eq 1 ] && [ ! -f ${PW_TMPFOLDER}/power.testmode.enabled ]; then
|
||||||
touch ${PW_TMPFOLDER}/power.testmode.enabled
|
touch ${PW_TMPFOLDER}/power.testmode.enabled
|
||||||
SENDNOTICE "TEST MODE" "***TEST MODE*** ENABLED!"
|
SENDNOTICE "TEST MODE" "***TEST MODE*** ENABLED!"
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Input: ${INPUTACV}'volts - Battery: ${BATTVOLT}'volts - ***TEST MODE*** ENABLED" >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Input: ${INPUTACV}'V - Battery: ${BATTVOLT}'V - ***TEST MODE*** ENABLED" >> ${PW_LOGFILE}
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Input: ${INPUTACV}'volts - Battery: ${BATTVOLT}'volts - ***TEST MODE*** ENABLED" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Input: ${INPUTACV}'V - Battery: ${BATTVOLT}'V - ***TEST MODE*** ENABLED" >> ${PW_LOGPOWER}
|
||||||
elif [ ${TESTMODE} -eq 0 ] && [ -f ${PW_TMPFOLDER}/power.testmode.enabled ]; then
|
elif [ ${TESTMODE} -eq 0 ] && [ -f ${PW_TMPFOLDER}/power.testmode.enabled ]; then
|
||||||
rm -f ${PW_TMPFOLDER}/power.testmode.enabled
|
rm -f ${PW_TMPFOLDER}/power.testmode.enabled
|
||||||
SENDNOTICE "TEST MODE" "***TEST MODE*** DISABLED!"
|
SENDNOTICE "TEST MODE" "***TEST MODE*** DISABLED!"
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Input: ${INPUTACV}'volts - Battery: ${BATTVOLT}'volts - ***TEST MODE*** DISABLED" >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Input: ${INPUTACV}'V - Battery: ${BATTVOLT}'V - ***TEST MODE*** DISABLED" >> ${PW_LOGFILE}
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Input: ${INPUTACV}'volts - Battery: ${BATTVOLT}'volts - ***TEST MODE*** DISABLED" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Input: ${INPUTACV}'V - Battery: ${BATTVOLT}'V - ***TEST MODE*** DISABLED" >> ${PW_LOGPOWER}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[ ! "${last_battvolt}" ] && last_battvolt=${BATTVOLT}
|
[ ! "${last_battvolt}" ] && last_battvolt=${BATTVOLT}
|
||||||
@@ -710,21 +710,21 @@ CHECKPOWER_SERVICE(){
|
|||||||
if (( $(bc <<<"${INPUTACV} >= ${min_acvolt}") )) && [ "${PW_DISCHARGE}" != "1" ]; then
|
if (( $(bc <<<"${INPUTACV} >= ${min_acvolt}") )) && [ "${PW_DISCHARGE}" != "1" ]; then
|
||||||
[ "${last_battvolt}" != "${BATTVOLT}" ] && last_battvolt=${BATTVOLT}
|
[ "${last_battvolt}" != "${BATTVOLT}" ] && last_battvolt=${BATTVOLT}
|
||||||
if [ -f ${PW_TMPFOLDER}/power.ac.low ]; then
|
if [ -f ${PW_TMPFOLDER}/power.ac.low ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts / ${BATTVOLT}'volts - Back to Normal Voltage" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'V / ${BATTVOLT}'V - Back to Normal Voltage" >> ${PW_LOGPOWER}
|
||||||
SENDNOTICE "POWER NOMINAL AGAIN" "Normal voltage detected
|
SENDNOTICE "POWER NOMINAL AGAIN" "Normal voltage detected
|
||||||
GRID VOLTAGE: ${INPUTACV}'volts
|
GRID VOLTAGE: ${INPUTACV}'V
|
||||||
BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)
|
BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'V ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)
|
||||||
BATT AMPS: ${BATTA_disp}"
|
BATT AMPS: ${BATTA_disp}"
|
||||||
else
|
else
|
||||||
[ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge $(echo "scale=0; ${PW_LOG_INTERVAL_NORMAL}*60" | bc) ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts - Normal Voltage" >> ${PW_LOGPOWER}
|
[ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge $(echo "scale=0; ${PW_LOG_INTERVAL_NORMAL}*60" | bc) ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'V - Normal Voltage" >> ${PW_LOGPOWER}
|
||||||
if [ -f ${PW_TMPFOLDER}/power.ac.start ]; then
|
if [ -f ${PW_TMPFOLDER}/power.ac.start ]; then
|
||||||
SENDNOTICE "POWER Startup - Nominal" "Service Startup
|
SENDNOTICE "POWER Startup - Nominal" "Service Startup
|
||||||
Normal voltage detected
|
Normal voltage detected
|
||||||
GRID VOLTAGE: ${INPUTACV}'volts
|
GRID VOLTAGE: ${INPUTACV}'V
|
||||||
BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)
|
BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'V ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)
|
||||||
BATT AMPS: ${BATTA_disp}"
|
BATT AMPS: ${BATTA_disp}"
|
||||||
|
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - 'Check Power' Service Startup - Normal voltage detected - Input: ${INPUTACV}'volts" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - 'Check Power' Service Startup - Normal voltage detected - Input: ${INPUTACV}'V" >> ${PW_LOGPOWER}
|
||||||
rm -f ${PW_TMPFOLDER}/power.ac.start
|
rm -f ${PW_TMPFOLDER}/power.ac.start
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
@@ -746,33 +746,33 @@ BATT AMPS: ${BATTA_disp}"
|
|||||||
# UPDATE APC-PDU LINE TO LINE VOLTAGE
|
# UPDATE APC-PDU LINE TO LINE VOLTAGE
|
||||||
CURRENT_VOLTAGE=$(snmpwalk -t 3 -r 0 -v 1 -c public ${PW_APCPDU_IP} .1.3.6.1.4.1.318.1.1.12.1.15.0 | sed 's/.*: //')
|
CURRENT_VOLTAGE=$(snmpwalk -t 3 -r 0 -v 1 -c public ${PW_APCPDU_IP} .1.3.6.1.4.1.318.1.1.12.1.15.0 | sed 's/.*: //')
|
||||||
SET_VOLTAGE=`echo "scale=2; $(snmpwalk -t 1 -r 0 -v 1 -c public ${PW_UPS_IP} iso.3.6.1.4.1.850.1.1.3.1.3.3.2.1.2.1.1 | sed 's/.*: //')/10" | bc | awk '{print int($1+0.5)}'`
|
SET_VOLTAGE=`echo "scale=2; $(snmpwalk -t 1 -r 0 -v 1 -c public ${PW_UPS_IP} iso.3.6.1.4.1.850.1.1.3.1.3.3.2.1.2.1.1 | sed 's/.*: //')/10" | bc | awk '{print int($1+0.5)}'`
|
||||||
[ "${SET_VOLTAGE}" != "" ] && [ "${CURRENT_VOLTAGE}" != "" ] && [ ${CURRENT_VOLTAGE} -ne ${SET_VOLTAGE} ] && run=$(snmpset -v 1 -c private ${PW_APCPDU_IP} .1.3.6.1.4.1.318.1.1.12.1.15.0 i ${SET_VOLTAGE} >/dev/null 2>&1) && echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${CURRENT_VOLTAGE}'volts --> ${SET_VOLTAGE}'volts - LINE-TO-LINE VOLTAGE UPDATED ON APC-PDU" >> ${PW_LOGPOWER}
|
[ "${SET_VOLTAGE}" != "" ] && [ "${CURRENT_VOLTAGE}" != "" ] && [ ${CURRENT_VOLTAGE} -ne ${SET_VOLTAGE} ] && run=$(snmpset -v 1 -c private ${PW_APCPDU_IP} .1.3.6.1.4.1.318.1.1.12.1.15.0 i ${SET_VOLTAGE} >/dev/null 2>&1) && echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${CURRENT_VOLTAGE}'V --> ${SET_VOLTAGE}'V - LINE-TO-LINE VOLTAGE UPDATED ON APC-PDU" >> ${PW_LOGPOWER}
|
||||||
|
|
||||||
else
|
else
|
||||||
[ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge 300 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts / ${BATTVOLT}'volts - Power OFF or LOW" >> ${PW_LOGPOWER}
|
[ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge 300 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'V / ${BATTVOLT}'V - Power OFF or LOW" >> ${PW_LOGPOWER}
|
||||||
if [ -f ${PW_TMPFOLDER}/power.ac.start ]; then
|
if [ -f ${PW_TMPFOLDER}/power.ac.start ]; then
|
||||||
SENDNOTICE "POWER Startup - POWER OFF/LOW -${PW_DISCHARGE}- !!" "Service Startup
|
SENDNOTICE "POWER Startup - POWER OFF/LOW -${PW_DISCHARGE}- !!" "Service Startup
|
||||||
Power off or low voltage detected
|
Power off or low voltage detected
|
||||||
GRID VOLTAGE: ${INPUTACV}'volts
|
GRID VOLTAGE: ${INPUTACV}'V
|
||||||
BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)
|
BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'V ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)
|
||||||
BATT AMPS: ${BATTA_disp}" 1
|
BATT AMPS: ${BATTA_disp}" 1
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - 'Check Power' Service Startup - Normal voltage detected - Input: ${INPUTACV}'volts" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - 'Check Power' Service Startup - Normal voltage detected - Input: ${INPUTACV}'V" >> ${PW_LOGPOWER}
|
||||||
rm -f ${PW_TMPFOLDER}/power.ac.start
|
rm -f ${PW_TMPFOLDER}/power.ac.start
|
||||||
rm -f ${PW_TMPFOLDER}/power.ac.good
|
rm -f ${PW_TMPFOLDER}/power.ac.good
|
||||||
touch ${PW_TMPFOLDER}/power.ac.low
|
touch ${PW_TMPFOLDER}/power.ac.low
|
||||||
|
|
||||||
elif [ -f ${PW_TMPFOLDER}/power.ac.good ]; then
|
elif [ -f ${PW_TMPFOLDER}/power.ac.good ]; then
|
||||||
if (( $(bc <<<"${INPUTACV} < ${min_acvolt}") )); then
|
if (( $(bc <<<"${INPUTACV} < ${min_acvolt}") )); then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts / ${BATTVOLT}'volts - Power OFF or LOW voltage detected" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'V / ${BATTVOLT}'V - Power OFF or LOW voltage detected" >> ${PW_LOGPOWER}
|
||||||
SENDNOTICE "POWER ALERT - POWER OFF/LOW" "Power off or low voltage detected
|
SENDNOTICE "POWER ALERT - POWER OFF/LOW" "Power off or low voltage detected
|
||||||
GRID VOLTAGE: ${INPUTACV}'volts
|
GRID VOLTAGE: ${INPUTACV}'V
|
||||||
BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)
|
BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'V ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)
|
||||||
BATT AMPS: ${BATTA_disp}" 1
|
BATT AMPS: ${BATTA_disp}" 1
|
||||||
else
|
else
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts / ${BATTVOLT}'volts - Running on Batteries" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'V / ${BATTVOLT}'V - Running on Batteries" >> ${PW_LOGPOWER}
|
||||||
SENDNOTICE "POWER ALERT - RUNNING ON BATTERIES!!" "Running on Batteries
|
SENDNOTICE "POWER ALERT - RUNNING ON BATTERIES!!" "Running on Batteries
|
||||||
GRID VOLTAGE: ${INPUTACV}'volts
|
GRID VOLTAGE: ${INPUTACV}'V
|
||||||
BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)
|
BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'V ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`'% @ ${BATT_FULL}'V)
|
||||||
BATT AMPS: ${BATTA_disp}" 1
|
BATT AMPS: ${BATTA_disp}" 1
|
||||||
fi
|
fi
|
||||||
rm -f ${PW_TMPFOLDER}/power.ac.good
|
rm -f ${PW_TMPFOLDER}/power.ac.good
|
||||||
@@ -780,7 +780,7 @@ BATT AMPS: ${BATTA_disp}" 1
|
|||||||
|
|
||||||
fi
|
fi
|
||||||
if [ ! -f ${PW_TMPFOLDER}/power.ac.conserve ] && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.ac.low)) -ge $(echo "scale=0; ${PW_CONSERVE_AFTER}*60/1" | bc) ]; then
|
if [ ! -f ${PW_TMPFOLDER}/power.ac.conserve ] && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.ac.low)) -ge $(echo "scale=0; ${PW_CONSERVE_AFTER}*60/1" | bc) ]; then
|
||||||
echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts / ${BATTVOLT}'volts - Shutting down iSCSI VM's and Host to conserve power" >> ${PW_LOGPOWER}
|
echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'V / ${BATTVOLT}'V - Shutting down iSCSI VM's and Host to conserve power" >> ${PW_LOGPOWER}
|
||||||
SENDNOTICE "POWER ALERT - Conserving Power" "Shutting down iSCSI VM's and Host to conserve power" 1
|
SENDNOTICE "POWER ALERT - Conserving Power" "Shutting down iSCSI VM's and Host to conserve power" 1
|
||||||
# SHUTDOWN_SERVER ${PW_MAIN_ISCSI} -esxi off &
|
# SHUTDOWN_SERVER ${PW_MAIN_ISCSI} -esxi off &
|
||||||
CONSERVE_POWER &
|
CONSERVE_POWER &
|
||||||
@@ -789,9 +789,9 @@ BATT AMPS: ${BATTA_disp}" 1
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if (( $(bc <<<"${BATTVOLT} >= ${min_battvolt}") )); then
|
if (( $(bc <<<"${BATTVOLT} >= ${min_battvolt}") )); then
|
||||||
[ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge $(echo "scale=0; ${PW_LOG_INTERVAL_NORMAL}*60" | bc) ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Battery Voltage" >> ${PW_LOGPOWER}
|
[ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge $(echo "scale=0; ${PW_LOG_INTERVAL_NORMAL}*60" | bc) ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'V - Battery Voltage" >> ${PW_LOGPOWER}
|
||||||
if [ -f ${PW_TMPFOLDER}/power.dc.start ]; then
|
if [ -f ${PW_TMPFOLDER}/power.dc.start ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Battery: ${BATTVOLT}'volts - Service Startup - Normal voltage detected" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Battery: ${BATTVOLT}'V - Service Startup - Normal voltage detected" >> ${PW_LOGPOWER}
|
||||||
rm -f ${PW_TMPFOLDER}/power.dc.start
|
rm -f ${PW_TMPFOLDER}/power.dc.start
|
||||||
fi
|
fi
|
||||||
if [ ! -f ${PW_TMPFOLDER}/power.dc.good ]; then
|
if [ ! -f ${PW_TMPFOLDER}/power.dc.good ]; then
|
||||||
@@ -801,15 +801,15 @@ BATT AMPS: ${BATTA_disp}" 1
|
|||||||
|
|
||||||
else
|
else
|
||||||
[ -f ${PW_TMPFOLDER}/power.dc.good ] && rm -f ${PW_TMPFOLDER}/power.dc.good
|
[ -f ${PW_TMPFOLDER}/power.dc.good ] && rm -f ${PW_TMPFOLDER}/power.dc.good
|
||||||
[ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge $(echo "scale=0; ${PW_LOG_INTERVAL_ABNORMAL}*60" | bc) ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - LOW BATTERY Voltage" >> ${PW_LOGPOWER}
|
[ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge $(echo "scale=0; ${PW_LOG_INTERVAL_ABNORMAL}*60" | bc) ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'V - LOW BATTERY Voltage" >> ${PW_LOGPOWER}
|
||||||
|
|
||||||
if (( $(bc <<<"${BATTVOLT} <= ${min_battvolt_sys}") )); then
|
if (( $(bc <<<"${BATTVOLT} <= ${min_battvolt_sys}") )); then
|
||||||
[ ! -f ${PW_TMPFOLDER}/power.dc.critlow ] && touch ${PW_TMPFOLDER}/power.dc.critlow
|
[ ! -f ${PW_TMPFOLDER}/power.dc.critlow ] && touch ${PW_TMPFOLDER}/power.dc.critlow
|
||||||
|
|
||||||
if [ ! -f ${PW_TMPFOLDER}/shutdown.SYS.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.MAINSITE.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.ALL.started ] && (( $(bc <<<"${INPUTACV} < ${min_acvolt}") )) && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.dc.critlow)) -ge 30 ]; then
|
if [ ! -f ${PW_TMPFOLDER}/shutdown.SYS.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.MAINSITE.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.ALL.started ] && (( $(bc <<<"${INPUTACV} < ${min_acvolt}") )) && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.dc.critlow)) -ge 30 ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Shutting down all remaining servers..." >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'V - Shutting down all remaining servers..." >> ${PW_LOGFILE}
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Shutting down all remaining servers..." >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'V - Shutting down all remaining servers..." >> ${PW_LOGPOWER}
|
||||||
SENDNOTICE "BATT-VOLT REALLY LOW: SHUTDOWN SYS SERVERS" "Battery Voltage REALLY LOW: ${BATTVOLT}'volts
|
SENDNOTICE "BATT-VOLT REALLY LOW: SHUTDOWN SYS SERVERS" "Battery Voltage REALLY LOW: ${BATTVOLT}'V
|
||||||
Shutting down all remaining servers" 1
|
Shutting down all remaining servers" 1
|
||||||
SHUTDOWN_SYS POWER &
|
SHUTDOWN_SYS POWER &
|
||||||
|
|
||||||
@@ -820,18 +820,18 @@ Shutting down all remaining servers" 1
|
|||||||
[ -f ${PW_TMPFOLDER}/power.dc.critlow ] && rm -f ${PW_TMPFOLDER}/power.dc.critlow
|
[ -f ${PW_TMPFOLDER}/power.dc.critlow ] && rm -f ${PW_TMPFOLDER}/power.dc.critlow
|
||||||
|
|
||||||
if [ ! -f ${PW_TMPFOLDER}/shutdown.MAIN.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.MAINSITE.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.ALL.started ] && (( $(bc <<<"${INPUTACV} < ${min_acvolt}") )) && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.dc.low)) -ge 30 ]; then
|
if [ ! -f ${PW_TMPFOLDER}/shutdown.MAIN.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.MAINSITE.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.ALL.started ] && (( $(bc <<<"${INPUTACV} < ${min_acvolt}") )) && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.dc.low)) -ge 30 ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Shutting down main servers..." >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'V - Shutting down main servers..." >> ${PW_LOGFILE}
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Shutting down main servers..." >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'V - Shutting down main servers..." >> ${PW_LOGPOWER}
|
||||||
SENDNOTICE "BATT-VOLT LOW: SHUTDOWN MAIN SERVERS" "Battery Voltage LOW: ${BATTVOLT}'volts
|
SENDNOTICE "BATT-VOLT LOW: SHUTDOWN MAIN SERVERS" "Battery Voltage LOW: ${BATTVOLT}'V
|
||||||
Shutting down main servers" 1
|
Shutting down main servers" 1
|
||||||
SHUTDOWN_MAIN POWER &
|
SHUTDOWN_MAIN POWER &
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
elif [ ! -f ${PW_TMPFOLDER}/shutdown.MAIN.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.MAINSITE.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.ALL.started ] && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.ac.low)) -ge $(echo "scale=0; ${PW_SHUTDOWN_MAINSERVERS_AFTER}*60" | bc) ]; then
|
elif [ ! -f ${PW_TMPFOLDER}/shutdown.MAIN.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.MAINSITE.started ] && [ ! -f ${PW_TMPFOLDER}/shutdown.ALL.started ] && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.ac.low)) -ge $(echo "scale=0; ${PW_SHUTDOWN_MAINSERVERS_AFTER}*60" | bc) ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Shutting down main servers..." >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'V - Shutting down main servers..." >> ${PW_LOGFILE}
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Shutting down main servers..." >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'V - Shutting down main servers..." >> ${PW_LOGPOWER}
|
||||||
SENDNOTICE "BATT-VOLT LOW: SHUTDOWN MAIN SERVERS" "Battery Voltage LOW: ${BATTVOLT}'volts
|
SENDNOTICE "BATT-VOLT LOW: SHUTDOWN MAIN SERVERS" "Battery Voltage LOW: ${BATTVOLT}'V
|
||||||
Shutting down main servers" 1
|
Shutting down main servers" 1
|
||||||
SHUTDOWN_MAIN POWER &
|
SHUTDOWN_MAIN POWER &
|
||||||
fi
|
fi
|
||||||
@@ -841,8 +841,8 @@ Shutting down main servers" 1
|
|||||||
volt_diff=`echo "scale=1; ${last_battvolt}-${BATTVOLT}" | bc`
|
volt_diff=`echo "scale=1; ${last_battvolt}-${BATTVOLT}" | bc`
|
||||||
(( $(bc <<<"${volt_diff} < 0") )) && volt_diff=`echo "scale=2; ${volt_diff} * -1" | bc`
|
(( $(bc <<<"${volt_diff} < 0") )) && volt_diff=`echo "scale=2; ${volt_diff} * -1" | bc`
|
||||||
if (( $(bc <<<"${volt_diff} >= 0.5") )); then
|
if (( $(bc <<<"${volt_diff} >= 0.5") )); then
|
||||||
SENDNOTICE "BATTERY VOLTAGE CHANGE" "Battery Voltage: ${BATTVOLT}'volts"
|
SENDNOTICE "BATTERY VOLTAGE CHANGE" "Battery Voltage: ${BATTVOLT}'V"
|
||||||
echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Battery Voltage Change" >> ${PW_LOGPOWER}
|
echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'V - Battery Voltage Change" >> ${PW_LOGPOWER}
|
||||||
last_battvolt=${BATTVOLT}
|
last_battvolt=${BATTVOLT}
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
@@ -917,22 +917,22 @@ OFFSITE_CHECKPOWER_SERVICE(){
|
|||||||
|
|
||||||
BATTERY CHARGE: ${OFFSITE_BATT_CAP}'%
|
BATTERY CHARGE: ${OFFSITE_BATT_CAP}'%
|
||||||
BATT RUNTIME: ${OFFSITE_BATT_RUNTIME}'mins
|
BATT RUNTIME: ${OFFSITE_BATT_RUNTIME}'mins
|
||||||
AC VOLTAGE: ${OFFSITE_VOLTIN}'volts
|
AC VOLTAGE: ${OFFSITE_VOLTIN}'V
|
||||||
WATT USAGE: ${OFFSITE_WATTS}'watts
|
WATT USAGE: ${OFFSITE_WATTS}'W
|
||||||
AMBIENT TEMP: ${OFFSITE_TEMP}'F"
|
AMBIENT TEMP: ${OFFSITE_TEMP}'F"
|
||||||
[ "${3}" != "" ] && PRIORITY=${3} || PRIORITY=0
|
[ "${3}" != "" ] && PRIORITY=${3} || PRIORITY=0
|
||||||
SENDNOTICE "${1}" "${MESSAGE}" ${PRIORITY} cosmic
|
SENDNOTICE "${1}" "${MESSAGE}" ${PRIORITY} cosmic
|
||||||
}
|
}
|
||||||
if [ "${startup}" = "true" ]; then
|
if [ "${startup}" = "true" ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_WATTS}'watts - ${OFFSITE_BATT_CAP}'% Battery - ${OFFSITE_BATT_RUNTIME}'mins - Service startup" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'V - ${OFFSITE_WATTS}'W - ${OFFSITE_BATT_CAP}'% Battery - ${OFFSITE_BATT_RUNTIME}'mins - Service startup" >> ${PW_LOGPOWER}
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_BATT_CAP}'% Battery - Service startup" >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'V - ${OFFSITE_BATT_CAP}'% Battery - Service startup" >> ${PW_LOGFILE}
|
||||||
OFFSITE_SENDPOWER "OFFSITE MONITOR Service Startup" &
|
OFFSITE_SENDPOWER "OFFSITE MONITOR Service Startup" &
|
||||||
startup=false
|
startup=false
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ${OFFSITE_VOLTIN%.*} -gt 105 ]; then
|
if [ ${OFFSITE_VOLTIN%.*} -gt 105 ]; then
|
||||||
if [ -f ${PW_TMPFOLDER}/power.offsite.charging ] && [ ${OFFSITE_BATT_CAP%.*} -eq 100 ]; then
|
if [ -f ${PW_TMPFOLDER}/power.offsite.charging ] && [ ${OFFSITE_BATT_CAP%.*} -eq 100 ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_BATT_CAP}'% Battery - Charging Complete" >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'V - ${OFFSITE_BATT_CAP}'% Battery - Charging Complete" >> ${PW_LOGFILE}
|
||||||
SENDNOTICE2 "OFFSITE POWER" "Batteries are fully recharged"
|
SENDNOTICE2 "OFFSITE POWER" "Batteries are fully recharged"
|
||||||
rm -f ${PW_TMPFOLDER}/power.offsite.charging
|
rm -f ${PW_TMPFOLDER}/power.offsite.charging
|
||||||
# elif [ ${OFFSITE_BATT_CAP%.*} -lt 100 ] && [ ! -f ${PW_TMPFOLDER}/power.offsite.charging ]; then
|
# elif [ ${OFFSITE_BATT_CAP%.*} -lt 100 ] && [ ! -f ${PW_TMPFOLDER}/power.offsite.charging ]; then
|
||||||
@@ -943,7 +943,7 @@ AMBIENT TEMP: ${OFFSITE_TEMP}'F"
|
|||||||
if [ -f ${PW_TMPFOLDER}/power.offsite.ac.low ]; then
|
if [ -f ${PW_TMPFOLDER}/power.offsite.ac.low ]; then
|
||||||
if [ -f ${PW_TMPFOLDER}/shutdown.OFFSITE ]; then
|
if [ -f ${PW_TMPFOLDER}/shutdown.OFFSITE ]; then
|
||||||
touch ${PW_TMPFOLDER}/power.offsite.restored
|
touch ${PW_TMPFOLDER}/power.offsite.restored
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_BATT_CAP}'% Battery - Offsite Power Restored" >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'V - ${OFFSITE_BATT_CAP}'% Battery - Offsite Power Restored" >> ${PW_LOGFILE}
|
||||||
SENDNOTICE2 "OFFSITE POWER" "Power restored! Will wait ${PW_OFFSITE_WAIT_TO_POWER_SERVERS}'mins before turning host(s) back on"
|
SENDNOTICE2 "OFFSITE POWER" "Power restored! Will wait ${PW_OFFSITE_WAIT_TO_POWER_SERVERS}'mins before turning host(s) back on"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -952,7 +952,7 @@ AMBIENT TEMP: ${OFFSITE_TEMP}'F"
|
|||||||
if [ -f ${PW_TMPFOLDER}/shutdown.OFFSITE ]; then
|
if [ -f ${PW_TMPFOLDER}/shutdown.OFFSITE ]; then
|
||||||
if [ -f ${PW_TMPFOLDER}/power.offsite.restored ] && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.restored)) -gt $(echo "scale=2; ${PW_OFFSITE_WAIT_TO_POWER_SERVERS}*60" | bc) ]; then
|
if [ -f ${PW_TMPFOLDER}/power.offsite.restored ] && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.restored)) -gt $(echo "scale=2; ${PW_OFFSITE_WAIT_TO_POWER_SERVERS}*60" | bc) ]; then
|
||||||
if [ "$(CHECK_HOST ${PW_IP})" != "false" ]; then
|
if [ "$(CHECK_HOST ${PW_IP})" != "false" ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_BATT_CAP}'% Battery - Powering Hosts ON After Power Outage" >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'V - ${OFFSITE_BATT_CAP}'% Battery - Powering Hosts ON After Power Outage" >> ${PW_LOGFILE}
|
||||||
if [ -f ${PW_TMPFOLDER}/power.offsite.nohomeconn ]; then
|
if [ -f ${PW_TMPFOLDER}/power.offsite.nohomeconn ]; then
|
||||||
SENDNOTICE2 "OFFSITE HOST POWER" "Powerwall connections has been established, powering offsite host(s) back ONLINE after power outage"
|
SENDNOTICE2 "OFFSITE HOST POWER" "Powerwall connections has been established, powering offsite host(s) back ONLINE after power outage"
|
||||||
else
|
else
|
||||||
@@ -968,7 +968,7 @@ AMBIENT TEMP: ${OFFSITE_TEMP}'F"
|
|||||||
rm -f ${PW_TMPFOLDER}/power.offsite.restored ${PW_TMPFOLDER}/power.offsite.nohomeconn ${PW_TMPFOLDER}/shutdown.OFFSITE
|
rm -f ${PW_TMPFOLDER}/power.offsite.restored ${PW_TMPFOLDER}/power.offsite.nohomeconn ${PW_TMPFOLDER}/shutdown.OFFSITE
|
||||||
else
|
else
|
||||||
if [ ! -f ${PW_TMPFOLDER}/power.offsite.nohomeconn ]; then
|
if [ ! -f ${PW_TMPFOLDER}/power.offsite.nohomeconn ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_BATT_CAP}'% Battery - Will wait to power on offsite host(s) until powerwall connection is regained" >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'V - ${OFFSITE_BATT_CAP}'% Battery - Will wait to power on offsite host(s) until powerwall connection is regained" >> ${PW_LOGFILE}
|
||||||
touch ${PW_TMPFOLDER}/power.offsite.nohomeconn
|
touch ${PW_TMPFOLDER}/power.offsite.nohomeconn
|
||||||
SENDNOTICE2 "OFFSITE HOST POWER" "Will wait to power on offsite host(s) until powerwall connection is regained"
|
SENDNOTICE2 "OFFSITE HOST POWER" "Will wait to power on offsite host(s) until powerwall connection is regained"
|
||||||
elif [ -f ${PW_TMPFOLDER}/power.offsite.nohomeconn ] && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.nohomeconn)) -gt $(echo "scale=2; ${PW_OFFSITE_WAIT_TO_POWER_SERVERS}*60" | bc) ]; then
|
elif [ -f ${PW_TMPFOLDER}/power.offsite.nohomeconn ] && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.nohomeconn)) -gt $(echo "scale=2; ${PW_OFFSITE_WAIT_TO_POWER_SERVERS}*60" | bc) ]; then
|
||||||
@@ -980,19 +980,19 @@ AMBIENT TEMP: ${OFFSITE_TEMP}'F"
|
|||||||
fi
|
fi
|
||||||
logtime=$(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER}))
|
logtime=$(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER}))
|
||||||
if [ ${logtime} -ge $(echo "scale=0; ${PW_LOG_INTERVAL_NORMAL}*60" | bc) ] || ([ ${OFFSITE_BATT_CAP%.*} -lt 100 ] && [ ${logtime} -gt ${PW_LOG_INTERVAL_CHARGING} ]); then
|
if [ ${logtime} -ge $(echo "scale=0; ${PW_LOG_INTERVAL_NORMAL}*60" | bc) ] || ([ ${OFFSITE_BATT_CAP%.*} -lt 100 ] && [ ${logtime} -gt ${PW_LOG_INTERVAL_CHARGING} ]); then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_WATTS}'watts - ${OFFSITE_BATT_CAP}'% Battery - ${OFFSITE_BATT_RUNTIME}'mins - Normal" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'V - ${OFFSITE_WATTS}'W - ${OFFSITE_BATT_CAP}'% Battery - ${OFFSITE_BATT_RUNTIME}'mins - Normal" >> ${PW_LOGPOWER}
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
[ ! -f ${PW_TMPFOLDER}/power.offsite.ac.low ] && touch ${PW_TMPFOLDER}/power.offsite.ac.low
|
[ ! -f ${PW_TMPFOLDER}/power.offsite.ac.low ] && touch ${PW_TMPFOLDER}/power.offsite.ac.low
|
||||||
|
|
||||||
if [ ! -f ${PW_TMPFOLDER}/power.offsite.ac.low.notice ] || [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.ac.low.notice)) -gt $(echo "scale=2; ${PW_RENOTIFY_LOWPOWER}*60" | bc) ]; then
|
if [ ! -f ${PW_TMPFOLDER}/power.offsite.ac.low.notice ] || [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.ac.low.notice)) -gt $(echo "scale=2; ${PW_RENOTIFY_LOWPOWER}*60" | bc) ]; then
|
||||||
# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_BATT_CAP}'% Battery - Powering LOW/OFF!" >> ${PW_LOGFILE}
|
# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'V - ${OFFSITE_BATT_CAP}'% Battery - Powering LOW/OFF!" >> ${PW_LOGFILE}
|
||||||
SENDNOTICE2 "OFFSITE POWER - POWER OFF/LOW!!" "Power off or low voltage detected" 1
|
SENDNOTICE2 "OFFSITE POWER - POWER OFF/LOW!!" "Power off or low voltage detected" 1
|
||||||
touch ${PW_TMPFOLDER}/power.offsite.ac.low.notice
|
touch ${PW_TMPFOLDER}/power.offsite.ac.low.notice
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -f ${PW_TMPFOLDER}/shutdown.OFFSITE ] && [ ${OFFSITE_WATTS%.*} -gt 100 ] && ([ ${OFFSITE_BATT_CAP%.*} -le ${PW_OFFSITE_SHUTDOWNSERVERS_AT_BATTCAP} ] || [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.ac.low)) -ge $(echo "scale=2; ${PW_OFFSITE_SHUTDOWNSERVERS_AFTER}*60" | bc) ]); then
|
if [ ! -f ${PW_TMPFOLDER}/shutdown.OFFSITE ] && [ ${OFFSITE_WATTS%.*} -gt 100 ] && ([ ${OFFSITE_BATT_CAP%.*} -le ${PW_OFFSITE_SHUTDOWNSERVERS_AT_BATTCAP} ] || [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.ac.low)) -ge $(echo "scale=2; ${PW_OFFSITE_SHUTDOWNSERVERS_AFTER}*60" | bc) ]); then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_BATT_CAP}'% Battery - Powering Down Hosts!" >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'V - ${OFFSITE_BATT_CAP}'% Battery - Powering Down Hosts!" >> ${PW_LOGFILE}
|
||||||
SENDNOTICE2 "OFFSITE HOST POWER" "Powering DOWN offsite host(s) due to power outage" 1
|
SENDNOTICE2 "OFFSITE HOST POWER" "Powering DOWN offsite host(s) due to power outage" 1
|
||||||
touch ${PW_TMPFOLDER}/shutdown.OFFSITE
|
touch ${PW_TMPFOLDER}/shutdown.OFFSITE
|
||||||
for host in ${PW_OFFSITEHOSTS}; do
|
for host in ${PW_OFFSITEHOSTS}; do
|
||||||
@@ -1002,7 +1002,7 @@ AMBIENT TEMP: ${OFFSITE_TEMP}'F"
|
|||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
if [ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -gt ${PW_LOG_INTERVAL_ABNORMAL} ]; then
|
if [ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -gt ${PW_LOG_INTERVAL_ABNORMAL} ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_WATTS}'watts - ${OFFSITE_BATT_CAP}'% Battery - ${OFFSITE_BATT_RUNTIME}'mins - OFF/LOW POWER!!" >> ${PW_LOGPOWER}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'V - ${OFFSITE_WATTS}'W - ${OFFSITE_BATT_CAP}'% Battery - ${OFFSITE_BATT_RUNTIME}'mins - OFF/LOW POWER!!" >> ${PW_LOGPOWER}
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -1011,7 +1011,7 @@ AMBIENT TEMP: ${OFFSITE_TEMP}'F"
|
|||||||
touch ${PW_TMPFOLDER}/power.offsite.ups.losscomm
|
touch ${PW_TMPFOLDER}/power.offsite.ups.losscomm
|
||||||
|
|
||||||
elif [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.ups.losscomm)) -ge 120 ]; then
|
elif [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.ups.losscomm)) -ge 120 ]; then
|
||||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - 0.0'volts - 0'% Battery - Restarting NUT service" >> ${PW_LOGFILE}
|
echo "($(date +'%Y-%m-%d %H:%M:%S')) - 0.0'V - 0'% Battery - Restarting NUT service" >> ${PW_LOGFILE}
|
||||||
service nut-driver restart
|
service nut-driver restart
|
||||||
sleep 10s
|
sleep 10s
|
||||||
touch ${PW_TMPFOLDER}/power.offsite.ups.losscomm
|
touch ${PW_TMPFOLDER}/power.offsite.ups.losscomm
|
||||||
|
|||||||
Reference in New Issue
Block a user