]>
Commit | Line | Data |
---|---|---|
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 | 14 | if [ -f /etc/sysconfig/syslog-ng ]; then |
ce032b45 | 15 | . /etc/sysconfig/syslog-ng |
8438c275 | 16 | fi |
17 | ||
cf338514 ER |
18 | # configtest itself |
19 | # must return non-zero if check failed | |
20 | # output is discarded if checkconfig is ran without details | |
21 | configtest() { | |
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 |
27 | checkconfig() { | |
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 | 55 | start() { |
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" | |
fd8cb100 | 63 | daemon @@SBINDIR@@/syslog-ng -f /etc/syslog-ng/syslog-ng.conf $OPTIONS |
e4d7f272 ER |
64 | RETVAL=$? |
65 | [ $RETVAL -eq 0 ] && touch /var/lock/subsys/syslog-ng | |
37c89292 ER |
66 | } |
67 | ||
68 | stop() { | |
e4d7f272 | 69 | if [ ! -f /var/lock/subsys/syslog-ng ]; then |
e968d50c | 70 | msg_not_running "syslog-ng" |
e4d7f272 | 71 | return |
1dbda459 | 72 | fi |
e4d7f272 ER |
73 | |
74 | msg_stopping "syslog-ng" | |
e4d7f272 | 75 | killproc syslog-ng |
e4d7f272 | 76 | rm -f /var/lock/subsys/syslog-ng >/dev/null 2>&1 |
37c89292 ER |
77 | } |
78 | ||
3aedaaf3 | 79 | condrestart() { |
e4d7f272 | 80 | if [ ! -f /var/lock/subsys/syslog-ng ]; then |
e968d50c | 81 | msg_not_running "syslog-ng" |
3aedaaf3 | 82 | RETVAL=$1 |
e4d7f272 | 83 | return |
3aedaaf3 | 84 | fi |
e4d7f272 | 85 | |
cf338514 | 86 | checkconfig |
e4d7f272 ER |
87 | stop |
88 | start | |
3aedaaf3 JB |
89 | } |
90 | ||
a29e358d | 91 | reload() { |
e4d7f272 | 92 | if [ ! -f /var/lock/subsys/syslog-ng ]; then |
a29e358d | 93 | msg_not_running "syslog-ng" |
e4d7f272 ER |
94 | RETVAL=7 |
95 | return | |
a29e358d | 96 | fi |
e4d7f272 | 97 | |
cf338514 | 98 | checkconfig |
e4d7f272 ER |
99 | msg_reloading "syslog-ng" |
100 | killproc syslog-ng -HUP | |
101 | RETVAL=$? | |
a29e358d ER |
102 | } |
103 | ||
fe5f78cc | 104 | flush_logs() { |
6277303e | 105 | if [ -x /bin/systemd_booted ] && /bin/systemd_booted; then |
33d61325 ER |
106 | checkconfig |
107 | msg_reloading "syslog-ng" | |
108 | /bin/systemctl reload syslog-ng.service | |
109 | RETVAL=$? | |
110 | [ $RETVAL -eq 0 ] && ok || fail | |
111 | elif [ -f /var/lock/subsys/syslog-ng ]; then | |
cf338514 | 112 | checkconfig |
de459a1a ER |
113 | msg_reloading "syslog-ng" |
114 | killproc syslog-ng -HUP | |
115 | RETVAL=$? | |
116 | else | |
117 | msg_not_running "syslog-ng" | |
e4d7f272 | 118 | RETVAL=7 |
de459a1a ER |
119 | fi |
120 | } | |
121 | ||
37c89292 ER |
122 | RETVAL=0 |
123 | # See how we were called. | |
124 | case "$1" in | |
125 | start) | |
f4f3a55b | 126 | configtest |
3aedaaf3 | 127 | start |
8438c275 | 128 | ;; |
37c89292 | 129 | stop) |
3aedaaf3 | 130 | stop |
8438c275 | 131 | ;; |
eeb0c076 | 132 | restart) |
752897ef | 133 | configtest |
94d56279 PG |
134 | stop |
135 | start | |
98e38ddd | 136 | ;; |
3aedaaf3 | 137 | try-restart) |
3aedaaf3 | 138 | condrestart 0 |
8438c275 | 139 | ;; |
1ce70fc9 | 140 | reload|force-reload) |
99e95bd0 | 141 | reload |
eeb0c076 | 142 | ;; |
37c89292 | 143 | flush-logs) |
99e95bd0 | 144 | flush_logs |
37c89292 | 145 | ;; |
cf338514 ER |
146 | checkconfig|configtest) |
147 | checkconfig 1 | |
3aedaaf3 | 148 | ;; |
37c89292 ER |
149 | status) |
150 | status syslog-ng | |
151 | exit $? | |
152 | ;; | |
8438c275 | 153 | *) |
cf338514 | 154 | msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status|checkconfig|flush-logs}" |
1ce70fc9 | 155 | exit 3 |
8438c275 | 156 | esac |
157 | ||
eeb0c076 | 158 | exit $RETVAL |