rsyslog介紹
rsyslog可以理解爲增強版的syslog,在syslog的基礎上擴展了很多其他功能,如數據庫支持(Mysql,PostgreSQL、Oracle等)、日誌內容篩選、定義日誌格式模板等。除了默認的udp協議外,rsyslog還支持tcp協議來接收日誌,可以yum安裝,也可以源碼安裝
rsyslog優點
防止系統崩潰無法獲取系統日誌分享崩潰原因,用rsyslog可以把日誌傳輸到遠程的日誌服務器上
使用rsyslog日誌可以減輕系統壓力,因爲使用rsyslog可以有效減輕系統的磁盤IO
rsyslog使用tcp傳輸非常可靠,可以對日誌進行過濾,提取出有效的日誌,rsyslog是輕量級的日誌軟件,在大量日誌寫的情況下,系統負載基本上在0.1以下
日誌信息等級
level | 說明 |
none | 不需登錄等級 |
debug | 調試信息 |
info | 正常信息,僅是一些基本的信息說明而已。 |
notice | 比info還需要被注意到的一些信息內容 |
warning,warn | 警告信息,可能有些問題,但是還不至於影響到某個服務運作的信息 |
err,error | 一些重大的錯誤信息 |
crit | 臨界狀態,比error還要嚴重的錯誤信息,橙色警報 |
alert | 紅色警報,已經很有問題的等級,比crit還要嚴重 |
emerg,panic | 疼痛等級,意指系統已經要宕機的狀態!很嚴重的錯誤信息了。通常大概只有硬件出問題,導致整個核心無法順利工作,就會出現這樣的等級信息。 |
設施類別
facility:設施,從功能或程序上對日誌進行分類,並由專門的工具記錄其日誌
facility | 說明 |
auth | 主要與認證相關的機制,例如login,ssh,su等 |
authpriv | 主要於授權相關的機制。 |
cron | 就是例行性工作排程cron/at等產生信息記錄的地方。 |
daemon | 於各個daemon相關的的訊息 |
kern | 就是核心(kernel)產生的訊息的地方 |
lpr | 於打印相關的信息 |
只要與郵件收發有關的信息記錄都屬於這個 | |
mark | 於防火牆相關的 |
news | 於新聞組服務器有關的東西 |
security | 於安全相關 |
syslog | 就是syslog這個程序本身產生的信息 |
user | 用戶 |
uucp | unix to unix copy |
local0-local7 | 8個用戶自定義的設施 |
通配機制
通配符 | 說明 |
. | 代表【比後面還要高的等級(含該等級)都被記錄下來】的意思;例如:mail.info代表只要是mail信息,而且該信息等級高於info(含info)時,就會被記錄下來的意思。 |
.= | 代表所需要的等級就是後面接的等級而已,其他的不要。例如:main.=info代表的只要是mail信息,而且該信息等於info級別,就會被記錄下來。 |
.! | 代表不等於(取反),亦是除了該等級外的其他等級都記錄。 |
* | 所有;例如:*.info代表所有設施的info級別 |
, | 列表;例如:mail.notice,news.info代表mail的notice級別及news的info級別。 mail,news.info代表mail的info及news的info。 |
日誌的輸出位置
輸出位置 | 說明 |
文件 | 如/var/log/messages |
打印機或其他 | 如/dev/lp0這個打印機裝置 |
使用者名稱 | 顯示給用戶。例如:*代表目前在線的所有人 |
遠程主機 | 例如:@172.16.100.1(遠程日誌服務器。@代表通過UCP協議傳,@@代表通過TCP協議傳) |
管道 | |command |
日誌信息格式
時間 主機 進程(PID) 事件
ryslog升級
RHEL/CENTOS系統默認安裝的是V5版本的rsyslog。如需升級。請執行如下代碼。
wget -P /etc/yum.repos.d/ http://rpms.adiscon.com/v8-stable/rsyslog.repo yum -y install rsyslog 或者 yum -y update rsyslog