]> git.pld-linux.org Git - packages/syslog-ng.git/blob - syslog-ng.init
- fixed test cases
[packages/syslog-ng.git] / syslog-ng.init
1 #!/bin/sh
2 #
3 # syslog        Starts syslog-ng (syslogd replacement).
4 #
5 # chkconfig:    2345 30 70
6 # description:  Syslog is the facility by which many daemons use to log \
7 #               messages to various system log files. It is a good idea to \
8 #               always run syslog.
9
10 # Source function library
11 . /etc/rc.d/init.d/functions
12
13 # Set defaults
14 ENABLE_RECEIVE_FROM_NET=no
15 HOSTLIST=""
16 DOMAINLIST=""
17 MARK_TIMESTAMP=""
18
19 # Get service config
20 if [ -f /etc/sysconfig/syslog-ng ]; then
21         . /etc/sysconfig/syslog-ng
22 fi
23
24 checkconfig() {
25         syslog-ng $OPTIONS -F -s -p /var/run/syslog-ng-syntaxcheck.pid
26         RETVAL=$?
27         return $RETVAL
28 }
29
30 configtest() {
31         checkconfig 2>/dev/null
32         RETVAL=$?
33         if [ $RETVAL != 0 ]; then
34                 show "Checking syslog-ng config syntax"
35                 fail
36                 echo >&2 "Configuration file syntax test failed. Run $0 configtest to see errors."
37                 exit $RETVAL
38         fi
39 }
40
41 start() {
42         # Check if the service is already running?
43         if [ ! -f /var/lock/subsys/syslog-ng ]; then
44                 msg_starting "syslog-ng"
45                 daemon /usr/sbin/syslog-ng -f /etc/syslog-ng/syslog-ng.conf $OPTIONS
46                 RETVAL=$?
47                 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/syslog-ng
48         else
49                 msg_already_running "syslog-ng"
50         fi
51 }
52
53 stop() {
54         if [ -f /var/lock/subsys/syslog-ng ]; then
55                 msg_stopping "syslog-ng"
56                 killproc syslog-ng
57                 rm -f /var/lock/subsys/syslog-ng >/dev/null 2>&1
58         else
59                 msg_not_running "syslog-ng"
60         fi
61 }
62
63 condrestart() {
64         if [ -f /var/lock/subsys/syslog-ng ]; then
65                 configtest
66                 stop
67                 start
68         else
69                 msg_not_running "syslog-ng"
70                 RETVAL=$1
71         fi
72 }
73
74 reload() {
75         if [ -f /var/lock/subsys/syslog-ng ]; then
76                 configtest
77                 msg_reloading "syslog-ng"
78                 killproc syslog-ng -HUP
79                 RETVAL=$?
80         else
81                 msg_not_running "syslog-ng"
82                 exit 7
83         fi
84 }
85
86 flush_logs() {
87         if [ -f /var/lock/subsys/syslog-ng ]; then
88                 configtest
89                 msg_reloading "syslog-ng"
90                 killproc syslog-ng -HUP
91                 RETVAL=$?
92         else
93                 msg_not_running "syslog-ng"
94                 exit 7
95         fi
96 }
97
98 RETVAL=0
99 # See how we were called.
100 case "$1" in
101   start)
102         configtest
103         start
104         ;;
105   stop)
106         stop
107         ;;
108   restart)
109         configtest
110         stop
111         start
112         ;;
113   try-restart)
114         condrestart 0
115         ;;
116   reload|force-reload)
117         reload
118         ;;
119   flush-logs)
120         flush_logs
121         ;;
122   configtest)
123         show "Checking syslog-ng config syntax"
124         res=$(checkconfig 2>&1)
125         RETVAL=$?
126         [ $RETVAL = 0 ] && ok || fail
127         echo >&2 "$res"
128         ;;
129   status)
130         status syslog-ng
131         exit $?
132         ;;
133   *)
134         msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status|configtest|flush-logs}"
135         exit 3
136 esac
137
138 exit $RETVAL
This page took 0.057173 seconds and 3 git commands to generate.