@@ -137,6 +137,13 @@ started()
137137 local STATEFILE=$1
138138 local PIDFILE=$2
139139 local STARTTIMEOUT=$3
140+
141+ if (( DEBUG )) ; then
142+ echo " Looking for $STATEFILE "
143+ echo -n " State Parent Directory: "
144+ ls -lad $( dirname $STATEFILE )
145+ fi
146+
140147 # wait till timeout to see "STARTED" in state file, needs --module=state as argument
141148 for (( T = 0 ; T < $STARTTIMEOUT ; T++ ))
142149 do
@@ -162,6 +169,11 @@ started()
162169 done
163170 (( DEBUG )) && echo " Timeout $STARTTIMEOUT expired waiting for start state from $STATEFILE "
164171 echo " timeout"
172+ if running " $PIDFILE " ; then
173+ echo " INFO: Server process is running"
174+ else
175+ echo " ** ERROR: Server process is NOT running"
176+ fi
165177 return 1;
166178}
167179
@@ -173,7 +185,7 @@ pidKill()
173185 if [ -r $PIDFILE ] ; then
174186 local PID=$( tail -1 " $PIDFILE " )
175187 if [ -z " $PID " ] ; then
176- echo " ERROR: no pid found in $PIDFILE "
188+ echo " ** ERROR: no pid found in $PIDFILE "
177189 return 1
178190 fi
179191
@@ -204,7 +216,6 @@ pidKill()
204216 fi
205217}
206218
207-
208219readConfig ()
209220{
210221 (( DEBUG )) && echo " Reading $1 .."
@@ -213,26 +224,25 @@ readConfig()
213224
214225dumpEnv ()
215226{
216- echo " JAVA = $JAVA "
217- echo " JAVA_OPTIONS = ${JAVA_OPTIONS[*]} "
218- echo " JETTY_HOME = $JETTY_HOME "
219- echo " JETTY_BASE = $JETTY_BASE "
220- echo " START_D = $START_D "
221- echo " START_INI = $START_INI "
222- echo " JETTY_START = $JETTY_START "
223- echo " JETTY_CONF = $JETTY_CONF "
224- echo " JETTY_ARGS = ${JETTY_ARGS[*]} "
225- echo " JETTY_RUN = $JETTY_RUN "
226- echo " JETTY_PID = $JETTY_PID "
227- echo " JETTY_START_LOG = $JETTY_START_LOG "
228- echo " JETTY_STATE = $JETTY_STATE "
229- echo " JETTY_START_TIMEOUT = $JETTY_START_TIMEOUT "
230- echo " JETTY_SYS_PROPS = $JETTY_SYS_PROPS "
231- echo " RUN_ARGS = ${RUN_ARGS[*]} "
227+ echo " JAVA = $JAVA "
228+ echo " JAVA_OPTIONS = ${JAVA_OPTIONS[*]} "
229+ echo " JETTY_HOME = $JETTY_HOME "
230+ echo " JETTY_BASE = $JETTY_BASE "
231+ echo " START_D = $START_D "
232+ echo " START_INI = $START_INI "
233+ echo " JETTY_START = $JETTY_START "
234+ echo " JETTY_CONF = $JETTY_CONF "
235+ echo " JETTY_ARGS = ${JETTY_ARGS[*]} "
236+ echo " JETTY_RUN = $JETTY_RUN "
237+ echo " JETTY_PID = $JETTY_PID "
238+ echo " JETTY_START_LOG = $JETTY_START_LOG "
239+ echo " JETTY_STATE = $JETTY_STATE "
240+ echo " JETTY_START_TIMEOUT = $JETTY_START_TIMEOUT "
241+ echo " JETTY_SYS_PROPS = $JETTY_SYS_PROPS "
242+ echo " RUN_ARGS = ${RUN_ARGS[*]} "
232243}
233244
234245
235-
236246# #################################################
237247# Get the action & configs
238248# #################################################
358368if [ -z " $JETTY_RUN " ]
359369then
360370 JETTY_RUN=$( findDirectory -w /var/run /usr/var/run $JETTY_BASE /tmp) /jetty
361- [ -d " $JETTY_RUN " ] || mkdir $JETTY_RUN
371+ fi
372+
373+ if [ ! -d " $JETTY_RUN " ] ; then
374+ if ! mkdir $JETTY_RUN
375+ then
376+ echo " ** ERROR: Unable to create directory: $JETTY_RUN "
377+ echo " Correct issues preventing the creation of \$ JETTY_RUN and try again."
378+ exit 1
379+ fi
362380fi
363381
364382# ####################################################
@@ -495,6 +513,11 @@ RUN_ARGS=($JETTY_SYS_PROPS ${JETTY_DRY_RUN[@]})
495513
496514if (( DEBUG ))
497515then
516+ if expr " ${RUN_ARGS[*]} " : ' .*/etc/console-capture.xml.*' > /dev/null
517+ then
518+ echo " WARNING: Disable console-capture module for best DEBUG results"
519+ fi
520+ echo " IDs are $( id) "
498521 dumpEnv
499522fi
500523
503526# #################################################
504527case " $ACTION " in
505528 start)
506- echo -n " Starting Jetty: "
507-
508529 if (( NO_START )) ; then
509530 echo " Not starting ${NAME} - NO_START=1" ;
510531 exit
511532 fi
512533
534+ if ! touch " $JETTY_PID "
535+ then
536+ echo " ** ERROR: Unable to touch file: $JETTY_PID "
537+ echo " Correct issues preventing use of \$ JETTY_PID and try again."
538+ exit 1
539+ fi
540+
541+ if ! touch " $JETTY_STATE "
542+ then
543+ echo " ** ERROR: Unable to touch file: $JETTY_STATE "
544+ echo " Correct issues preventing use of \$ JETTY_STATE and try again."
545+ exit 1
546+ fi
547+
548+ echo -n " Starting Jetty: "
549+
513550 # Startup from a service file
514551 if [ $UID -eq 0 ] && type start-stop-daemon > /dev/null 2>&1
515552 then
@@ -519,15 +556,16 @@ case "$ACTION" in
519556 CH_USER=" --chuid $JETTY_USER "
520557 fi
521558
522- echo ${RUN_ARGS[@]} start-log-file=" $JETTY_START_LOG " | xargs start-stop-daemon \
559+ echo ${RUN_ARGS[@]} -- start-log-file=" $JETTY_START_LOG " | xargs start-stop-daemon \
523560 --start $CH_USER \
524561 --pidfile " $JETTY_PID " \
525562 --chdir " $JETTY_BASE " \
526563 --background \
564+ --output " ${JETTY_RUN} /start-stop.log"
527565 --make-pidfile \
528566 --startas " $JAVA " \
529567 --
530-
568+ (( DEBUG )) && echo " Starting: start-stop-daemon "
531569 else
532570
533571 if running $JETTY_PID
@@ -545,16 +583,19 @@ case "$ACTION" in
545583 SU_SHELL=" -s $JETTY_SHELL "
546584 fi
547585
548- touch " $JETTY_PID "
549586 chown " $JETTY_USER " " $JETTY_PID "
550587 su - " $JETTY_USER " $SU_SHELL -c "
551588 cd \" $JETTY_BASE \"
552- echo ${RUN_ARGS[*]} start-log-file=\" $JETTY_START_LOG \" | xargs ${JAVA} > /dev/null &
553- disown \$ !"
589+ echo ${RUN_ARGS[*]} --start-log-file=\" $JETTY_START_LOG \" | xargs ${JAVA} > /dev/null &
590+ PID=\$ !
591+ disown \$ PID"
592+ (( DEBUG )) && echo " Starting: su shell (w/user $JETTY_USER ) on PID $PID "
554593 else
555594 # Startup if not switching users
556- echo ${RUN_ARGS[*]} | xargs ${JAVA} > /dev/null &
557- disown $!
595+ echo ${RUN_ARGS[*]} --start-log-file=" ${JETTY_START_LOG} " | xargs ${JAVA} > /dev/null &
596+ PID=$!
597+ disown $PID
598+ (( DEBUG )) && echo " Starting: java command on PID $PID "
558599 fi
559600
560601 fi
@@ -592,7 +633,7 @@ case "$ACTION" in
592633 else
593634 # Stop from a non-service path
594635 if [ ! -r " $JETTY_PID " ] ; then
595- echo " ERROR: no pid found at $JETTY_PID "
636+ echo " ** ERROR: no pid found at $JETTY_PID "
596637 exit 1
597638 fi
598639
0 commit comments