我正在尝试使用RainerScript 语法在我的 Debian/etc/rsyslog.conf
文件中。我想将守护进程的内容记录到特定文件,但仅限于pppd
.这是我添加的内容:
if $programname == 'pppd' then {
daemon.*;local2.* -/var/log/pppd.log
}
然后我重新启动了 rsyslog 服务。东西确实被记录到这个文件中;然而我也从中得到了一些东西,named
所以该if
声明要么似乎被忽略,要么总是评估为真。为什么会是其中任何一个?我在代码中犯了错误吗?
答案1
尝试:
if $programname == 'pppd' and $syslogfacility-text =='daemon' and $syslogfacility-text == 'local2' then /var/log/pppd.log
if $programname == 'pppd' then ~
第 1 行表示记录到文件 /var/log/pppd.log
第 2 行表示“确定停止记录到文件”,因为不再有日志文件,波浪号实际上意味着“丢弃”。