windows server eventlog syslog mysql 伺服器 log 日誌

微軟系統日誌集中控管 自建資料庫式Log伺服器

2016-02-23
為了快速找出系統紀錄內的重要資訊,本文將透過Syslog方式把Windows系統上的事件紀錄統一儲存到遠端的rsyslog伺服器,並藉由rsyslog伺服器將相關資訊儲存至MySQL資料庫,以達成中央控管紀錄的目標。
遇到系統問題時,有經驗的系統管理者第一時間都會想到查詢系統上的紀錄(Log)來釐清問題。更希望能有一個機制將主機上的紀錄統一儲存至單一的伺服器,以達到中央控管紀錄的功能,便於在發生系統問題時能更有效地查詢相關資訊。

對此,本文將介紹能夠將Windows系統上的事件紀錄(Event Log)透過Syslog的方式,統一儲存在遠端的Syslog伺服器,並利用Syslog伺服器將相關資訊儲存至MySQL資料庫。

相關的實作架構如圖1所示,所使用的套件則參考表1。


▲圖1 實作相關架構。

表1 實作所採用的套件

什麼是Syslog

Syslog又被稱為系統日誌,是一個可在網際網路協定(TCP/IP)中傳遞紀錄檔訊息的標準,它是一種主從式的架構(Client-Server)。

在實際運用上,客戶端可將系統主機上的紀錄轉換成對應的Syslog資訊,以TCP或UDP通訊協定傳遞(在預設的情況下,Syslog會以明碼的型式傳送)到遠端伺服器端,以完成集中保管紀錄資訊的目的。

基本上,Syslog會將紀錄資訊劃分為Facility(事件種類,主要在區分此紀錄為那一種事件所產生)和Level(嚴重程度,在於說明此事件的嚴重性),如圖2所示。其中常見的事件類型(Facility)如表2所示,而常見的嚴重程度(Level)說明,可參考表3。


▲圖2 Syslog會將紀錄資訊劃分為事件種類和嚴重程度。

表2 Syslog常見的事件類型

表3 Syslog常見的嚴重程度

在簡單說明Syslog事件的種類區分及嚴重性後,接下來講解Syslog所使用的格式,Syslog會將紀錄分成四個部分,如圖3所示,各欄位意義相關說明如下:

(1) 此欄位記錄事件發生的日期與時間
(2) 此欄位記錄產生Log紀錄的主機名稱
(3) 此欄位記錄產生Log紀錄的程式名稱及PID(Process ID)資訊
(4) 此欄位記錄詳細的Log資訊內容


▲圖3 Syslog將紀錄分成四個部分。

在簡單說明Syslog後,接著介紹Windo ws系統上的事件紀錄(Event Log)。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!