一種日志文件自動(dòng)分析方法
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明涉及一種日志文件自動(dòng)分析方法。
[0002]
【背景技術(shù)】
[0003]隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,服務(wù)端程序越來越龐大,也越來越復(fù)雜,一個(gè)應(yīng)用往往會(huì)有很多的服務(wù)在后臺(tái)運(yùn)行,這些后臺(tái)服務(wù)運(yùn)行時(shí)會(huì)產(chǎn)生大量的日志文件(Log)信息,Log通常是一種以文本形式存在的文件,其中記錄了程序運(yùn)行時(shí)所產(chǎn)生的事件信息,這些信息包括:時(shí)間、事件類型、位置和輸出值等,事件類型又包括:嚴(yán)重錯(cuò)誤、一般錯(cuò)誤、警告和提示信息。當(dāng)系統(tǒng)發(fā)生故障時(shí),這些log是分析和定位問題最有效的證據(jù)。
[0004]現(xiàn)在分析log普遍都是靠技術(shù)人員手動(dòng)去分析,通過文本工具的編輯和查找功能來定位出想要的信息。面對大量的log信息,手動(dòng)分析是比較繁瑣的,效率比較低。
[0005]
【發(fā)明內(nèi)容】
[0006]本發(fā)明提供一種日志文件自動(dòng)分析方法,可以對大量日志文件進(jìn)行自動(dòng)分析,提高了分析效率,節(jié)省了人力。
[0007]為了達(dá)到上述目的,本發(fā)明提供一種日志文件自動(dòng)分析方法,包含以下步驟:
步驟S1、編譯日志文件自動(dòng)分析腳本;
步驟S2、日志文件自動(dòng)分析腳本裝載待分析的日志文件;
步驟S3、將需要分析的參數(shù)輸入日志文件自動(dòng)分析腳本并設(shè)置對應(yīng)的參數(shù)閾值;
步驟S4、日志文件自動(dòng)分析腳本根據(jù)輸入的參數(shù),從待分析的日志文件中過濾出匹配信息;
步驟S5、日志文件自動(dòng)分析腳本根據(jù)設(shè)置的參數(shù)閾值,對匹配信息進(jìn)行分析判斷,得到分析結(jié)果。
[0008]所述的待分析的日志文件包含:單個(gè)服務(wù)端的日志文件,或者,多個(gè)服務(wù)端的多個(gè)相關(guān)聯(lián)的日志文件;所述的相關(guān)聯(lián)是指:一個(gè)服務(wù)端產(chǎn)生一個(gè)或多個(gè)事件,會(huì)引起另一個(gè)服務(wù)端產(chǎn)生一個(gè)或多個(gè)事件。
[0009]所述的參數(shù)輸入包含:輸入單個(gè)日志文件的待分析參數(shù)、以及輸入多個(gè)相關(guān)聯(lián)的日志文件的待聯(lián)合分析的參數(shù)。
[0010]所述的單個(gè)日志文件的待分析參數(shù)包含:
嚴(yán)重錯(cuò)誤關(guān)鍵字;
一般錯(cuò)誤關(guān)鍵字;
告警信息;
提不?目息。
[0011]所述的輸入多個(gè)相關(guān)聯(lián)的日志文件的待聯(lián)合分析的參數(shù)包含: 分別輸入每個(gè)日志文件中的所有事件類型和該事件類型對應(yīng)的關(guān)鍵字;
所述的關(guān)鍵字包含:
嚴(yán)重錯(cuò)誤;
一般錯(cuò)誤;
告警信息;
提不?目息。
[0012]所述的設(shè)置對應(yīng)的參數(shù)閾值包含:設(shè)置單個(gè)日志文件的參數(shù)閾值、以及設(shè)置多個(gè)相關(guān)聯(lián)的日志文件的參數(shù)閾值。
[0013]所述的單個(gè)日志文件的參數(shù)閾值包含:告警信息的閾值范圍和提示信息的閾值范圍。
[0014]所述的多個(gè)相關(guān)聯(lián)的日志文件的參數(shù)閾值包含:分別發(fā)生在兩個(gè)服務(wù)端中的兩個(gè)相關(guān)聯(lián)事件的發(fā)生時(shí)間之間的最大時(shí)延值Τ。
[0015]針對單個(gè)日志文件,如果告警信息的輸出值和提示信息的輸出值落入閾值范圍內(nèi),則將告警信息的輸出值和提示信息的輸出值反饋給用戶;
針對多個(gè)相關(guān)聯(lián)的日志文件,如果在最大時(shí)延值T內(nèi)發(fā)生了相關(guān)聯(lián)的兩個(gè)事件,則認(rèn)為正常,如果在最大時(shí)延值T內(nèi)發(fā)生的事件個(gè)數(shù)不對,或者沒有發(fā)生任何事件,則認(rèn)為異常。
[0016]日志文件自動(dòng)分析腳本將分析結(jié)果以文本的形式輸出給用戶。
[0017]本發(fā)明可以對大量日志文件進(jìn)行自動(dòng)分析,提高了分析效率,節(jié)省了人力。
[0018]
【附圖說明】
[0019]圖1是本發(fā)明的流程圖。
[0020]
【具體實(shí)施方式】
[0021]以下根據(jù)圖1具體說明本發(fā)明的較佳實(shí)施例。
[0022]本發(fā)明提出的一種日志文件自動(dòng)分析方法,可以將需要分析的日志文件的信息參數(shù)預(yù)先輸入自動(dòng)分析腳本中,然后自動(dòng)分析腳本開始自動(dòng)分析log文件,最終將用戶需要的分析結(jié)果輸出給用戶。該自動(dòng)分析方法還支持多個(gè)log文件同時(shí)分析,因?yàn)槎喾?wù)端程序同時(shí)運(yùn)行的情況下,它們之間的運(yùn)行往往是互相配合的,多個(gè)服務(wù)端程序之間的事件往往都是聯(lián)系在一起的,一臺(tái)服務(wù)端產(chǎn)生一個(gè)或數(shù)個(gè)事件必然會(huì)使得另一臺(tái)服務(wù)端產(chǎn)生一個(gè)或數(shù)個(gè)事件,比如服務(wù)端I有事件A發(fā)生,服務(wù)端2應(yīng)該會(huì)有事件B發(fā)生,而且發(fā)生的前后時(shí)間也應(yīng)該是有限定的,如果這兩臺(tái)服務(wù)端的事件不是一一對應(yīng)的,缺少了或者增多了,都是異常情況,自動(dòng)分析腳本能同時(shí)分析這些log文件。
[0023]如圖1所示,本發(fā)明提供一種日志文件自動(dòng)分析方法,包含以下步驟:
步驟S1、編譯log文件自動(dòng)分析腳本;本實(shí)施例中,采用Java語言編譯log文件自動(dòng)分析腳本;
步驟S2、log文件自動(dòng)分析腳本裝載待分析的log文件; 所述的待分析的log文件可以包含單個(gè)服務(wù)端的log文件(例如,文件logfile),也可以包含多個(gè)服務(wù)端的多個(gè)相關(guān)聯(lián)的log文件(例如,文件1gfile I和1gfile 2);
步驟S3、log文件自動(dòng)分析腳本判斷待分析的log文件的數(shù)量,如果數(shù)量等于1,進(jìn)行步驟S4,如果數(shù)量大于I,進(jìn)行步驟S5 ;
步驟S4、將單個(gè)log文件的待分析參數(shù)輸入log文件自動(dòng)分析腳本并設(shè)置單個(gè)log文件的參數(shù)閾值,進(jìn)行步驟S6;
所述的單個(gè)log文件的待分析參數(shù)包含:
嚴(yán)重錯(cuò)誤關(guān)鍵字(Ser1us fault);
一般錯(cuò)誤關(guān)鍵字(Common fault);
告警信息(Waring);
提不?目息(Tips);
所述的單個(gè)log文件的參數(shù)閾值包含:告警信息的閾值范圍和提示信息的閾值范圍(例如,將告警信息的閾值范圍和提示信息的閾值范圍都設(shè)置為大于等于20且小于等于30);
步驟S5、將多個(gè)相關(guān)聯(lián)的log文件的待聯(lián)合分析的參數(shù)輸入log文件自動(dòng)分析腳本并設(shè)置多個(gè)相關(guān)聯(lián)的log文件的參數(shù)閾值,進(jìn)行步驟S6 ;
所述的輸入多個(gè)相關(guān)聯(lián)的log文件的待聯(lián)合分析的參數(shù)包含:分別輸入每個(gè)log文件中的所有事件類型和該事件類型對應(yīng)的關(guān)鍵字;
例如:在文件1gfile I中增加事件類型1,事件類型I對應(yīng)的關(guān)鍵字Al,增加事件類型2,事件類型2對應(yīng)的關(guān)鍵字A2,如果有更多以此類推;
在文件1gfile 2中增加事件類型2,事件類型2對應(yīng)的關(guān)鍵字BI,增加事件類型2,事件類型2對應(yīng)的關(guān)鍵字B2,如果有更多也以此類推;
所述的關(guān)鍵字包含:
嚴(yán)重錯(cuò)誤(A Error);
一般錯(cuò)誤(B Error);
告警信息(C Info);
提示信息(D Message);
所述的多個(gè)相關(guān)聯(lián)的log文件的參數(shù)閾值包含:
分別發(fā)生在兩個(gè)服務(wù)端中的兩個(gè)相關(guān)聯(lián)事件的發(fā)生時(shí)間之間的最大時(shí)延值T ;
步驟S6、log文件自動(dòng)分析腳本根據(jù)輸入的參數(shù),從待分析的log文件中過濾出匹配信息;
步驟S7、log文件自動(dòng)分析腳本根據(jù)設(shè)置的參數(shù)閾值,對匹配信息進(jìn)行分析判斷,得到分析結(jié)果;
針對單個(gè)log文件,由于某些告警信息和提示信息往往不是最重要的信息,應(yīng)該將每條告警信息和提示信息的輸出值與閾值范圍進(jìn)行比較,如果告警信息的輸出值和提示信息的輸出值落入閾值范圍內(nèi),則將告警信息的輸出值和提示信息的輸出值反饋給用戶;
針對多個(gè)相關(guān)聯(lián)的log文件,同時(shí)分析兩個(gè)不同的log文件中,不同的事件,如果在最大時(shí)延值T內(nèi)發(fā)生了相關(guān)聯(lián)的兩個(gè)事件,則認(rèn)為正常,如果在最大時(shí)延值T內(nèi)發(fā)生的事件個(gè)數(shù)不對,或者沒有發(fā)生任何事件,則認(rèn)為異常,將結(jié)果反饋給用戶; 步驟S8、log文件自動(dòng)分析腳本將分析結(jié)果以文本的形式輸出給用戶。
[0024]本發(fā)明可以對大量日志文件進(jìn)行自動(dòng)分析,提高了分析效率,節(jié)省了人力。
[0025]盡管本發(fā)明的內(nèi)容已經(jīng)通過上述優(yōu)選實(shí)施例作了詳細(xì)介紹,但應(yīng)當(dāng)認(rèn)識到上述的描述不應(yīng)被認(rèn)為是對本發(fā)明的限制。在本領(lǐng)域技術(shù)人員閱讀了上述內(nèi)容后,對于本發(fā)明的多種修改和替代都將是顯而易見的。因此,本發(fā)明的保護(hù)范圍應(yīng)由所附的權(quán)利要求來限定。
【主權(quán)項(xiàng)】
1.一種日志文件自動(dòng)分析方法,其特征在于,包含以下步驟: 編譯日志文件自動(dòng)分析腳本; 日志文件自動(dòng)分析腳本裝載待分析的日志文件; 將需要分析的參數(shù)輸入日志文件自動(dòng)分析腳本并設(shè)置對應(yīng)的參數(shù)閾值; 日志文件自動(dòng)分析腳本根據(jù)輸入的參數(shù),從待分析的日志文件中過濾出匹配信息; 日志文件自動(dòng)分析腳本根據(jù)設(shè)置的參數(shù)閾值,對匹配信息進(jìn)行分析判斷,得到分析結(jié)果O
2.如權(quán)利要求1所述的日志文件自動(dòng)分析方法,其特征在于,所述的待分析的日志文件包含:單個(gè)服務(wù)端的日志文件,或者,多個(gè)服務(wù)端的多個(gè)相關(guān)聯(lián)的日志文件;所述的相關(guān)聯(lián)是指:一個(gè)服務(wù)端產(chǎn)生一個(gè)或多個(gè)事件,會(huì)引起另一個(gè)服務(wù)端產(chǎn)生一個(gè)或多個(gè)事件。
3.如權(quán)利要求2所述的日志文件自動(dòng)分析方法,其特征在于,所述的參數(shù)輸入包含:輸入單個(gè)日志文件的待分析參數(shù)、以及輸入多個(gè)相關(guān)聯(lián)的日志文件的待聯(lián)合分析的參數(shù)。
4.如權(quán)利要求3所述的日志文件自動(dòng)分析方法,其特征在于,所述的單個(gè)日志文件的待分析參數(shù)包含: 嚴(yán)重錯(cuò)誤關(guān)鍵字; 一般錯(cuò)誤關(guān)鍵字; 告警信息; 提不?目息。
5.如權(quán)利要求3所述的日志文件自動(dòng)分析方法,其特征在于,所述的輸入多個(gè)相關(guān)聯(lián)的日志文件的待聯(lián)合分析的參數(shù)包含:分別輸入每個(gè)日志文件中的所有事件類型和該事件類型對應(yīng)的關(guān)鍵字; 所述的關(guān)鍵字包含: 嚴(yán)重錯(cuò)誤; 一般錯(cuò)誤; 告警信息; 提不?目息。
6.如權(quán)利要求4或5所述的日志文件自動(dòng)分析方法,其特征在于,所述的設(shè)置對應(yīng)的參數(shù)閾值包含:設(shè)置單個(gè)日志文件的參數(shù)閾值、以及設(shè)置多個(gè)相關(guān)聯(lián)的日志文件的參數(shù)閾值。
7.如權(quán)利要求6所述的日志文件自動(dòng)分析方法,其特征在于,所述的單個(gè)日志文件的參數(shù)閾值包含:告警信息的閾值范圍和提示信息的閾值范圍。
8.如權(quán)利要求6所述的日志文件自動(dòng)分析方法,其特征在于,所述的多個(gè)相關(guān)聯(lián)的日志文件的參數(shù)閾值包含:分別發(fā)生在兩個(gè)服務(wù)端中的兩個(gè)相關(guān)聯(lián)事件的發(fā)生時(shí)間之間的最大時(shí)延值T。
9.如權(quán)利要求7或8所述的日志文件自動(dòng)分析方法,其特征在于, 針對單個(gè)日志文件,如果告警信息的輸出值和提示信息的輸出值落入閾值范圍內(nèi),則將告警信息的輸出值和提示信息的輸出值反饋給用戶; 針對多個(gè)相關(guān)聯(lián)的日志文件,如果在最大時(shí)延值T內(nèi)發(fā)生了相關(guān)聯(lián)的兩個(gè)事件,則認(rèn)為正常,如果在最大時(shí)延值T內(nèi)發(fā)生的事件個(gè)數(shù)不對,或者沒有發(fā)生任何事件,則認(rèn)為異常。
10.如權(quán)利要求9所述的日志文件自動(dòng)分析方法,其特征在于,日志文件自動(dòng)分析腳本將分析結(jié)果以文本的形式輸出給用戶。
【專利摘要】一種日志文件自動(dòng)分析方法,首先編譯日志文件自動(dòng)分析腳本,然后日志文件自動(dòng)分析腳本裝載待分析的日志文件,將需要分析的參數(shù)輸入日志文件自動(dòng)分析腳本并設(shè)置對應(yīng)的參數(shù)閾值,接著日志文件自動(dòng)分析腳本根據(jù)輸入的參數(shù),從待分析的日志文件中過濾出匹配信息,再根據(jù)設(shè)置的參數(shù)閾值,對匹配信息進(jìn)行分析判斷,得到分析結(jié)果。本發(fā)明可以對大量日志文件進(jìn)行自動(dòng)分析,提高了分析效率,節(jié)省了人力。
【IPC分類】G06F17-30
【公開號】CN104850666
【申請?zhí)枴緾N201510327645
【發(fā)明人】張偉
【申請人】上海斐訊數(shù)據(jù)通信技術(shù)有限公司
【公開日】2015年8月19日
【申請日】2015年6月15日