This commit is contained in:
2023-12-05 23:28:01 -06:00
parent df388c246f
commit 9a271f98a7
2 changed files with 52 additions and 3 deletions

View File

@@ -1,5 +1,5 @@
#!/usr/bin/env bash
VERS='4.17.110-12052023'
VERS='4.17.111-12052023'
NM_BETA=false
noheader=' service status-check nightlyrephp7.3-fpm,new backup report check checkcerts gitea update-nodes copynpmcerts singleservercheck update-dyndns backup-offsitepfsense gui nightlyreview update log betacheck '

View File

@@ -865,8 +865,57 @@ GUI(){
DOWNLIST ${2}
;;
statusnew)
STATUSNEW ${2} ${3}
;;
if [ "${2}" == "freespace" ]; then
STATUSNEW freespace ${3}
else
if [ -f "${NM_TMPFOLDER}/status-check.running" ] && [ $(expr `date +%s` - $(stat -c %Y ${NM_TMPFOLDER}/status-check.running)) -gt 1800 ]; then
# if [ -f "${NM_TMPFOLDER}/status-check.running" ]; then
SENDNOTICE "Nodemgmt Script Error" "Status monitoring stuck, system resetting... fix yo shit"
mv -f ${NM_TMPFOLDER}/status-check.running ${NM_TMPFOLDER}/status-check.running.crash
getStuckNM=$(pgrep -f '/nodemgmt')
for i in $getStuckNM; do
[ "$BASHPID" != "$i" ] && /bin/kill -9 $i
done
fi
if [ ! -f "${NM_TMPFOLDER}/status-check.running" ]; then
touch "${NM_TMPFOLDER}/status-check.running"
if [ "${2}" == "report" ]; then
# start_status=`date +%s`
echo "$(date +%Y-%m-%d-%H-%M-%S) - LOCAL - ${NODE_HOSTNAME} - Starting Status Check" >> ${NM_LOGFILE}
echo -e "$(date +%Y-%m-%d-%H-%M-%S) - Starting status check #############################\n" > ${NM_TMPFOLDER}/status-check.running
STATUS report ${3} >> ${NM_TMPFOLDER}/status-check.running
echo -e "\n\n$(date) - Finished status check #############################\n" >> ${NM_TMPFOLDER}/status-check.running
echo "$(date +%Y-%m-%d-%H-%M-%S) - LOCAL - ${NODE_HOSTNAME} - Completed Status Check" >> ${NM_LOGFILE}
rm -f ${NM_LOGFOLDER}/status-check.new.lastrun
mv ${NM_TMPFOLDER}/status-check.running ${NM_LOGFOLDER}/status-check.new.lastrun
# end_status=`date +%s`
# runtime_status=$((end_status-start_status))
# echo -e "\nRuntime: ${runtime_status}" >> ${NM_LOGFOLDER}/status-check.lastrun
if [ "${3}" == "email" ]; then
echo -e "\n\n" >> ${NM_LOGFOLDER}/status-check.new.lastrun
DOWNLIST report >> ${NM_LOGFOLDER}/status-check.new.lastrun
STATUSLOG="$(cat ${NM_LOGFOLDER}/status-check.new.lastrun)"
SENDNOTICE "Status Report" "Status Report\n${STATUSLOG}"
fi
else
STATUSNEW ${2} ${3}
fi
else
# echo -e "${idsCL[LightYellow]}Status check already running, please wait and try again${idsCL[Default]}"
echo -e "${idsCL[LightYellow]}Status checks are already running${idsCL[Default]}"
echo -en "${idsCL[LightCyan]}View the (L)ive log, or the (P)revious run log instead? ${idsCL[Default]}"
read -n1 choice
case $choice in
[Ll]) watch -n1 tail -n35 ${NM_TMPFOLDER}/status-check.running; echo;;
[Pp]) echo; cat ${NM_LOGFOLDER}/status-check.new.lastrun;;
esac
echo
fi
fi;;
status)
if [ "${2}" == "freespace" ]; then
STATUS freespace ${3}