As I Please

MTのいんすとーるの練習と、その他びぼうろく・・・

bash 起動の script で、stdout,stderr を syslog に飛ばす

syslogに簡単に記録するには logger をよく使うが、標準出力、標準error も一緒に記録したい場合

#!/bin/bash
#
command  2>&1 | /usr/bin/logger -p local0.info -t command_name &

あとは syslog.conf , logrotate ,newsyslog などで適切にログローテートして ディスクあふれしないように。
今回は raspberry pi3 だったので、

raspberrypi:~# grep local0 /etc/rsyslog.conf
local0.*                        /var/log/local0.log
raspberrypi:~/# cat /etc/logrotate.d/local0
/var/log/local0.log
{
        rotate 7
        weekly
        missingok
        notifempty
        compress
        delaycompress
        size 100M
}
とかとか。

コメントする