Logging
rsyslog:“-”附加到操作路徑 / ftp.* 不記錄
以下配置規則:
auth,authpriv.* /var/log/auth.log *.*;auth,authpriv.none -/var/log/syslog #cron.* /var/log/cron.log daemon.* -/var/log/daemon.log ftp.* /var/log/vsftpd.log
前 2 行的意思是,將除 auth 和 authpriv 之外的所有內容記錄到 syslog,將它們記錄到 auth.log。Cron 日誌被註釋禁用,daemon.* 在 syslog 和 daemon.log 中。
ftp. 記錄到 syslog 但不記錄到 vsftpd.log,為什麼?*
路徑的“-”前綴是什麼?
我閱讀了手冊頁,但找不到有關此的資訊。
如果您的
ftp
平台未定義LOG_FTP
. 這可能是原因 - 有趣的是,ftp
它沒有作為有效工具包含在rsyslog.conf
聯機幫助頁中,很可能避免解釋它。* Mon Oct 12 18:29:44 CEST 1998: Martin Schulze <joey@infodrom.north.de> * Added `ftp' facility which was introduced in glibc version 2. * It's #ifdef'ed so won't harm with older libraries.
查看原始碼,您可以看到發生這種情況的位置
runtime/srutils.c
:syslogName_t syslogFacNames[] = { {"auth", LOG_AUTH}, {"authpriv", LOG_AUTHPRIV}, {"cron", LOG_CRON}, {"daemon", LOG_DAEMON}, {"kern", LOG_KERN}, {"lpr", LOG_LPR}, {"mail", LOG_MAIL}, {"mark", LOG_MARK}, /* INTERNAL */ {"news", LOG_NEWS}, {"security", LOG_AUTH}, /* DEPRECATED */ {"syslog", LOG_SYSLOG}, {"user", LOG_USER}, {"uucp", LOG_UUCP}, #if defined(LOG_FTP) {"ftp", LOG_FTP}, #endif {"local0", LOG_LOCAL0}, {"local1", LOG_LOCAL1}, {"local2", LOG_LOCAL2}, {"local3", LOG_LOCAL3}, {"local4", LOG_LOCAL4}, {"local5", LOG_LOCAL5}, {"local6", LOG_LOCAL6}, {"local7", LOG_LOCAL7}, {NULL, -1}, };
-
行為有點微妙。完整圖片需要三個 URL。簡短版本:從 V3 開始,
-
前綴本身指定是否要從磁碟同步中省略文件,但這僅在使用$ActionFileEnableSync on
.如果您使用混合的 syslog 守護程序環境進行操作,並且在伺服器之間共享兼容配置的做法,那麼在配置中包含語法仍然很有用。