]> git.pld-linux.org Git - packages/varnish.git/blob - varnishncsa.init
add VARNISHNCSA_OPTS config to add generic options to varnishncsa daemon
[packages/varnish.git] / varnishncsa.init
1 #!/bin/sh
2 #
3 # varnishncsa   Control the varnish ncsa logging daemon
4 #
5 # chkconfig:    345 90 10
6 #
7 # description:  Varnish HTTP accelerator logging daemon
8 #
9 # processname:  varnishncsa
10 # pidfile: /var/run/varnish/varnishncsa.pid
11
12 # Source function library
13 . /etc/rc.d/init.d/functions
14
15 # Get service config - may override defaults
16 [ -f /etc/sysconfig/varnishncsa ] && . /etc/sysconfig/varnishncsa
17
18 pidfile="/var/run/varnishncsa.pid"
19 logfile="/var/log/varnish/access.log"
20
21 start() {
22         # Check if the service is already running?
23         if [ -f /var/lock/subsys/varnishncsa ]; then
24                 msg_already_running "Varnish NCSA logging daemon"
25                 return
26         fi
27
28         # NCSA log format, to be used by HTTP log analyzers
29         if ! is_yes "$VARNISHNCSA_ENABLED"; then
30                 return
31         fi
32
33         local opts
34         if is_yes "$LOG_BACKEND"; then
35                 opts="$opts -b"
36         fi
37
38         if is_yes "$LOG_CLIENT"; then
39                 opts="$opts -c"
40         fi
41
42         # -b and -c specified together does not work,
43         # however specifing neither of them assumes both are set
44         if is_yes "$LOG_BACKEND" && is_yes "$LOG_CLIENT"; then
45                 opts=""
46         fi
47
48         msg_starting "Varnish NCSA logging daemon"
49         daemon --pidfile $pidfile /usr/bin/varnishncsa -a -w $logfile -D -P $pidfile $opts $VARNISHNCSA_OPTS
50         RETVAL=$?
51         [ $RETVAL -eq 0 ] && touch /var/lock/subsys/varnishncsa
52 }
53
54 stop() {
55         if [ ! -f /var/lock/subsys/varnishncsa ]; then
56                 msg_not_running "Varnish NCSA logging daemon"
57                 return
58         fi
59
60         # Stop daemons.
61         msg_stopping "Varnish NCSA logging daemon"
62         killproc --pidfile $pidfile varnishncsa
63         rm -f /var/lock/subsys/varnishncsa
64 }
65
66 condrestart() {
67         if [ ! -f /var/lock/subsys/varnishncsa ]; then
68                 msg_not_running "Varnish NCSA logging daemon"
69                 RETVAL=$1
70                 return
71         fi
72
73         stop
74         start
75 }
76
77 reload() {
78         if [ ! -f /var/lock/subsys/varnishncsa ]; then
79                 msg_not_running "Varnish NCSA logging daemon"
80                 RETVAL=7
81                 return
82         fi
83
84         msg_reloading "Varnish NCSA logging daemon"
85         killproc --pidfile $pidfile varnishncsa -HUP
86 }
87
88 flush-logs() {
89         if [ ! -f /var/lock/subsys/varnishncsa ]; then
90                 msg_not_running "Varnish NCSA logging daemon"
91                 return
92         fi
93
94         show "Rotating %s logs" "Varnish NCSA logging daemon"
95         killproc --pidfile $pidfile varnishncsa -HUP
96         RETVAL=$?
97 }
98
99 RETVAL=0
100 # See how we were called.
101 case "$1" in
102   start)
103         start
104         ;;
105   stop)
106         stop
107         ;;
108   restart)
109         stop
110         start
111         ;;
112   try-restart)
113         condrestart 0
114         ;;
115   reload|force-reload)
116         reload
117         ;;
118   flush-logs)
119         flush-logs
120         ;;
121   status)
122         status varnishncsa
123         RETVAL=$?
124         ;;
125   *)
126         msg_usage "$0 {start|stop|restart|try-restart|force-reload|flush-logs|status}"
127         exit 3
128 esac
129
130 exit $RETVAL
This page took 0.088496 seconds and 3 git commands to generate.