Rsyslog簡介vim
ryslog 是一個快速處理收集系統日誌的程序,提供了高性能、安全功能和模塊化設計。rsyslog 是syslog 的升級版,它將多種來源輸入輸出轉換結果到目的地。安全
rsyslog是一個開源工具,被普遍運用於Linux系統以經過TCP/UDP協議轉發或接收日誌消息。rsyslog守護進程能夠被配置成兩種環境,一種是配置成日誌收集服務器,rsyslog進程能夠從網絡中收集其它主機上的日誌數據,這些主機會將日誌配置爲發送到另外的遠程服務器。rsyslog的另一個用法,就是能夠配置爲客戶端,用來過濾和發送內部日誌消息到本地文件夾(如/var/log)或一臺能夠路由到的遠程rsyslog服務器上。服務器
在大多數據的Linux發行版中,rsyslog是一個預先安裝的標準日誌後臺進程。網絡
個人主機上爲rsyslog-7.4.2版本
app
咱們在本身的主機上實現將rsyslog守護進程配置成兩種不一樣的環境,作客戶端和服務端ssh
Rsyslog服務的默認的主配置文件在/etc/rsyslog.conf異步
主程序爲/user/sbin/rsyslogdtcp
rsyslog配置文件ide
vim /etc/rsyslog.conf模塊化
#### MODULES 日誌的模塊####
$ModLoad imuxsock #imuxsock是模塊名,支持本地系統日誌的模塊
$ModLoad imklog #imklog是模塊名,支持內核日誌的模塊
#module(load="imfile") #文本文件輸入模塊,提供轉換任何標準輸入文件爲一個syslog消息(客)
#$ModLoad immark #immark是模塊名,支持日誌標記
#$ModLoad imudp #imupd是模塊名,支持udp協議
#$UDPServerRun 514 #容許514端口接收使用UDP和TCP協議轉發過來的日誌
#$ModLoad imtcp #imtcp是模塊名,支持tcp協議
#$InputTCPServerRun 514
#### GLOBAL DIRECTIVES ####定義全局日誌格式的指令
$ActionFileDefaultTemplateRSYSLOG_TraditionalFileFormat #定義日誌格式默認模板
$IncludeConfig /etc/rsyslog.d/*.conf #載入rsyslog.d文件中全部以conf結尾的文件
#### RULES ####
*.info;mail.none;authpriv.none;cron.none /var/log/messages
#####記錄全部日誌類型的info級別以及大於info級別的信息到/var/log/messages,可是mail郵件信息,authpriv驗證方面的信息和cron時間#任務相關的信息除外
authpriv.* /var/log/secure
#####authpriv驗證相關的全部信息存放在/var/log/secure
mail.* -/var/log/maillog
#####郵件的全部信息存放在/var/log/maillog; 這裏有一個-符號, 表示是使用異步的方式記錄, 由於日誌通常會比較大
cron.* /var/log/cron
####計劃任務有關的信息存放在/var/log/cron
*.emerg * (*表示全部用戶)
###記錄全部的大於等於emerg級別信息, 以wall方式發送給每一個登陸到系統的人
uucp,news.crit /var/log/spooler
####記錄uucp,news.crit等存放在/var/log/spooler
local7.* /var/log/boot.log
####本地服務器的啓動的全部日誌存放在/var/log/boot.log中
###rsyslog.conf中日誌規則的定義的格式
facitlity.priority Target
#facility: 日誌設備(能夠理解爲日誌類型):
==============================================================
auth #pam產生的日誌,認證日誌
authpriv #ssh,ftp等登陸信息的驗證信息,認證受權認證
cron #時間任務相關
kern #內核
lpr #打印
mail #郵件
mark(syslog) #rsyslog服務內部的信息,時間標識
news #新聞組
user #用戶程序產生的相關信息
uucp #unix to unix copy, unix主機之間相關的通信
local 1~7 #自定義的日誌設備
===============================================================
#priority: 級別日誌級別:
=====================================================================
debug #有調式信息的,日誌信息最多
info #通常信息的日誌,最經常使用
notice #最具備重要性的普通條件的信息
warning, warn #警告級別
err, error #錯誤級別,阻止某個功能或者模塊不能正常工做的信息
crit #嚴重級別,阻止整個系統或者整個軟件不能正常工做的信息
alert #須要馬上修改的信息
emerg, panic #內核崩潰等嚴重信息
###從上到下,級別從低到高,記錄的信息愈來愈少,若是設置的日誌內性爲err,則日誌不會記錄比err級別低的日誌,只會記錄比err更高級別的日誌,也包括err自己的日誌。
=====================================================================
Target:
#文件, 如/var/log/messages
#用戶, root,*(表示全部用戶)
#日誌服務器,@172.16.22.1
#管道 | COMMAND