我尝试使用 rsyslog 将消息路由到日志文件

我尝试使用 rsyslog 将消息路由到日志文件

在 myapp.service 中,我有:

StandardOutput=syslog
StandardErr=syslog

当我做 :

$ journalctl -e -u myapp

我可以看到日志的每一行都包含“myapp[PID]”。

我尝试使用以下命令设置 /etc/rsyslog.d/myapp.conf:

if $msg contains 'myapp' then /opt/myapp/log/myapp.log
& stop

或者

if $programname == 'myapp' then /opt/myapp/log/myapp.log
& stop

每次使用“rsyslogd -N1”检查语法并重新启动 rsyslogd。

但日志消息未路由,myapp.log 中未写入任何内容

难道是因为我的 rsyslog 版本(8.16)?或者一些权限问题?我尝试过触摸日志文件,但没有成功。

答案1

这是一些权限问题:chmod 666 myapp.log已修复。

相关内容