Syslog in Telem Devices
Jump to navigation
Jump to search
In telem devices, syslog is stared atr boot in the S01logging script located in /etc/init.d.
root@telem-gw6e /home/martem $ cat /etc/init.d/S01logging #!/bin/sh # # Start logging # # Read config file if it is present. if [ -r /etc/default/syslogd ] then . /etc/default/syslogd fi case "$1" in start) echo -n "Starting logging: " ! rm -rf /tmp/log ! rm -rf /var/log mkdir -p /tmp/log ln -s /tmp/log /var/log ln -s /var/local/telem/log /var/log/telem touch /var/log/wtmp if [ "$SYSLOGD_REMOTE" = "yes" ]; then start-stop-daemon -S -q -p /var/run/syslog.pid --exec /sbin/syslogd -- -O /var/log/telem/messages -s 1024 -b 3 -L -R $SYSLOGD_REMOTE_SERVER:514 else start-stop-daemon -S -q -p /var/run/syslog.pid --exec /sbin/syslogd -- -O /var/log/telem/messages -s 1024 -b 3 fi ln -s /var/log/telem/messages /var/log/messages if [ "$TELEM_GW_SYSLOG_REMOTE" = "yes" ]; then /usr/local/bin/telem/telem_syslog.sh $TELEM_GW_SYSLOG_REMOTE_SERVER &> /dev/null & fi start-stop-daemon -S -q -p /var/run/klogd.pid --exec /sbin/klogd echo "OK" ;; stop) echo -n "Stopping logging: " start-stop-daemon -K -q -p /var/run/syslog.pid start-stop-daemon -K -q -p /var/run/klogd.pid killall -9 syslogd killall -9 klogd killall -9 telem_syslog.sh killall -9 socat echo "OK" ;; restart|reload) ;; *) echo $"Usage: $0 {start|stop|restart}" exit 1 esac exit $?
Example of /etc/default/syslog
root@telem-gw6e /home/martem $ cat /etc/default/syslogd SYSLOGD_REMOTE=no SYSLOGD_REMOTE_SERVER=192.168.255.11 TELEM_GW_SYSLOG_REMOTE=no TELEM_GW_SYSLOG_REMOTE_SERVER=192.168.255.11
Contents of /usr/local/bin/telem/telem_syslog.sh
root@telem-gw6e /home/martem $ cat /usr/local/bin/telem/telem_syslog.sh #!/bin/sh while true do logger "telem_syslog:start" /usr/bin/socat -t 20 -T 20 udp4-recvfrom:514,bind=127.0.0.1,ignoreeof udp4-sendto:$1:514 logger "telem_syslog:exit" done
MarkTomm 24. veebruar 2015, kell 15:22 (EET)