Linux中日誌系統(syslog)
用於記錄各子系統運行產生的各種信息
syslog服務:
syslogd: 記錄系統,非內核產生的信息
klogd:專門負責記錄內核產生的日誌信息
默認配置的syslog:
/var/log/messages 系統標準錯誤日誌信息;非內核產生引導信息;各子系統產生的信息:
/var/log/maillog 郵件系統產生的日誌信息
/vat/log/secure 與安全相關的日誌信息
日誌需要滾動(日誌切割):
防止日誌文件過大導致日誌信息分析不方便
syslog的配置文件爲:/etc/syslog.conf
指定了日誌的信息來源,級別和動作
配置文件定義格式爲: facility.priority action 如圖:
facility,可以理解爲日誌的來源或設備目前常用的facility有以下幾種:
syslog來源和動作
auth # 認證相關的
authpriv # 權限,授權相關的
cron # 任務計劃相關的
daemon # 守護進程相關的
kern # 內核相關的
lpr # 打印相關的
mail # 郵件相關的
mark # 標記相關的
news # 新聞相關的
security # 安全相關的,與auth 類似
syslog # syslog自己的
user # 用戶相關的
uucp # unix to unix cp 相關的
local0 到 local7 # 用戶自定義使用
* # *表示所有的facility
日誌級別:
指的是信息詳細程度
priority(log level)日誌的級別,一般有以下幾種級別(從低到高)
debug # 程序或系統的調試信息
info # 一般信息
notice # 不影響正常功能,需要注意的消息
warning/warn # 可能影響系統功能,需要提醒用戶的重要事件
err/error # 錯誤信息
crit # 比較嚴重的
alert # 必須馬上處理的
emerg/panic # 會導致系統不可用的
* # 表示所有的日誌級別
none # 忽略所有消息
action(動作)日誌記錄的位置
系統上的絕對路徑 # 普通文件 如: /var/log/xxx
| # 管道 通過管道送給其他的命令處理
終端 # 終端 如:/dev/console
@HOST # 遠程主機 如: @10.0.0.1
用戶 # 系統用戶 如: root 多名用戶用“,”隔開
* # 將消息發到所有用戶的終端上面