設施.優先順序」(facility.priority)
設施(facility):
kern 0 核心日誌訊息
user 1 隨機的使用者日誌訊息
mail 2 郵件系統日誌訊息
daemon 3 系統守護程序日誌訊息
auth 4 安全管理日誌訊息
syslog 5 syslogd本身的日誌訊息
lpr 6 印表機日誌訊息
news 7 新聞服務日誌訊息
uucp 8 uucp系統日誌訊息
cron 9 系統始終守護程序crond的日誌訊息
authpriv 10 私有的安全管理日誌訊息
ftp 11 ftp守護程序日誌訊息
12~15 保留為系統使用
local0~local7 16~23保留為本地使用
優先順序(priority),優先順序越低情況越嚴重:
emerg 0 系統不可用
alert 1 必須馬上採取行動的事件
crit 2 關鍵的事件
err 3 錯誤事件
warning 4 警告事件
notice 5 普通但重要的事件
info 6 有用的資訊
debug 7 除錯資訊
可以用*表示任何設施(句點前的*)或任何優先順序(句點後的*)。指定乙個優先順序的意思為大於等於該優先順序的日誌訊息。可以用none表示不包括任何優先順序。
linux對bsd的syslog做了一些擴充套件,引入了』=』和』!』。可以在任何乙個優先順序前用』=』,表示僅僅針對該優先順序而不包括大於它的優先順序。』!』表示求反,可以放在優先順序或』=』前面(如果有的話),表示和原來相反的意思。
具有相同優先順序的幾個設施可以一起寫在句點前面,用』,』分開。具有相同動作的多個選擇符可以寫在同一行的選擇符域,各個選擇符之間用』;』分開。
1,*.* : 任何設施的任何優先順序的日誌訊息
1,local0.*: local0的任何優先順序的日誌訊息
2,*.crit 任何設施的優先順序大於等於關鍵事件的日誌訊息
3,*.=crit 任何設施的關鍵事件日誌訊息
4,*.*;kern.none 除kern外的其他任何設施的任何日誌訊息
5,kern.info;kern.!err kern設施從info到warning之間的日誌訊息
動作域描述抽象名詞」logfile」,乙個」logfile」不必是乙個真正的檔案。syslogd提供了如下的動作:
1,正常的檔案,用檔案的全路徑名描述。路徑名前加』-『表示忽略同步檔案。
2,命名管道(fifo)。 在表示命名管道的檔案全路徑名前加」|」表示將日誌寫入命名管道。
3,終端和控制台。如/dev/console。
4,遠端機器。 「@hostname」
5,使用者列表
6,登入的所有使用者。 用*表示。
日誌函式:
void openlog(char *iden,int option,int facility)
void syslog(int priority,char *format);
日誌訊息格式:
ident:formatted string
為了利用syslogd提供的強大的日誌功能,可以在日誌系統中使用這些日誌函式。
log_auth auth
log_authpriv authpriv
log_cron cron
log_daemon daemon
log_kern kern
log_local0~log_local7 local0~local7
log_lpr lpr
log_mail mail
log_news news
log_syslog syslog
log_user user
log_uucp uucp
syslog()函式中的priority就是上面提到的那些優先順序,這裡用如下常數表示
log_emerg emerg
log_alert alert
log_crit crit
log_err err
log_warning warning
log_notice notice
log_info info
log_debug debug
syslog() 中的format的用法和printf(char *format)一樣。
比如,可以在ike模組中openlog(「ike」,0,log_local0)
然後在需要做日誌的地方比如加密卡出故障的時候:
syslog(log_emerg,」sjy01-a cipher crash!」);
syslog日誌等級
設施.優先順序 facility.priority 設施 facility kern 0 核心日誌訊息 user 1 隨機的使用者日誌訊息 mail 2 郵件系統日誌訊息 daemon 3 系統守護程序日誌訊息 auth 4 安全管理日誌訊息 syslog 5 syslogd本身的日誌訊息 lpr ...
syslog日誌記錄
rfc3164 被rfc5424替代了 udp rfc3195 tcp etc syslogd 守護程序 etc syslog.conf配置檔案,有些系統沒有該檔案 void openlog const char ident,int option,int facility void syslog i...
syslog日誌記錄
syslog日誌記錄 syslog兩個規範 rfc3164 被rfc5424替代了 udp rfc3195 tcp syslog兩個重要的檔案 etc syslogd 守護程序 etc syslog.conf配置檔案,有些系統沒有該檔案 syslog三個重要函式 void openlog const...