缘由
一些嵌入式设备将日志文件保存在 RAM 内,但系统一旦崩溃或重启,这些数据将会丢失,难以进行排错。
修改配置文件
一般情况下,rsyslog 在大部分 Linux 发行版中都被预置。若没有,请使用以下命令安装。
sudo apt install rsyslog
配置文件位于 /etc/rsyslog.conf
,根据以下示例进行修改。
module(load="imudp")
input(type="imudp" port="514")
module(load="imtcp")
input(type="imtcp" port="514")
module(load="imklog" permitnonkernelfacility="on")
$template RemoteLogs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
if ($fromhost-ip != "127.0.0.1" ) then ?RemoteLogs
& stop
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$RepeatedMsgReduction on
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup syslog
$WorkDirectory /var/spool/rsyslog
$IncludeConfig /etc/rsyslog.d/*.conf
Code language: PHP (php)
修改完成后重启
systemctl restart rsyslog
完成
远程主机的日志数据将会保存至 /var/log/%HOSTNAME%/%PROGRAMNAME%.log
0 条评论