This is my bash script. All it does is to check whether a service has started and whether some processes are running as expected.
It ends abruptly with a "Terminated" message. I tried debugging it with the
set -x
flag, and I still don't know what is going wrong. Stack Overflow and Google don't show me any other people with a similar problem.
The script has permissions of 755. Some commands are obfuscated, for obvious reasons.
#!/bin/bash
set -x
DAEMON_BIN=/etc/init.d/init-god
DAEMON_BIN_START="${DAEMON_BIN} start"
DAEMON_BIN_STOP="${DAEMON_BIN} stop"
SOME_VARIABLE="foo"
CHEF_CONFIG_FILE_PATH="/path/to/file"
NODE_INFO_FILE="/mnt/node_info/properties"
function get_key_value (){
value=$(grep -Po "(? /dev/null
nohup pkill -f resque &> /dev/null
eval $DAEMON_BIN_START
sleep 15
PROCESS_COUNT=ps aux | awk '/[p]rocess-name/' | wc -l
NODE_NAME=get_key_value node_name
if [[ $NODE_NAME -eq $SOME_VARIABLE && $PROCESS_COUNT -eq 1 ]]; then
echo "DAEMON and scheduler are running fine." ;
else
echo "A problem with DAEMON has occured." ;
fi
EXPECTED_PROCESS_COUNT=get_key_value no_of_workers
ACTUAL_WORKER_COUNT=ps ax | grep [r]esque-[0-9]
if [[ $EXPECTED_PROCESS_COUNT -eq $ACTUAL_WORKER_COUNT ]]; then
echo "Correct Number of workers initialized." ;
else
echo "More workers exist than are permitted." ;
fi
for (( i=0; i<${EXPECTED_PROCESS_COUNT}; i++ )); do
WORKER_NAME=get_key_value worker_${i}
COUNT=ps ax | grep ${WORKER_NAME} | grep -v grep | wc -l
if [[ $COUNT -eq 1 ]]; then
#statements
echo "${WORKER_NAME} is running."
else
echo "${WORKER_NAME} may not be running or might have more than 1 copies."
fi
done
The debug output of the script is as follows:
+ DAEMON_BIN=/etc/init.d/init-god
+ DAEMON_BIN_START='/etc/init.d/init-god start'
+ DAEMON_BIN_STOP='/etc/init.d/init-god stop'
+ SOME_VARIABLE=foo
+ CHEF_CONFIG_FILE_PATH=/path/to/file
+ NODE_INFO_FILE=/mnt/node_info/properties
+ eval /etc/init.d/init-god stop
++ /etc/init.d/init-god stop
.
Stopped all watches
Stopped god
+ nohup pkill DAEMON
+ nohup pkill -f resque
Terminated
Why does this script exit with a "Terminated" message? What should I do to prevent this from happening?
Asked by theTuxRacer
(1083 rep)
Oct 9, 2013, 05:27 AM
Last activity: Oct 12, 2024, 02:11 PM
Last activity: Oct 12, 2024, 02:11 PM