mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-07-25 20:25:28 +03:00
76 lines
1.7 KiB
Text
76 lines
1.7 KiB
Text
#!/sbin/runscript
|
|
# Copyright 1999-2007 Gentoo Foundation
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
extra_commands="update"
|
|
extra_started_commands="reload"
|
|
|
|
depend() {
|
|
need hostname localmount
|
|
before net
|
|
provide logger
|
|
}
|
|
|
|
start() {
|
|
[ ! -f /etc/syslog-ng/syslog.conf ] && update
|
|
ebegin "Starting syslog-ng"
|
|
start-stop-daemon --start --quiet --exec /usr/sbin/syslog-ng --pidfile /run/syslog-ng.pid
|
|
eend $?
|
|
}
|
|
|
|
stop() {
|
|
ebegin "Stopping syslog-ng"
|
|
start-stop-daemon --stop --quiet --pidfile /run/syslog-ng.pid --exec /usr/sbin/syslog-ng
|
|
eend $?
|
|
}
|
|
|
|
reload() {
|
|
if [ ! -f /run/syslog-ng.pid ]
|
|
then
|
|
eerror "syslog-ng not running!"
|
|
return 1
|
|
fi
|
|
ebegin "Reloading syslog-ng"
|
|
start-stop-daemon --signal HUP --pidfile /run/syslog-ng.pid --exec /usr/sbin/syslog-ng
|
|
eend $?
|
|
}
|
|
|
|
grep_syslog_conf_entries() {
|
|
local section="$1" FN filelist
|
|
grep -v '^#' /etc/syslog-ng/syslog-ng-${section}.std
|
|
filelist=$(find /etc/syslog-ng/ -maxdepth 1 -type f -name "syslog-ng-${section}.*" | grep -Ev ".backup|.std|~")
|
|
if [ $? -eq 0 ]
|
|
then
|
|
for FN in ${filelist}
|
|
do
|
|
grep -v '^#' $FN
|
|
done
|
|
fi
|
|
}
|
|
|
|
update() {
|
|
local fname='/etc/syslog-ng/syslog-ng.conf'
|
|
local f_tmp="/etc/syslog-ng/syslog-ng.conf.$$"
|
|
for ng_std in options source destination filter log
|
|
do
|
|
[ -f /etc/syslog-ng/syslog-ng-${ng_std}.std ] || exit 1
|
|
done
|
|
{
|
|
# create options entries
|
|
echo "options {"
|
|
grep_syslog_conf_entries options
|
|
echo "};"
|
|
# create source entries
|
|
echo "source s_all {"
|
|
grep_syslog_conf_entries source
|
|
echo "};"
|
|
# create destination entries
|
|
grep_syslog_conf_entries destination
|
|
# create filter entries
|
|
grep_syslog_conf_entries filter
|
|
# create log entries
|
|
grep_syslog_conf_entries log
|
|
} > $f_tmp
|
|
cp -p $f_tmp $fname
|
|
rm -f $f_tmp
|
|
}
|