1、介紹
rsyslog能夠理解爲加強的syslog,在syslog基礎上增長了不少其餘功能。如數據庫支持、日誌內容篩選、定義日誌格式模板等。
2、日誌級別數據庫
級別 | 說明 |
---|---|
debug | 調試信息 |
info | 正常信息 |
notice | 提醒信息 |
warn,warning | 警告信息 |
err,error | 錯誤信息 |
crit | 嚴重錯誤信息 |
alert | 報警信息,須要當即修改的信息 |
emerg,panic | 內核崩潰,系統接近崩潰 |
* | 全部日誌級別 |
none | 不記錄日誌信息 |
3、搭建vim
操做系統 | 名稱 | 地址 |
---|---|---|
CentOS7 | server | 172.16.120.101 |
CentOS7 | client | 172.16.120.102 |
#開放經過UDP協議514端口接收日誌信息功能 $ModLoad imudp $UDPServerRun 514 #開放經過TCP協議514端口接收日誌信息功能 $ModLoad imtcp $InputTCPServerRun 514
#使用UDP協議 *.* @172.16.120.101 #使用TCP協議 #*.* @@172.16.120.101
#GLOBAL DIRECTIVES $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat $template myFormat,"%timestamp% %fromhost-ip% %syslogtag% %msg%\n" $ActionFileDefaultTemplate myFormat
說明:
$template 格式名稱:「日誌採集格式」 格式名稱隨便起
%timestamp%:日誌生成時間
%fromhost-ip%:日誌來源主機IP
%syslogtag%:日誌生成程序
%msg%:日誌內容
\n:換行
2.重啓服務
systemctl restart rsyslog
5、自定義日誌路徑
1.修改配置(服務端)
vim /etc/rsyslog.conf服務器
#GLOBAL DIRECTIVES #根據客戶端的IP單獨存放主機日誌在不一樣目錄,rsyslog須要手動建立 $template RemoteLogs,"/var/log/rsyslog/%fromhost-ip%/%fromhost-ip%_%$YEAR%-%$MONTH%-%$DAY%.log" #排除本地主機IP日誌記錄,只記錄遠程主機日誌 :fromhost-ip, !isequal, "127.0.0.1" ?RemoteLogs #忽略以前全部的日誌,遠程主機日誌記錄完以後再也不繼續往下記錄 & ~
說明:
~:忽略,過濾日誌由:號開頭
^:後跟可執行腳本或程序的絕對路徑
2.重啓服務
systemctl restart rsyslogtcp