rsyslogd
後台進程負責搜集來自應用程式與核心的服務訊息,然後送至日誌檔內 (通常儲存在 /var/log/
資料夾內)。遵守 /etc/rsyslog.conf
組態檔案的要求。
auth
和 authpriv
:供認證之用;
cron
:來自工作排程服務,cron
和 atd
;
daemon
:未受任何特別分類影響的後台進程 (DNS、NTP 等);
ftp
:關心 FTP 伺服器;
kern
:來自核心的訊息;
lpr
:來自列印次系統的;
mail
:來自電子郵件次系統;
news
:Usenet 次系統的訊息 (尤其是來自管理新聞群組的 NNTP — Network News Transfer Protocol — 伺服器);
syslog
:來自 syslogd
伺服器本身的訊息;
user
:使用者訊息 (一般);
uucp
:來自 UUCP 伺服器 (Unix to Unix Copy Program,用於散布電子郵件訊息的通訊協定) 的訊息;
local0
至 local7
:保留給在地使用。
emerg
:“救命!” 緊急狀態,系統可能已掛了。
alert
:趕快,任何延誤可能造成危險,必須立即採取行動;
crit
:情況嚴重;
err
:錯誤;
warn
:警示 (可能的錯誤);
notice
:情況正常,但訊息極重要;
info
:資訊性訊息;
debug
:需要除錯的訊息。
/etc/rsyslog.conf
檔案的語法詳述於 rsyslog.conf(5) 手冊內,還有 HTML 文件於 rsyslog-doc package (/usr/share/doc/rsyslog-doc/html/index.html
) 內。總體原則是撰寫 “選擇器” 與 “作為” 的配對。選擇器設定所有相關的訊息,作為描述對應的工作。
次系統.優先層級
配對 (如:auth.notice;mail.info
) 清單。星號代表所有次系統或優先層級 (如:*.alert
或 mail.*
)。可以用逗點群聚多個次系統,(如:auth,mail.info
)。優先層級也包括等於或高於的優先訊息;因此 auth.alert
表示 auth
次系統的 alert
或 emerg
優先層級。前置驚嘆號 (!) 表示相反的意思,換句話說,就是限於較低的優先層級;auth.!notice
表示來自 auth
次系統的 info
或 debug
優先層級。前置等號 (=) 表示祗限該優先層級 (auth.=notice
祗限於來自 auth
訊息的 notice
優先層級)。
kern.info;kern.!err
表示來自核心的訊息,其優先權介於 info
和 warn
之間。none
優先權表示空白的集合 (無優先權),且可做為從訊息集中排除指定的次系統。因此,*.crit;kern.none
表示所有來自核心以外的訊息,其優先權均等同於高於 crit
。