2012年8月21日 星期二

LogAnalyzer日誌分析工具安裝設定詳解

LogAnalyzer日誌分析工具安裝設定詳解

上期文章已經在FreeBSD和CentOS作業系統平台上完成LogAnalyzer相關運作環境前置準備作業,本期將接著說明LogAnalyzer的初始化環境安裝流程,以及後續的進階設定調整項目及步驟,例如關閉LogAnalyzer頁面中贊助區塊(Donate)、關閉Message自動彈出視窗功能、LogAnalyzer網頁中文化等等。

在FreeBSD和CentOS上設定好作業系統擔任日誌伺服器的任務,以便收集企業營運環境中相關設備所傳送的Syslog和其他格式日誌,並調整LogAnalyzer的初始化前置作業設定之後,接著便可以針對LogAnalyzer進行初始化環境安裝設定。

初始化安裝LogAnalyzer 

開始LogAnalyzer的初始化環境安裝設定之前,必須先建立「config.php」設定空檔(稍後的環境設定將會寫入此檔中),並且要確定「網頁服務」(例如此實作中的Apache)具有可以寫入此檔案的權限。

否則屆時直接連接LogAnalyzer首頁檔案index.php時,系統會因偵測不到主要設定檔案config.php而顯示錯誤,如圖1所示。


▲圖1 未建立config.php空檔或偵測不到主要設定檔內容而顯示錯誤。

