Arch-Linux
無法在 archlinux 系統上通過 rsyslog 登錄
使用 Archlinux 的 2016.03.01 版本和 rsyslogd 8.18.0 包,我從非常簡單的配置建構的最小配置開始 :
# cat rsyslog.conf $ModLoad immark $ModLoad imudp $ModLoad imtcp $ModLoad imuxsock $ModLoad imklog $template SyslFormat,"%timegenerated% [WJCG]-%HOSTNAME% %syslogtag%%msg:::space$ kern.debug /var/adm/syslog.dated/kern.log;SyslFormat user.debug /var/adm/syslog.dated/user.log;SyslFormat daemon.debug /var/adm/syslog.dated/daemon.log;SyslFormat auth.crit;syslog.debug /var/adm/syslog.dated/syslog.log;SyslFormat mail,lpr.debug /var/adm/syslog/misc.log;SyslFormat kern.debug /var/adm/messages;SyslFormat kern.debug /dev/console;SyslFormat *.emerg * local4.* /var/log/local4.log
現在,如果我嘗試(作為使用者或 root):
# echo hello|logger -p local4.info
沒有記錄,沒有
/var/log/local4.log
創建文件。然而,在 systemd 日誌的末尾,我得到了:
# journalctl -xe|tail Jun 10 18:32:17 mothership mobr[1681]: hello Jun 10 18:38:09 mothership root[1696]: hello
似乎 systemd 正在弄亂正常日誌,但我找不到方法。有什麼線索嗎?
已解決:
通過創建日誌文件:並
# touch /var/log/local4.log
啟動選項
ForwardToSyslog=yes``/etc/systemd/journald.conf
我歡迎提供支持文件的連結,因為我在 rsyslog.com 的網站上找不到它。但是,從 OP 的測試中可以明顯看出,rsyslog(具有給定配置)將拒絕創建新文件;要啟用對這些文件的日誌記錄,請先創建它們(例如
touch /var/log/local4.log
)。這在之前出現過:如果不存在,如何告訴 rsyslog 創建日誌文件?正如該問題所詢問的有關文件刪除的問題;通過 logrotate 進行文件輪換也是類似的情況。