This commit is contained in:
Jack L. Frost 2015-05-18 14:19:04 +03:00
parent 2093fe139b
commit 0d6559d31d

View File

@ -28,11 +28,33 @@ start() {
watchman.start watchman.start
} }
get_control_pid() {
lsof -i :"$cjdroute_admin_port" | tail -1 | cut -d ' ' -f 2
}
status() {
# Check the actual cjdroute process and not the watchdog
cjdroute_control_pid=$( get_control_pid )
counter=0
until kill -0 "$cjdroute_control_pid"; do
cjdroute_control_pid=$( get_control_pid )
(( counter >= 5 )) && {
watchman.msg "cjdroute is down"
return 1
}
(( counter++ ))
sleep 1
done
watchman.msg "cjdroute is running ($cjdroute_control_pid)"
}
stop() { stop() {
[[ "$service_respawn" == 'true' ]] && { watchman.stop; } # stopping the watchdog [[ "$service_respawn" == 'true' ]] && { watchman.stop; } # stopping the watchdog
# Stopping the actual s-o-b daemon that won't die properly. # Stopping the actual s-o-b daemon that won't die properly.
cjdroute_control_pid=$(lsof -i :"$cjdroute_admin_port" | tail -1 | cut -d ' ' -f 2) cjdroute_control_pid=$( get_control_pid )
watchman.pid_check "$cjdroute_control_pid" && { watchman.pid_check "$cjdroute_control_pid" && {
kill "$cjdroute_control_pid" kill "$cjdroute_control_pid"
watchman.pid_wait "$cjdroute_control_pid" watchman.pid_wait "$cjdroute_control_pid"