summaryrefslogtreecommitdiffstats
path: root/src/os-plugins/plugins/syslog/init-hooks
diff options
context:
space:
mode:
Diffstat (limited to 'src/os-plugins/plugins/syslog/init-hooks')
-rw-r--r--src/os-plugins/plugins/syslog/init-hooks/15-have-ip-config/syslog.sh18
-rw-r--r--src/os-plugins/plugins/syslog/init-hooks/95-cleanup/syslog.sh12
2 files changed, 30 insertions, 0 deletions
diff --git a/src/os-plugins/plugins/syslog/init-hooks/15-have-ip-config/syslog.sh b/src/os-plugins/plugins/syslog/init-hooks/15-have-ip-config/syslog.sh
new file mode 100644
index 00000000..f0ca370f
--- /dev/null
+++ b/src/os-plugins/plugins/syslog/init-hooks/15-have-ip-config/syslog.sh
@@ -0,0 +1,18 @@
+if [ -e /initramfs/plugin-conf/syslog.conf ]; then
+ . /initramfs/plugin-conf/syslog.conf
+ if [ $syslog_active -ne 0 ]; then
+ # TODO: maybe limit the maximum log file size via rotation?
+ params="-s 0"
+ if [ -n "$syslog_host" ]; then
+ if [ -n "${syslog_port}" ]; then
+ host="${syslog_host}:${syslog_port}"
+ else
+ host="${syslog_host}"
+ fi
+ params="$params -R ${host}"
+ fi
+ echo "syslogd $params ..."
+ syslogd $params >/dev/null 2>&1
+ klogd >/dev/null 2>&1
+ fi
+fi
diff --git a/src/os-plugins/plugins/syslog/init-hooks/95-cleanup/syslog.sh b/src/os-plugins/plugins/syslog/init-hooks/95-cleanup/syslog.sh
new file mode 100644
index 00000000..08076c34
--- /dev/null
+++ b/src/os-plugins/plugins/syslog/init-hooks/95-cleanup/syslog.sh
@@ -0,0 +1,12 @@
+if [ -e /initramfs/plugin-conf/syslog.conf ]; then
+ . /initramfs/plugin-conf/syslog.conf
+ if [ $syslog_active -ne 0 ] && [ -n "$syslog_host" ]; then
+ # kill syslogd, as it is going to be replaced by system's syslog soon
+ killall syslogd
+ # remove links to boot.klog, as that will hang (I suppose that is
+ # because we already emptied /dev/kmsg)
+ if [ -e /mnt/etc/init.d/boot.klog ]; then
+ rm /mnt/etc/init.d/boot.d/*.klog
+ fi
+ fi
+fi