1. 程式人生 > >Linux日誌管理(一)

Linux日誌管理(一)

日誌

一、日誌中的四個W
When:事件何時發生
Where:日誌在哪裏產生
Who:哪些程序觸發了這條日誌
What:發生了什麽事件

二、一個簡單的日誌收集拓撲
技術分享圖片
網絡設備、服務器通過syslog的協議將日誌傳送到日誌服務器上,日誌服務器定時地將日誌歸檔,儲存到後端存儲設備上。

常用的日誌管理程序為rsyslog和syslog-ng,這兩個日誌管理程序都支持下面三種日誌傳輸方式:
UDP傳輸:應用最廣泛的日誌傳輸方式,性能開銷小,但是傳輸缺乏可靠性。
TCP傳輸:確保日誌傳輸的可靠性,但是性能開銷大於UDP方式。
TLS加密傳輸:確保日誌傳輸的可靠性與安全性。

三、rsyslog
在CentOS 6中,rsyslog作為系統默認的日誌管理程序,版本為5.8.10,官網可下載最新的8.34.0版本。

A、rsyslog服務端配置

1、配置rsyslog傳輸協議、存儲位置、端口
[root@CentOS ~]#vim /etc/rsyslog.conf
$ModLoad imudp #打開UDP端口
$UDPServerRun 514
$ModLoad imtcp #打開TCP端口
$InputTCPServerRun 514
2、重啟rsyslog服務並查看服務狀態
[root@CentOS ~]/etc/init.d/rsyslog restart

3、配置日誌存儲路徑、格式
在/etc/rsyslog.conf加上如下行

4、配置日誌規則
註釋掉默認規則,將$template Centrallog 應用在這條規則

5、再次重啟rsyslog服務,此時服務端已配置完畢。

B、rsyslog客戶端配置
1、配置傳輸方式:/etc/rsyslog.conf
#UDP的方式:
* . *@remote host:514

#TCP的方式:
*.*@@remote host:514 #remote host 可以是IP或Name

2、重啟rsyslog服務
3、測試並在服務端查看相應的log文件
[root@CentOS ~]logger "hello"
[root@CentOS ~]cat /var/log/central/Centos/root.log #服務端上
Apr 24 23:33:14 CentOS root: hello

Linux日誌管理(一)