對日志消息內(nèi)容的面向語義分析的制作方法
【專利說明】對曰志消息內(nèi)容的面向語義分析
【背景技術(shù)】
[0001] 設(shè)備、服務(wù)器、應(yīng)用和其它計(jì)算機(jī)系統(tǒng)將系統(tǒng)、安全、應(yīng)用和其它信息記入日志。必 須分析在運(yùn)些日志中的消息W將原始數(shù)據(jù)變成可行動智能(actionable intelligence)。 不幸地,日志消息不總是良好指定的(即,采用形式語法),并且日志分析系統(tǒng)必須從示例數(shù) 據(jù)反向工程模式?,F(xiàn)存的日志消息語法分析器(parser)要求整個日志消息要遵從由正則表 達(dá)式規(guī)定的指定模式W使得日志消息能夠被語法分析(parse)。給定了日志消息和其類型, 語法分析器對照適當(dāng)?shù)恼齽t表達(dá)式運(yùn)行消息并提取感興趣的元素。然而,為了利用語法分 析器,語法分析器必須具有整個消息結(jié)構(gòu)和用于整個消息的正則表達(dá)式的先驗(yàn)知識。日志 消息實(shí)質(zhì)上不像編程語言那樣被嚴(yán)格地構(gòu)成,而是代替地是被預(yù)定用于人類消費(fèi)的簡單構(gòu) 成的片段的寬松混合(amalgams)。即使采用正則表達(dá)式語法分析整個消息,由于在日志消 息格式中的輕微變化正則表達(dá)式易受失敗。因此,存在用于W更好的方式分析日志消息的 需要。
【附圖說明】
[0002] 在W下詳細(xì)描述和附圖中公開本發(fā)明的各種實(shí)施例。
[0003] 圖1是圖解用于處理日志消息的系統(tǒng)的實(shí)施例的框圖。
[0004] 圖2是圖解用于處理日志消息部分處理規(guī)則的過程的實(shí)施例的流程圖。
[0005] 圖3A示出了具有=個規(guī)則的值后(value-after )消息處理辨認(rèn)器的示例。
[0006] 圖3B示出了具有S個規(guī)則的直接消息處理辨認(rèn)器的示例。
[0007] 圖4是圖解用于處理日志消息的過程的實(shí)施例的流程圖。
[000引圖5是圖解用于使用值后辨認(rèn)器/規(guī)則處理日志消息部分的過程的實(shí)施例的流程 圖。
[0009] 圖6是圖解用于對規(guī)則處理的結(jié)果進(jìn)行后期處理的過程的實(shí)施例的流程圖。
[0010] 圖7A是具有重疊識別的關(guān)鍵字和值的示例日志消息。
[0011] 圖7B是具有重疊修飾語辨認(rèn)器的識別關(guān)鍵字和值的示例日志消息。
[0012] 圖8是圖解用于使用直接辨認(rèn)器/規(guī)則處理日志消息部分的過程的實(shí)施例的流程 圖。
【具體實(shí)施方式】
[0013] 本發(fā)明可W W眾多方式被實(shí)現(xiàn),包括被實(shí)現(xiàn)為過程;裝置;系統(tǒng);物質(zhì)的組成;體現(xiàn) 在計(jì)算機(jī)可讀存儲媒體上的計(jì)算機(jī)程序產(chǎn)品;和/或處理器,諸如被配置成執(zhí)行存儲在被禪 合到該處理器的存儲器上和/或由其提供的指令的處理器。在該說明書中,運(yùn)些實(shí)現(xiàn)、或者 本發(fā)明可能采取的任何其它形式可W被稱為技術(shù)。一般而言,所公開過程的步驟順序可W 在本發(fā)明的范圍內(nèi)被更改。除非W其它方式聲明,可W將諸如處理器或存儲器的被描述為 被配置成執(zhí)行任務(wù)的組件實(shí)現(xiàn)為在給定的時(shí)間臨時(shí)地被配置成執(zhí)行該任務(wù)的通用組件或 是被制造用于執(zhí)行該任務(wù)的指定組件。如在本文中使用的那樣,術(shù)語"處理器"指的是被配 置成處理諸如計(jì)算機(jī)程序指令的數(shù)據(jù)的一個或多個設(shè)備、電路和/或處理核。
[0014] 在下面與圖解本發(fā)明原理的附圖一起提供了本發(fā)明的一個或多個實(shí)施例的詳細(xì) 描述。關(guān)于運(yùn)樣的實(shí)施例描述本發(fā)明,但是本發(fā)明不被限于任何實(shí)施例。僅通過權(quán)利要求限 制本發(fā)明的范圍并且本發(fā)明包括眾多替換、修改和等價(jià)。在W下描述中陳述眾多指定細(xì)節(jié) W便提供對本發(fā)明的透徹理解。出于示例的目的提供運(yùn)些細(xì)節(jié)并且可W在沒有運(yùn)些指定細(xì) 節(jié)中的一些或所有的情況下根據(jù)權(quán)利要求實(shí)踐本發(fā)明。出于清楚的目的,沒有詳細(xì)描述本 發(fā)明設(shè)及的技術(shù)領(lǐng)域中已知的技術(shù)材料W便本發(fā)明沒有不必要地被模糊。
[0015] 公開了處理日志消息。在一些實(shí)施例中,日志消息的一個或多個部分被識別W被 分離地提取。例如,代替利用一個正則表達(dá)式W語法分析整個日志消息,日志消息的一個或 多個部分使用一個或多個不同的正則表達(dá)式被識別W被提取。在一些實(shí)施例中,識別所述 部分包括捜索在日志消息內(nèi)的關(guān)鍵字,其指示使用與該關(guān)鍵字相關(guān)聯(lián)的提取規(guī)則要被分離 地提取的部分。使用與對應(yīng)識別部分相關(guān)聯(lián)的提取規(guī)則從每個識別部分提取值。例如,提取 規(guī)則的正則表達(dá)式被用于從識別部分(例如,從位于識別部分的對應(yīng)匹配關(guān)鍵字之后的日 志消息內(nèi)容)提取匹配值。
[0016] 圖1是圖解用于處理日志消息的系統(tǒng)的實(shí)施例的框圖。日志源102包括一個或多個 系統(tǒng)、設(shè)備、軟件組件、硬件組件、儲存器、存儲器和/或提供日志消息的任何其它源。例如, 日志源102包括存儲日志消息的儲存器。日志消息的示例包括系統(tǒng)日志消息、網(wǎng)絡(luò)日志消 息、安全日志消息、儲存日志消息、操作系統(tǒng)日志消息和應(yīng)用日志消息。日志收集器104從日 志源102獲得一個或多個日志消息。日志收集器104可W從日志源102獲得一個或多個文件、 流式日志和/或過程的輸出W獲得一個或多個日志消息。日志收集器104可W是網(wǎng)絡(luò)節(jié)點(diǎn)、 網(wǎng)絡(luò)器具、過程、系統(tǒng)、設(shè)備和/或日志源102的系統(tǒng)的插件/模塊。在一些實(shí)施例中,日志收 集器104周期性地從日志源102獲得一個或多個日志消息。例如,日志收集器104在預(yù)確定的 周期間隔上檢查新的日志消息。在一些實(shí)施例中,日志收集器104動態(tài)地從日志源102獲得 一個或多個日志消息。例如,當(dāng)生成日志消息時(shí)向日志收集器104提供日志消息。
[0017] 由日志收集器104獲得的一個或多個日志消息被存儲在日志高速緩沖存儲器106 中。例如,日志高速緩沖存儲器106存儲要被處理/語法分析的日志消息。在一些實(shí)施例中, 日志高速緩沖存儲器106被包括日志收集器104的設(shè)備。在一些實(shí)施例中,日志高速緩沖存 儲器106被包括為日志處理器108的設(shè)備。在一些實(shí)施例中,日志高速緩沖存儲器106被包括 在網(wǎng)絡(luò)儲存設(shè)備中。日志處理器108從日志高速緩沖存儲器106獲得日志用于處理。在替換 實(shí)施例中,不利用日志高速緩沖存儲器106并且將由日志收集器104獲得的一個或多個日志 直接地提供到日志處理器108。日志處理器108使用一個或多個處理規(guī)則處理每個獲得的日 志消息。例如,日志消息的一個或多個部分被識別W被分離地提取并且使用對應(yīng)的正則表 達(dá)式提取每個識別部分W從日志消息部分中提取所期望的數(shù)據(jù)??蒞執(zhí)行附加處理W解決 沖突和/或執(zhí)行與識別部分的所提取的數(shù)據(jù)相關(guān)聯(lián)的聚集(aggregation)。將日志處理器 108的結(jié)果存儲在日志數(shù)據(jù)庫110中。例如,將從日志消息的識別部分中提取的數(shù)據(jù)存儲在 日志數(shù)據(jù)庫110中。在一些實(shí)施例中,一個或多個其它組件利用日志數(shù)據(jù)庫110的內(nèi)容來提 供警報(bào)、分析日志消息趨勢、捜索日志消息內(nèi)容、和/或執(zhí)行與所構(gòu)成的日志消息內(nèi)容相關(guān) 聯(lián)的任何其它處理。例如,索引器索引日志數(shù)據(jù)庫110的內(nèi)容W使得能夠進(jìn)一步分析日志消 息內(nèi)容。
[0018] 可W在一個或多個計(jì)算機(jī)、服務(wù)器、儲存設(shè)備、聯(lián)網(wǎng)組件、和/或虛擬組件/網(wǎng)絡(luò)中 實(shí)現(xiàn)在圖1中示出的組件。例如,在圖1中示出的任何數(shù)目的組件可W被包括在相同的設(shè)備 中。在組件之間的連接可W包括W下中的一個或多個:直接或非直接物理通信連接、移動通 信網(wǎng)絡(luò)、互聯(lián)網(wǎng)、內(nèi)聯(lián)網(wǎng)、局域網(wǎng)、廣域網(wǎng)、存儲域網(wǎng)、W及將兩個或更多系統(tǒng)、組件或儲存設(shè) 備連接在一起的任何其它形式??蒞存在其它通信路徑并且簡化了圖1中的示例W清楚地 圖解示例。雖然示出了組件的單個實(shí)例W簡化圖表,但是可W存在在圖1中示出的組件中的 任意的附加實(shí)例。例如,可W存在在圖1中示出的任何組件的其它實(shí)例。也可W存在在圖1中 未示出的組件。
[0019] 圖2是圖解用于處理日志消息部分處理規(guī)則的過程的實(shí)施例的流程圖??蒞在圖1 的日志處理器108上實(shí)現(xiàn)圖2的過程。
[0020] 在202,接收一個或多個日志消息部分處理規(guī)則。在一些實(shí)施例中,從編碼應(yīng)如何 處理日志消息部分的用戶/管理員接收規(guī)則。在一些實(shí)施例中,可W將一個或多個處理規(guī)則 指定到一起作為辨認(rèn)器。例如,辨認(rèn)器包括頭部和一個或多個規(guī)則的規(guī)范,所述頭部指定被 包括在辨認(rèn)器中的一個或多個規(guī)則的共同配置元素。在一些實(shí)施例中,接收一個或多個日 志消息部分處理規(guī)則包括接收一個或多個遵從規(guī)則/辨認(rèn)器的編程代碼。在一些實(shí)施例中, 接收一個或多個日志消息部分處理規(guī)則包括接收一個或多個文件,并且每個文件可W包括 辨認(rèn)器和/或一個或多個處理規(guī)則??蒞接收各種類型的消