日志管理
日志簡介:
LINUX日志就是記錄系統活動記錄的文件,例如如何時,何地,何人,做了是么事情,另外就是系統在什么么時候有事么樣的行為,發生了什么事件。
日志功能:
解決系統故障:
這個對系統管理員來說很重要,如啟動過程中檢測到的硬件數據都會內存中,由于這些檢測的信息可以讓我們了解硬件,人所以系統發生問題時,可以執行dmesg命令來查看硬件是否出錯。另外就是如果系統出現了系統資源被耗盡,核心活動發生錯誤,等都可能,則系統登錄文件也會將錯誤信息記錄到登陸文件,通常就是/var/log/messages,這些可以幫助你解決問題。
解決網絡問題:
在安裝設置新服務套件時,最常用到這個功能。例如安裝sendmail和postfix服務時也會用到。如無法發送郵件等問題,那么這些問題就將記錄在登錄文件中,只要分析登錄文件就可以解決問題的確切位置了,并能很好的解決。
記錄登陸信息:
例如apache這個www服務死機了,怎么知道死機。最后的登陸者是誰,這樣可以通過分析apache的登陸文件獲取信等問題。
常見系統日志服務:
sysklogd(CentOS-5之前版本)包含兩個軟件包:(syslogd,system application)記錄應用日志、(klogd,linux kernel)記錄內核日志
rsyslog 特性:CentOS6 和7
特點:
多線程,支持高并發
支持以(UDP, TCP, SSL, TLS, RELP)等協議完成遠程日志的記錄
還支持在MySQL, PGSQL, Oracle等數據庫上實現日志存儲
同時擁有強大的過濾器,可實現過濾記錄日志信息中任意部分
(三)rsyslog.conf中日志規則的定義的格式
facitlity.priority target
"."表示記錄后面等級以及以上等級
".="表示僅記錄后面等級的做記錄
".!"表示僅記錄后面等級之外的等級
facility日志類型:
代碼 | 意義 | |
---|---|---|
auth | pam產生的日志,認證日志 | |
authpriv | ssh,ftp等登錄信息的驗證信息,認證授權認證 | |
cron | 時間任務相關 | |
kern | 內核 | |
lpr | 打印 | |
郵件 | ||
mark(syslog) | rsyslog服務內部的信息,時間標識 | |
news | 新聞組 | |
user | 用戶程序產生的相關信息 | |
uucp | unix主機之間相關的通訊 | |
local0~7 | 自定義的日志設備 |
priority日志級別:
代碼 | 意義 |
---|---|
debug | 有調式信息的,日志信息最多 |
info | 一般信息的日志,最常用 |
notice | 最具有重要性的普通條件的信息 |
warning,warn | 警告級別 |
err,error | 錯誤級別,阻止某個功能或者模塊不能正常工作的信息 |
crit | 嚴重級別,阻止整個系統或者整個軟件不能正常工作的信息 |
alert | 需要立刻修改的信息 |
emerg,panic | 內核崩潰等嚴重信息 |
* | 所有級別 |
none | 無級別 |
代碼 | 意義 |
---|---|
文件 | /var/log/messages |
用戶 | root,*(表示所有用戶) |
日志服務器 | @172.16.22.1 |
管道 | COMMAND |
從上到下,級別從低到高,記錄的信息越來越少,如果設置的日志內性為err,則日志不會記錄比err級別低的日志,只會記錄比err更高級別的日志,也包括err本身的日志。
target日志目標:
代碼 | 意義 |
---|---|
文件 | /var/log/messages |
用戶 | root,*(表示所有用戶) |
日志服務器 | @172.16.22.1 |
管道 | COMMAND |
日志遠程服務器 @@表示tcp協議,@表示udp協議