]> git.pld-linux.org Git - packages/syslog-ng.git/blame - syslog-ng.init
- 3.3.5
[packages/syslog-ng.git] / syslog-ng.init
CommitLineData
8438c275 1#!/bin/sh
2#
752897ef 3# syslog Starts syslog-ng (syslogd replacement).
8438c275 4#
0e4e3ce1 5# chkconfig: 2345 17 83
8438c275 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
8438c275 13# Get service config
1ce70fc9 14if [ -f /etc/sysconfig/syslog-ng ]; then
ce032b45 15 . /etc/sysconfig/syslog-ng
8438c275 16fi
17
cf338514
ER
18# configtest itself
19# must return non-zero if check failed
20# output is discarded if checkconfig is ran without details
21configtest() {
f493795e 22 syslog-ng $OPTIONS -F -s -p /var/run/syslog-ng-syntaxcheck.pid
cf338514 23 return $?
f493795e
ER
24}
25
cf338514
ER
26# wrapper for configtest
27checkconfig() {
28 local details=${1:-0}
29
30 if [ $details = 1 ]; then
31 # run config test and display report (status action)
32 show "Checking %s configuration" "syslog-ng"; busy
33 local out
34 out=$(configtest 2>&1)
35 RETVAL=$?
36 if [ $RETVAL = 0 ]; then
37 ok
38 else
39 fail
40 fi
41 [ "$out" ] && echo >&2 "$out"
42 else
43 # run config test and abort with nice message if failed
44 # (for actions checking status before action).
45 configtest >/dev/null 2>&1
46 RETVAL=$?
47 if [ $RETVAL != 0 ]; then
48 show "Checking %s configuration" "syslog-ng"; fail
49 nls 'Configuration test failed. See details with %s "checkconfig"' $0
50 exit $RETVAL
51 fi
f493795e 52 fi
98e38ddd
ER
53}
54
37c89292 55start() {
8438c275 56 # Check if the service is already running?
e4d7f272 57 if [ -f /var/lock/subsys/syslog-ng ]; then
129b066d 58 msg_already_running "syslog-ng"
e4d7f272 59 return
8438c275 60 fi
e4d7f272
ER
61
62 msg_starting "syslog-ng"
528e8fc2 63 emit starting JOB=syslog-ng SERVICE_syslog=y
7946d1bb 64 daemon @@SBINDIR@@/syslog-ng -f /etc/syslog-ng/syslog-ng.conf --worker-threads=1024 $OPTIONS
e4d7f272
ER
65 RETVAL=$?
66 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/syslog-ng
99e95bd0 67 emit --no-wait started JOB=syslog-ng SERVICE_syslog=y
37c89292
ER
68}
69
70stop() {
e4d7f272 71 if [ ! -f /var/lock/subsys/syslog-ng ]; then
e968d50c 72 msg_not_running "syslog-ng"
e4d7f272 73 return
1dbda459 74 fi
e4d7f272
ER
75
76 msg_stopping "syslog-ng"
528e8fc2 77 emit stopping JOB=syslog-ng SERVICE_syslog=y
e4d7f272 78 killproc syslog-ng
528e8fc2 79 emit --no-wait stopped JOB=syslog-ng SERVICE_syslog=y
e4d7f272 80 rm -f /var/lock/subsys/syslog-ng >/dev/null 2>&1
37c89292
ER
81}
82
3aedaaf3 83condrestart() {
e4d7f272 84 if [ ! -f /var/lock/subsys/syslog-ng ]; then
e968d50c 85 msg_not_running "syslog-ng"
3aedaaf3 86 RETVAL=$1
e4d7f272 87 return
3aedaaf3 88 fi
e4d7f272 89
cf338514 90 checkconfig
e4d7f272
ER
91 stop
92 start
3aedaaf3
JB
93}
94
a29e358d 95reload() {
e4d7f272 96 if [ ! -f /var/lock/subsys/syslog-ng ]; then
a29e358d 97 msg_not_running "syslog-ng"
e4d7f272
ER
98 RETVAL=7
99 return
a29e358d 100 fi
e4d7f272 101
cf338514 102 checkconfig
e4d7f272
ER
103 msg_reloading "syslog-ng"
104 killproc syslog-ng -HUP
105 RETVAL=$?
a29e358d
ER
106}
107
fe5f78cc 108flush_logs() {
e4d7f272 109 if use_upstart && [ -f /etc/init/syslog-ng.conf ]; then
33d61325 110 checkconfig
c3d7f31f 111 /sbin/initctl reload syslog-ng
33d61325
ER
112 elif [ -x /bin/systemd_booted ] && /bin/systemd_booted; then
113 checkconfig
114 msg_reloading "syslog-ng"
115 /bin/systemctl reload syslog-ng.service
116 RETVAL=$?
117 [ $RETVAL -eq 0 ] && ok || fail
118 elif [ -f /var/lock/subsys/syslog-ng ]; then
cf338514 119 checkconfig
de459a1a
ER
120 msg_reloading "syslog-ng"
121 killproc syslog-ng -HUP
122 RETVAL=$?
123 else
124 msg_not_running "syslog-ng"
e4d7f272 125 RETVAL=7
de459a1a
ER
126 fi
127}
128
cf338514 129upstart_controlled --except checkconfig configtest flush-logs
c3d7f31f 130
37c89292
ER
131RETVAL=0
132# See how we were called.
133case "$1" in
134 start)
f4f3a55b 135 configtest
3aedaaf3 136 start
8438c275 137 ;;
37c89292 138 stop)
3aedaaf3 139 stop
8438c275 140 ;;
eeb0c076 141 restart)
752897ef 142 configtest
94d56279
PG
143 stop
144 start
98e38ddd 145 ;;
3aedaaf3 146 try-restart)
3aedaaf3 147 condrestart 0
8438c275 148 ;;
1ce70fc9 149 reload|force-reload)
99e95bd0 150 reload
eeb0c076 151 ;;
37c89292 152 flush-logs)
99e95bd0 153 flush_logs
37c89292 154 ;;
cf338514
ER
155 checkconfig|configtest)
156 checkconfig 1
3aedaaf3 157 ;;
37c89292
ER
158 status)
159 status syslog-ng
160 exit $?
161 ;;
8438c275 162 *)
cf338514 163 msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status|checkconfig|flush-logs}"
1ce70fc9 164 exit 3
8438c275 165esac
166
eeb0c076 167exit $RETVAL
This page took 0.06358 seconds and 4 git commands to generate.