所有條件完備後,就可以著手進行LogAnalyzer初始化設定。輸入主機網址並配合LogAnalyzer安裝檔install.php進行連結即可(例如http://www.weithenn.org/install.php)。

下列初始化環境設定將以安裝於CentOS平台上,及採用最新穩定版本LogAnalyzer v3.2.3進行說明。

如圖2所示,當順利開啟LogAnalyzer初始化安裝頁面之後,便可以看到目前LogAnalyzer初始化的第一個步驟:安裝前的環境檢查。按下〔Next〕按鈕之後,便可以繼續下一個初始化設定。


▲圖2 LogAnalyzer安裝前環境檢查。

主要設定檔權限確認 

接著,步驟二為確定LogAnalyzer初始化程序(也就是網頁服務),是否對主要設定檔config.php具有寫入的權限,如圖3所示。


▲圖3 主要設定檔config.php權限檢查。

在此,設定檔案欄位顯示為綠色「Writeable」,表示LogAnalyzer初始化程序可以順利將稍後的環境設定寫入此檔案中。

若無法寫入,則欄位將顯示為紅色「NOT Writeable」,並且無法按下〔Next〕按鈕(該按鈕文字將變為ReCheck)。確認無誤之後按下〔Next〕按鈕,繼續下一個初始化設定。

分析頁面基礎設定值 

此步驟為屆時LogAnalyzer的基礎設定,例如分析頁面中每一頁顯示幾筆日誌訊息等等。日後,若需要調整此頁面的設定值,也可以進行修改,這將於稍後的進階設定中進行詳細說明。

以下為此頁面之中每項欄位功能的詳細說明,如圖4所示:


▲圖4 設定屆時LogAnalyzer分析頁面基礎設定值。

·Number of syslog messages pre page:設定每一頁顯示幾筆日誌資訊。
·Message character limit for the main view:設定主頁面訊息顯示字數。
·Character display limit for all string type fields:設定每一種日誌欄位的顯示字數。
·Show message details popup:滑鼠移動到日誌資訊時,是否自動跳出詳細內容視窗。
·Automatically resolved IP Address (inline):是否將日誌內容中的FQDN自動反解析為IP位址。
·Enable User Database:是否啟用使用者資料庫機制,若選擇Yes,將顯示下列連接至資料庫資訊的相關欄位,相關欄位包括Database Host(輸入資料庫主機名稱或IP位址,例如localhost)、Database Port(輸入資料庫主機的服務Port號,例如3306)、Database Name(輸入LogAnalyzer使用的資料庫名稱,例如loganalyzer)、Table Prefix(輸入LogAnalyzer的表格名稱,例如logcon_)、Database User(輸入可管理LogAnalyzer資料庫的使用者帳號名稱,例如weithenn)、Database Password(輸入可管理LogAnalyzer資料庫的使用者密碼,例如123456)。


由於此次實作內容是以中小企業角度來看,所以希望架設環境儘量簡單易用,並且能快速建置LogAnalyzer日誌分析網頁查詢系統。

也因為將採用讀取設備Syslog檔案的型式,同時不需要整合使用者帳號功能進行實作,因此在此步驟中並未啟用整合資料庫相關功能。確認無誤後,按下〔Next〕按鈕。

建立第一筆分析記錄 

由於未進行資料庫設定,因此設定初始化流程直接跳到步驟七,也就是建立LogAnalyzer分析頁面中「第一筆來源記錄」。

往後在收集多台設備的日誌資訊時可能必須擴充,這在後續進階設定時將會一併說明如何擴充分析設備的數量。

以下為此頁面中每一項欄位功能說明,如圖5所示:

·Name of the Source:填入顯示於Select Source項目的文字,請輸入容易識別管理的文字,例如Juniper SSG20 Syslog。
·Source Type:設定讀取日誌檔案的來源,例如Diskfile,其分析日誌資訊的來源為系統檔案。
·Select View:設定顯示此日誌檔案時應該套用哪種欄位,例如採用Syslog格式欄位。
·Logline type:設定讀取日誌檔案的類型,例如傳入的日誌資訊為Syslog格式。
·Syslog file:設定讀取日誌檔案的路徑,例如前一篇文章所設定的「/home/log/ssg20.log」檔案路徑。


▲圖5 建立第一筆分析記錄。

同樣的機制請確保LogAnalyzer程序可以讀取設定的「/home/log/ssg20.log」檔案,也就是網頁服務可以讀取此檔案。

否則按下〔Next〕按鈕時將會出現錯誤訊息,系統表示無法讀取分析檔案因而失敗,並且無法繼續。確認無誤後按下〔Next〕按鈕,準備完成基礎環境設定。

初始化設定完成 

至此,LogAnalyzer初始化環境設定已經完成,請按下〔Finish〕按鈕(圖6),進入LogAnalyzer分析頁面的首頁(index.php),如圖7所示。


▲圖6 完成LogAnalyzer初始化環境設定。


▲圖7 LogAnalyzer日誌分析預設主頁面。

修改LogAnalyzer進階設定 

完成初始化LogAnalyzer環境設定之後,建議刪除初始化安裝檔install.php,或者設定該檔案權限為「唯讀」(依個人喜好擇一即可),以免有人再次連結到初始化安裝檔案重新進行設定,藉此破壞原本的環境設定。


▲刪除LogAnalyzer初始化安裝檔。

接著便可進行LogAnalyzer進階客製化設定,讓LogAnalyzer更符合需求,像是為自身企業所打造一樣。

關閉分析頁面中贊助資訊 

在LogAnalyzer分析頁面中,基本上不管切換到哪一頁,都會看到分析頁面最上方有一個贊助LogAnalyzer計畫的捐獻(Donate)按鈕,如圖8所示。


▲圖8 修改前,分析頁面最上方總有贊助LogAnalyzer計畫捐獻資訊。

若覺得這個贊助資訊有點礙眼,可以透過修改LogAnalyzer函數設定檔(functions_common.php)來關閉。


▲關閉贊助LogAnalyzer計畫資訊。

當然,若覺得LogAnalyzer日誌分析軟體套件對自己有些許幫助,不妨考慮贊助LogAnalyzer計畫使此軟體套件的開發者更有心力繼續下去,讓LogAnalyzer運作得更好。

在如下所示範的操作當中,將LogAnalyzer函數設定檔functions_common.php內容中的SHOW_DONATEBUTTON參數值由true修改為false,即可關閉分析頁面內贊助LogAnalyzer計畫捐獻資訊(圖9)。


▲圖9 修改後,贊助LogAnalyzer計畫捐獻資訊消失。


更換分析頁面首頁圖示(Logo) 

除了以上的設定修改外,也可以在LogAnalyzer分析頁面中,將預設的LogAnalyzer首頁圖示更換為自己的Logo。

首先,將公司或個人的Logo存放至「images/main」路徑中,例如本文實作中的「/home/web/images/main」路徑下。

接著,便可以著手修改LogAnalyzer函數設定檔 「functions_common.php」內容之中EXTRA_PHPLOGCON_LOGO的參數值,實際修改內容如下所示。


▲更改LogAnalyzer分析頁面中的Logo圖示。

將預設的Logo圖檔名稱Header-Logo.png,更改為自身的Logo圖檔名稱,例如Weithenn-Logo.png,即可更換LogAnalyzer預設的Logo(圖10∼11)。


▲圖10 修改前,為LogAnalyzer預設Logo。


▲圖11 修改後,取代為個人化的Logo。

關閉分析頁面中視窗彈出功能(Detail Popups) 

在LogAnalyzer初始化環境設定步驟三時,若當時「Show message details popup」選項選擇「Yes」,則在LogAnalyzer分析頁面內,只要滑鼠移動到日誌資訊(Message欄位)中任何一筆記錄,頁面便會立即彈出視窗,顯示該日誌的詳細內容,如圖12所示。若覺得這樣的彈出功能會造成困擾,可以將其關閉。


▲圖12 LogAnalyzer日誌資訊自動彈出視窗功能。

關閉自動彈出視窗功能後,若想查看該筆日誌資訊的詳細內容時,只要點選該日誌資訊即可。

下列操作為修改LogAnalyzer主要設定檔config.php內容,將自動彈出視窗功能ViewEnableDetailPopups參數值,由預設的「啟用(1,Enable)」修改為「禁用(0,Disable)」。


▲關閉LogAnalyzer分析頁面自動彈出視窗功能。

調整分析頁面筆數及字數截斷功能(Character Limit) 

在LogAnalyzer初始化環境設定步驟三時,便是設定分析頁面中每頁顯示的日誌資訊筆數,以及各項欄位顯示字數。若對當時的設定不滿意,例如預設值設定數值太小,造成日誌資訊常常被截斷,需要一筆一筆點進去看,只要透過修改LogAnalyzer主要設定檔config.php進行調整即可。

當時,初始化環境設定選項及主要設定檔config.php中,相對應的參數值及功能說明,如最下表所示。



下列操作為在主要設定檔中將分析頁面的筆數重新調整為每頁僅顯示「10筆」日誌記錄,而Message欄位中的日誌資訊只要超過「20個字」,在分析頁面當中便會將後面的字截斷,必須點擊該日誌查看詳細資訊,才可以看到所有的日誌內容,至於其他欄位,只要超過「5個字」便會截斷後面的字(圖13)。


▲調整分析頁面顯示日誌資訊筆數,以及字數限制設定值。


▲圖13 修改後的LogAnalyzer分析頁面。

調整分析日誌欄位(Select View) 

LogAnalyzer在預設情況下僅支援Syslog、EventLog、Webserver三種類型的日誌欄位顯示,若想要自行定義顯示欄位也可以進行修改。

例如建立一個名稱為Mylog的日誌名稱,並且只顯示日期(Date)、主機名稱(Host)、日誌類型(Syslogtag)、日誌種類(MessageType)、日誌資訊(Message)等五個欄位。


下列的操作步驟為修改主要設定檔內容。首先,將ShowMessage參數的開頭註解符號「//」拿掉,接著,在顯示欄位參數Columns中定義所需要的欄位值。


▲調整日析分析顯示欄位。

修改顯示欄位後,Select View下拉式選單中,其預設顯示的文字為「Legacy columns configuration」。

可以透過修改函數設定檔內容的方式,將其修改成為本例中所要顯示的名稱「Mylog」,如圖14所示。


▲調整自訂欄位於Select View下拉選單中的顯示文字。


▲圖14 自訂日誌顯示欄位。

新增設備時擴充分析來源(Select Source) 

如本文實作所述,架設的FreeBSD和CentOS作業系統平台,已經成功啟動並擔任日誌伺服器的角色,負責收集所有設備的日誌檔案,而目前卻只有顯示一台設備SSG20的日誌內容。

那麼應該如何為收集後的每個設備日誌檔案,建立一個專屬的日誌頁面?

首先,須確定該設備已啟動Log Client的Syslog功能,並且FreeBSD和CentOS平台也能夠順利接收日誌,並寫入至相對應的檔案中。

接著,修改LogAnalyzer主要設定檔,在設定檔的最底部便是擴充日誌項目的設定,每個日誌項目共有六項欄位說明如下:

ID:分析日誌中的ID此數值不可以重複,例如Source2。
Name:屆時Select Source下拉選單中所顯示的設備名稱,例如Core-Switch。
ViewID:分析此日誌所使用的日誌類型,例如SYSLOG。
SourceType:分析日誌檔案的來源為何,譬如SOURCE_DISK從硬碟中讀取。
LogLineType:採用指定的日誌欄位進行資訊顯示,例如syslog。
DiskFile:指定日誌檔案的存放路徑,例如「/home/log/core-switch.log」。

下列操作為修改LogAnalyzer主要設定檔內容,加入三筆網路交換器日誌資訊項目,分別是Core-Switch、Edge-Switch01和Edge-Switch02,相關修改內容資訊如下,最後結果則如圖15所示。


▲預設第一筆分析資訊,及新加入第二筆分析資訊Core-Switch。


▲新加入第三、四筆分析資訊Edge-Switch01、Edge-Switch02。


▲圖15 增加三筆網路交換器的日誌分析資訊。

分析頁面中文化(Select Language) 

目前LogAnalyzer分析頁面的語系,預設僅支援四國語系,這四國語系分別是德語(Deutsch)、英語(English)、義大利語(Italiano)和葡萄牙語(Portugus)。

如果想要將LogAnalyzer頁面自行翻譯成正體中文(Traditional_Chinese),也可以辦得到。如圖16所示,只要注意下列相關的事項以及設定就能夠達成。

1. 修改主要設定檔config.php中ViewDefault Language參數內容,指定成個人自訂的語系即可,例如tw。
2. 修改主要設定檔config.php中InjectHtmlHeader參數內容,指定網頁預設採用「UTF-8」萬國語言編碼方式,否則屆時顯示的正體中文將會變成亂碼,因為預設網頁編碼方式為ISO-8859-1。
3. 將原本英文語系檔案進行複製以後,就可以進行介面中文化翻譯內容的修改動作(admin.php、main.php)。
4. 修改語系檔案中info.txt內容,例如由English修改為Traditional_Chinese,則Select Language下拉選擇便會顯示該文字。


▲將LogAnalyzer分析頁面進行語系翻譯設定。


▲圖16 LogAnalyzer分析頁面語系本地化(正體中文)。

結語

新版個資法案施行在即,對於IT預算本來就不高的中小企業來說無疑是一項挑戰,此時不妨嘗試架設一台日誌伺服器(Log Server),並且配合LogAnalyzer這套網頁呈現方式的Log分析軟體,來達成平時的日誌檔案收集及保存備份,日後若需要查詢時,便可立即提供。

如此低成本建置費用和該有的功能性,以及可自行客製化的彈性,將不失為中小企業的解決方案之一。

轉載自《網管人》



沒有留言:

張貼留言