|
|
@@ -2,7 +2,7 @@
|
|
|
# LGSM fn_monitor function
|
|
|
# Author: Daniel Gibbs
|
|
|
# Website: http://danielgibbs.co.uk
|
|
|
-# Version: 080214
|
|
|
+# Version: 080215
|
|
|
|
|
|
# Description: Monitors server by checking for running proccesses
|
|
|
# then passes to fn_monitor_query.
|
|
|
@@ -10,40 +10,47 @@
|
|
|
local modulename="Monitor"
|
|
|
|
|
|
fn_monitor_teamspeak3(){
|
|
|
-fn_rootcheck
|
|
|
-fn_syscheck
|
|
|
-fn_logmanager
|
|
|
-fn_printfail "Monitor is checking ${servicename}: ${servername}"
|
|
|
-fn_scriptlog "Monitor is checking ${servername}"
|
|
|
-sleep 0.5
|
|
|
-fn_runcheck
|
|
|
-fn_printwarn "Monitor detected ${servername} had stopped!\n"
|
|
|
-fn_scriptlog "Monitor detected ${servername} had stopped!"
|
|
|
+fn_check_root
|
|
|
+fn_check_systemdir
|
|
|
+fn_logs
|
|
|
+fn_printdots "${servername}"
|
|
|
+fn_scriptlog "${servername}"
|
|
|
sleep 1
|
|
|
-fn_status
|
|
|
-if [ "${ts3status}" = "Server seems to have died" ]; then
|
|
|
- fn_printinfo "${servername} Server seems to have died"
|
|
|
- fn_scriptlog "${servername} Server seems to have died"
|
|
|
- failurereason="Server seems to have died"
|
|
|
-elif [ "${ts3status}" = "No server running (ts3server.pid is missing)" ]; then
|
|
|
- fn_printinfo "${servername} No server running (ts3server.pid is missing)"
|
|
|
- fn_scriptlog "${servername} No server running (ts3server.pid is missing)"
|
|
|
- failurereason="No server running (ts3server.pid is missing)"
|
|
|
-else
|
|
|
- fn_printinfo "${servername} Unknown error"
|
|
|
- fn_scriptlog "${servername} Unknown error"
|
|
|
- failurereason="Unknown error"
|
|
|
+if [ ! -f "${lockselfname}" ]; then
|
|
|
+ fn_printinfo "Disabled: No lock file found"
|
|
|
+ fn_scriptlog "Disabled: No lock file found"
|
|
|
+ sleep 1
|
|
|
+ echo -en "\n"
|
|
|
+ echo "To enable monitor run ./${selfname} start"
|
|
|
+ exit
|
|
|
fi
|
|
|
-sleep 0.5
|
|
|
-echo -en "\n"
|
|
|
-if [ "${emailnotification}" = "on" ]; then
|
|
|
- subject="${servicename} Monitor - Restarting ${servername}"
|
|
|
- actiontaken="restarted ${servername}"
|
|
|
- fn_emailnotification
|
|
|
+fn_printdots "Checking session: CHECKING"
|
|
|
+fn_scriptlog "Checking session: CHECKING"
|
|
|
+sleep 1
|
|
|
+fn_check_ts3status
|
|
|
+if [ "${ts3status}" = "Server is running" ]; then
|
|
|
+ fn_printok "Checking session: OK"
|
|
|
+ fn_scriptlog "Checking session: OK"
|
|
|
+ sleep 1
|
|
|
+ sleep 0.5
|
|
|
+ echo -en "\n"
|
|
|
+ exit
|
|
|
+else
|
|
|
+ fn_printfail "Checking session: FAIL"
|
|
|
+ fn_scriptlog "Checking session: FAIL"
|
|
|
+ sleep 1
|
|
|
+ fn_printfail "Checking session: FAIL: ${ts3status}"
|
|
|
+ fn_scriptlog "Checking session: FAIL: ${ts3status}"
|
|
|
+ failurereason="${ts3status}"
|
|
|
+ if [ "${emailnotification}" = "on" ]; then
|
|
|
+ subject="${servicename} Monitor - Restarting ${servername}"
|
|
|
+ actiontaken="restarted ${servername}"
|
|
|
+ fn_emailnotification
|
|
|
+ fi
|
|
|
fi
|
|
|
sleep 0.5
|
|
|
echo -en "\n"
|
|
|
-fn_restartserver
|
|
|
+fn_restart
|
|
|
}
|
|
|
|
|
|
fn_monitor_tmux(){
|