◆柴宇萌
Apache日志分析器設計
◆柴宇萌
(天津市濱海新區(qū)中醫(yī)醫(yī)院 天津 300451)
Apache服務器存儲著來自不同Web站點的日志記錄,服務器托管商需要將不同客戶的日志記錄從原始日志記錄中挑選出來放在一起供客戶查看,以供客戶驗證商戶對客戶Web站點流量的統(tǒng)計是否正確。Apache日志分析器不僅可以節(jié)省開支,也可以提高服務器的利用率,增加服務器托管商的業(yè)務收入。本文介紹了Apache日志分析器的設計,以供參考。
apache服務器;Web站點;流量
現(xiàn)在各個大Web站點都是在IDC機房托管的,服務器托管商大都通過Apache Web服務器向外提供Http服務。不同的Web站點一般都使用一個Apache服務器,這樣就導致不同Web站點的日志都記錄在了一起,因為服務器托管商需要給客戶提供原始日志,以供客戶驗證商戶對客戶Web站點流量的統(tǒng)計是正確的(注:服務器托管商是按客戶站點的流量和帶寬收費的)。[1]
基于這兩種需求(一是服務器托管商需向客戶提供原始日志,二是不同的客戶間不能看到其他客戶的日志記錄,這些信息是客戶要求保密的),服務器托管商需要將不同客戶的日志記錄從原始日志記錄中挑選出來放在一起供客戶查看,因此服務器托管商決定開發(fā)這樣的程序來分析分類這些原始日志文件。有了這樣一個日志分析器,服務器托管商就可以將多個站點放在同一臺服務器上,這樣不僅可以節(jié)省開支也可以提高服務器的利用率,增加服務器托管商的業(yè)務收入。
很多臺服務器每5分鐘就生成一個日志文件并推送到一臺存儲服務器上,日志文件數(shù)量相當?shù)亩啵詴褂枚嗑€程去掃描不同的文件目錄,并加以分析,然后將相同客戶的原始日志放在一起供客戶下載使用。在程序啟動的時候按著物理內存的大小和估計日志文件大小給Java虛擬機分配合理的內存。[2]根據(jù)物理Cpu的核心數(shù)或者Cpu數(shù)來確定使用幾個線程來執(zhí)行。
一個日志系統(tǒng)根據(jù)它的過程,可以分為日志來源、日志輸出、日志存儲。根據(jù)這個過程,我們可以將整個系統(tǒng)分為3個模塊,并加以抽象,如圖1所示。
圖1 日志分析的總圖
本系統(tǒng)的開發(fā)環(huán)境:Eclipse、Jdk1.5+、Windows XP。
運行環(huán)境:Windows XP/7、Vista等。
Apache日志分析器數(shù)據(jù)源如圖2。
圖2 Apache日志分析器數(shù)據(jù)源
打開文本文件,如圖3。
圖3 文本文件
運行Apache日志分析器,如圖4。
圖4 Apache運行日志分析器
服務器是根據(jù)不同客戶的名稱來分析日志文件的,分析之后將相同客戶的原始日志放到同一個以客戶名命名的文件里,圖5中的原始日志的客戶分別有:baidu,dongzhi,lenovo,liaogongda,td,zhongri。打開每一個文件夾,都是本客戶所需的分析后的日志文件。
圖5 日志存儲
其中l(wèi)enovo客戶所得到的分析后的日志,如圖6。以lenovo為例,打開日志分析器分析完畢后生成的lenovo文件夾,文件夾中存儲的即是lenovo客戶所需的自己的日志文件,其中包括原始日志生成的日期、時間、訪問lenovo客戶的用戶的URL,以及用戶訪問lenovo客戶的具體URL。
圖6 關于lenovo客戶的日志
這個“基于Java的Apache日志分析器”初步地能夠滿足這兩種需求(一是服務器托管商需向客戶提供原始日志,二是不同的客戶間不能看到其他可以的日志記錄這些信息是客戶要求保密的)。有了這樣的一個日志分析器,服務器托管商就可以將多個站點放在同一臺服務器上,服務器托管商能夠將不同客戶的日志記錄從原始日志記錄中挑選出來放在一起供客戶查看,這樣不僅可以節(jié)省開支也可以提高服務器的利用率,增加服務器托管商的業(yè)務收入。
在本次設計中,筆者沒有考慮全系統(tǒng)日志安全的問題,如一些黑客會通過提高權限來清除日志,沒有提出系統(tǒng)安全的保護措施、防范手段及設想。系統(tǒng)日志分析器能夠將大量的系統(tǒng)日志信息經(jīng)過提取并處理得到能夠讓管理員識別的可疑行為記錄,然后日志分析器可以擴展成為一個計算機監(jiān)控系統(tǒng)并且能實時地對可疑行為進行動態(tài)的響應。為了保證日志分析器的正常判斷,系統(tǒng)日志的安全就顯得異常重要,這就需要從各方面去保證日志的安全性。為了彌補這些安全缺陷,本設計還需要進一步研究和進一步實踐來解決。
[1]萬欣隴.信息管理系統(tǒng)日志分析系統(tǒng)的設計與實現(xiàn)[D].山東大學,2017.
[2]竇繼濤,代飛.基于大數(shù)據(jù)環(huán)境下智能日志分析平臺運維方案研究[J].九江職業(yè)技術學院學報,2017.