#!/bin/sh export basedir=/home/syjy/ipfcstV3 export bindir=$basedir/produce export start_external_log=$basedir/logs/start_external.log export external_version="1.0.0" export external_path=$bindir/external/$external_version export service_startup_timeout=900 log_success_msg() { echo " SUCCESS! $@" } log_failure_msg() { echo " ERROR! $@" } case "$1" in external-start) cd $external_path echo $echo_n "Starting External" if test -x $external_path/ipfcst-external.jar then java -jar $external_path/ipfcst-external.jar >$start_external_log & echo $echo_n "External started, PID is $!" else log_failure_msg "Couldn't find External server($external_path/ipfcst-external.jar)" fi ;; external-stop) echo $echo_n "Shutting down External" pid_list="$(ps aux | grep ipfcst-external | grep -v grep | awk '{print $2}')" if test -z $pid_list ; then echo "External is not running" else for pid in $pid_list; do if kill -0 "$pid" 2>/dev/null; then echo "kill pid $pid" kill -9 $pid fi done fi ;; external-restart) if ./$0 external-stop ; then ./$0 external-start else log_failure_msg "Failed to stop running server, so refusing to try to start." exit 1 fi ;; external-status) pid_list="$(ps aux | grep ipfcst-external | grep -v grep | awk '{print $2}')" pid_count=`echo $pid_list | wc -w` if test $pid_count -eq 1 ; then echo "External running, pid is $pid_list" exit 0 elif test $pid_count -gt 1 ; then echo "Multiple External running $pid_list" exit 1 elif test -z $pid_list ; then echo "External is not running" exit 1 fi ;; *) # usage basename=`basename "$0"` echo "Usage: $basename {console-start|console-stop|console-restart|console-status|reportquery-start|reportquery-stop|reportquery-restart|reportquery-status|external-start|external-stop|external-restart|external-status} [ ipfcst server options ]" exit 1 ;; esac exit 0