...
Code Block | ||||
---|---|---|---|---|
| ||||
#! /bin/bash
### BEGIN INIT INFO
# Provides: nephwork
# Required-Start: nginx/apache
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: The main django process
# Description: The gunicorn process that receives HTTP requests
# from nginx/apache
#
### END INIT INFO
#
# Author: Tim Whitlock <tim.whitlock@renalregistry.nhs.uk>
#
# Replace this with absolute path to project directory if used as init.d script
#PROJDIR="$(dirname `dirname "${BASH_SOURCE[0]}"`)";
PROJDIR="/home/nephwork/nephwork.renalreg.org";
APPNAME=nephwork
USER=nephwork
PATH=/bin:/usr/bin:/sbin:/usr/sbin
ACTIVATE=$PROJDIR/venv/bin/activate
APPMODULE=nephwork.wsgi
DAEMON=gunicorn
BIND=127.0.0.1:9887
# Put under /var/run and /var/log to make more consistent with other init.d scripts
# Subdriectories in /var/run and /var/log need to be owned by this user for logging and pid to be saved.
#PIDFILE=$PROJDIR/$DAEMON-nephwork.pid
PIDFILE=/var/run/nephwork/$DAEMON-nephwork.pid
#LOGFILE=$PROJDIR/logs/$DAEMON-nephwork.log
LOGFILE=/var/log/nephwork/$DAEMON-nephwork.log
WORKERS=2
#if [ ! -d "$PROJDIR/logs" ]; then
# mkdir -p "$PROJDIR/logs";
#fi
if [ ! -d "/var/log/nephwork" ]; then
mkdir -p "/var/log/nephwork";
fi
. /lib/lsb/init-functions
if [ -e "/etc/default/$APPNAME" ]
then
. /etc/default/$APPNAME
fi
case "$1" in
start)
# log_daemon_msg "Starting deferred execution scheduler" "$APPNAME"
source $ACTIVATE
$DAEMON --daemon --bind=$BIND --pid=$PIDFILE --workers=$WORKERS --user=$USER --log-file=$LOGFILE $APPMODULE
RETVAL=$?
if [ $RETVAL = 0 ]; then
log_success_msg "$APPNAME has started";
else
log_failure_msg "Failed to start $APPNAME";
fi
;;
stop)
# log_daemon_msg "Stopping deferred execution scheduler" "$APPNAME"
killproc -p $PIDFILE $DAEMON
RETVAL=$?
if [ $RETVAL = 0 ]; then
log_success_msg "$APPNAME has stopped";
else
log_failure_msg "Failed to stop $APPNAME";
fi
;;
force-reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: ./bin/$APPNAME {start|stop|restart|force-reload}"
exit 1
;;
esac
exit 0
|
The log files can be found in /var/log/httpd24
for proxy issues and /var/log/nephwork
for django site related issues.