一種日志審計的裝置、系統(tǒng)和方法
【專利摘要】本發(fā)明提供了一種日志審計的裝置、系統(tǒng)和方法,該日志審計的裝置與外設的至少兩個設備相連,通過收集單元中的每一個收集進程,當空閑時,接收外設的至少兩個設備發(fā)送的日志文件;通過歸一化單元中的每一個歸一化進程確定歸一化規(guī)則,當空閑時,解析日志文件屬性,根據(jù)歸一化規(guī)則和所述日志文件屬性,確定日志文件的關聯(lián)屬性;通過日志關聯(lián)單元中的每一個關聯(lián)進程,確定關聯(lián)規(guī)則和告警規(guī)則,當接收到關聯(lián)屬性時,根據(jù)關聯(lián)規(guī)則,進行日志關聯(lián),當日志關聯(lián)滿足所述告警規(guī)則時,觸發(fā)告警單元;通過告警單元進行日志審計告警。本發(fā)明提供的方案實現(xiàn)了日志審計進程負載均衡。
【專利說明】
一種日志審計的裝置、系統(tǒng)和方法
技術領域
[0001 ]本發(fā)明涉及計算機技術領域,特別涉及一種日志審計的裝置、系統(tǒng)和方法。
【背景技術】
[0002]網(wǎng)絡設備、服務器、應用服務等通用計算機軟硬件以及各種特定業(yè)務系統(tǒng)在運行過程中會產(chǎn)生大量日志信息,而日志信息能夠反應出計算機軟硬件以及業(yè)務系統(tǒng)等的運行狀態(tài),而對日志進行審計是了解運行狀態(tài)的重要手段之一。
[0003]目前,日志審計的主要方式是,為每個待監(jiān)測的設備分配收集進程以及多個處理進程以對該設備進行日志審計,例如:為設備I分配收集進程1、處理進程I及處理進程2,設備2分配收集進程2、處理進程3及處理進程4,那么,當設備I沒有日志審計,而設備2有較多的日志需要審計的時候,該收集進程1、處理進程I及處理進程2將空閑狀態(tài),而收集進程2、處理進程3及處理進程4處于滿負載狀態(tài),造成日志審計進程負載不均衡。
【發(fā)明內容】
[0004]本發(fā)明實施例提供了一種日志審計的裝置、系統(tǒng)和方法,實現(xiàn)了日志審計進程負載均衡。
[0005]—種日志審計的裝置,與外設的至少兩個設備相連,包括:收集單元、歸一化單元、日志關聯(lián)單元及告警單元,其中,
[0006]所述收集單元,包括:至少一個收集進程,每一個收集進程,用于當空閑時,接收外設的至少兩個設備發(fā)送的日志文件,并將所述日志文件發(fā)送給所述歸一化單元;
[0007]所述歸一化單元,包括:至少兩個歸一化進程,每一個歸一化進程,用于確定歸一化規(guī)則,當空閑時,接收所述收集單元發(fā)送的所述日志文件,解析所述日志文件屬性,根據(jù)所述歸一化規(guī)則和所述日志文件屬性,確定所述日志文件的關聯(lián)屬性,將所述關聯(lián)屬性發(fā)送給所述日志關聯(lián)單元;
[0008]所述日志關聯(lián)單元,包括:至少兩個關聯(lián)進程,每一個關聯(lián)進程,用于確定關聯(lián)規(guī)則和告警規(guī)則,當接收到所述關聯(lián)屬性時,根據(jù)所述關聯(lián)規(guī)則,進行日志關聯(lián),當所述日志關聯(lián)滿足所述告警規(guī)則時,觸發(fā)所述告警單元;
[0009]所述告警單元,用于在接收到觸發(fā)時,進行日志審計告警。
[0010]優(yōu)選地,上述日志審計的裝置,進一步包括:規(guī)則引擎,其中,
[0011 ]所述規(guī)則引擎,用于接收至少一種歸一化規(guī)則和至少一種關聯(lián)規(guī)則,并為每一種關聯(lián)規(guī)則設置對應的RuleID;
[0012]所述歸一化單元中,每一個歸一化進程,用于加載所述規(guī)則引擎,根據(jù)所述歸一化規(guī)則,為日志文件分配對應的任務對象,并為任務對象配置關聯(lián)屬性,并根據(jù)所述關聯(lián)規(guī)貝Ij,為所述任務對象確定對應的RuleID,并根據(jù)RuleID,將所述任務對象和關聯(lián)屬性發(fā)送給所述日志關聯(lián)單元中的目標關聯(lián)進程;
[0013]所述日志關聯(lián)單元中,每一個關聯(lián)進程,當作為目標關聯(lián)進程時,用于接收所述歸一化單元發(fā)送的任務對象和關聯(lián)屬性,根據(jù)所述關聯(lián)屬性,設置任務對象,對所述任務對象進行加I操作。
[0014]優(yōu)選地,上述日志審計的裝置,進一步包括:緩存區(qū)域和數(shù)據(jù)庫,其中,
[0015]所述緩存區(qū)域,用于設置時間閾值,緩存所述歸一化單元配置的任務對象,并當緩存對象達到所述時間閾值時,將緩存的任務對象存儲到所述數(shù)據(jù)庫,并刪除緩存的任務對象;
[0016]所述日志關聯(lián)單元中,每一個關聯(lián)進程,當作為目標關聯(lián)進程時,進一步用于根據(jù)所述關聯(lián)屬性,在所述緩存區(qū)域查找對應的任務對象,如果查找到所述任務對象,則對所述任務對象進行加I操作,否則,在所述數(shù)據(jù)庫中查找任務對象,如果在所述數(shù)據(jù)庫中查找到任務對象,則對所述任務對象進行加I操作,否則,增加新的任務對象給所述緩存區(qū)域。
[0017]優(yōu)選地,上述日志審計的裝置,進一步包括:設置單元,其中,
[0018]所述設置單元,用于為所述歸一化單元中的每一個收集進程和所述日志關聯(lián)單元中的每一個關聯(lián)進程設置處理類及關聯(lián)關系;
[0019]所述歸一化單元中,每一個收集進程間,用于根據(jù)所述設置單元設置的處理類,對接收到的日志文件進行歸一化處理;
[0020]所述日志關聯(lián)單元中,每一個關聯(lián)進程,用于根據(jù)所述設置單元設置的處理類,對接收到的日志文件進行日志關聯(lián);
[0021 ]所述每一個收集進程之間、每一個關聯(lián)進程之間及每一個收集進程與每一個關聯(lián)進程之間,根據(jù)所述關聯(lián)關系,進行數(shù)據(jù)交互。
[0022]優(yōu)選地,上述日志審計的裝置,應用于storm集群中,其中,
[0023]所述storm集群中,每一個節(jié)點,用于安裝所述日志審計的裝置中的任意一個或多個收集進程、歸一化進程及關聯(lián)進程。
[0024]—種日志審計的系統(tǒng),其特征在于,包括:上述任意一種日志審計的裝置和至少兩個設備,其中,
[0025]所述至少兩個設備中,每一個設備,用于向所述日志審計的裝置發(fā)送日志文件。
[0026]—種日志審計的方法,設置至少一個收集進程、至少兩個歸一化進程及至少兩個關聯(lián)進程,為每一個歸一化進程確定歸一化規(guī)則,并為每一個關聯(lián)進程確定關聯(lián)規(guī)則和告警規(guī)則,還包括:
[0027]確定所述至少一個收集進程中空閑的收集進程;
[0028]利用空閑的收集進程接收外設的至少兩個設備發(fā)送的日志文件;
[0029]確定所述至少兩個歸一化進程中的空閑的歸一化進程;
[0030]利用空閑歸一化進程解析所述日志文件的屬性,根據(jù)所述歸一化規(guī)則和所述日志文件的屬性,確定所述日志文件的關聯(lián)屬性;
[0031]確定所述至少兩個關聯(lián)進程中的空閑關聯(lián)進程;
[0032]根據(jù)所述關聯(lián)規(guī)則,利用空閑關聯(lián)進程進行日志關聯(lián),當所述日志關聯(lián)滿足所述告警規(guī)則時,進行日志審計告警。
[0033]優(yōu)選地,上述方法進一步包括:
[0034]利用規(guī)則引擎設置至少一種歸一化規(guī)則和至少一種關聯(lián)規(guī)則,并為每一種關聯(lián)規(guī)則設置對應的RuleID;
[0035]所述每一個歸一化進程確定歸一化規(guī)則,包括:每一個歸一化進程加載所述規(guī)則引擎設置的至少一種歸一化規(guī)則和關聯(lián)規(guī)則設置對應的RuleID;
[0036]所述根據(jù)所述歸一化規(guī)則和所述日志文件的屬性,確定所述日志文件的關聯(lián)屬性,包括:根據(jù)所述歸一化規(guī)則,為日志文件分配對應的任務對象,為任務對象配置關聯(lián)屬性,并為所述任務對象確定對應的RuleID;
[0037]所述確定所述至少兩個關聯(lián)進程中的空閑關聯(lián)進程,包括:根據(jù)RulelD,確定目標關耳關進程;
[0038]所述利用空閑關聯(lián)進程進行日志關聯(lián),包括:利用目標關聯(lián)進程進行日志關聯(lián)。
[0039]優(yōu)選地,上述方法進一步包括:設置緩存區(qū)域和數(shù)據(jù)庫;
[0040]在所述緩存區(qū)域設置時間閾值;
[0041 ]在所述為日志文件分配對應的任務對象之后,在所述利用目標關聯(lián)進程進行日志關聯(lián)之前,進一步包括:利用所述緩存區(qū)域緩存所述任務對象,并當緩存對象達到所述時間閾值時,將緩存的任務對象存儲到所述數(shù)據(jù)庫,并刪除緩存的任務對象;
[0042]所述利用目標關聯(lián)進程進行日志關聯(lián),包括:根據(jù)所述關聯(lián)屬性,在所述緩存區(qū)域查找對應的任務對象,如果查找到所述任務對象,則對所述任務對象進行加I操作,否則,在所述數(shù)據(jù)庫中查找任務對象,如果在所述數(shù)據(jù)庫中查找到任務對象,則對所述任務對象進行加I操作,否則,增加新的任務對象給所述緩存區(qū)域。
[0043]優(yōu)選地,上述方法進一步包括:為每一個收集進程和每一個關聯(lián)進程設置處理類及關聯(lián)關系;
[0044]根據(jù)所述關聯(lián)關系,所述每一個收集進程之間、每一個關聯(lián)進程之間及每一個收集進程與每一個關聯(lián)進程之間,進行數(shù)據(jù)交互;
[0045]所述確定空閑的進程,包括:根據(jù)日志文件屬性,確定目標處理類,并在所述目標處理類中,確定空閑的進程。
[0046]本發(fā)明實施例提供了一種日志審計的裝置、系統(tǒng)和方法,該日志審計的裝置,與外設的至少兩個設備相連,包括:收集單元、歸一化單元、日志關聯(lián)單元及告警單元,其中,收集單元,包括:至少一個收集進程,每一個收集進程,用于當空閑時,接收外設的至少兩個設備發(fā)送的日志文件;歸一化單元,包括:至少兩個歸一化進程,每一個歸一化進程,用于確定歸一化規(guī)則,當空閑時,接收收集單元發(fā)送的所述日志文件,解析日志文件屬性,根據(jù)歸一化規(guī)則和日志文件屬性,確定日志文件的關聯(lián)屬性;日志關聯(lián)單元,包括:至少兩個關聯(lián)進程,每一個關聯(lián)進程,用于確定關聯(lián)規(guī)則和告警規(guī)則,當接收到所述關聯(lián)屬性時,根據(jù)關聯(lián)規(guī)則,進行日志關聯(lián),當日志關聯(lián)滿足告警規(guī)則時,觸發(fā)告警單元;告警單元,用于在接收到觸發(fā)時,進行日志審計告警,由于本發(fā)明實施例提供的各種進程在空閑時能夠對多個設備產(chǎn)生的日志進行日志解析和關聯(lián),實現(xiàn)了日志審計進程負載均衡。
【附圖說明】
[0047]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0048]圖1是本發(fā)明一個實施例提供的一種日志審計的裝置的結構示意圖;
[0049]圖2是本發(fā)明另一個實施例提供的一種日志審計的裝置的結構示意圖;
[0050]圖3是本發(fā)明又一個實施例提供的一種日志審計的裝置的結構示意圖;
[0051]圖4是本發(fā)明一個實施例提供的一種日志審計的系統(tǒng)的結構示意圖;
[0052]圖5是本發(fā)明一個實施例提供的一種日志審計的方法的流程圖;
[0053]圖6是本發(fā)明另一個實施例提供的一種日志審計的方法的流程圖;
[0054]圖7是本發(fā)明一個實施例提供的進程間的關聯(lián)關系的結構示意圖;
[0055]圖8是本發(fā)明一個實施例提供的日志分配關聯(lián)進程的規(guī)則示意圖。
【具體實施方式】
[0056]為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例,基于本發(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0057]如圖1所示,本發(fā)明實施例提供一種日志審計的裝置,與外設的至少兩個設備相連,包括:收集單元101、歸一化單元102、日志關聯(lián)單元103及告警單元104,其中,
[0058]收集單元101,包括:至少一個收集進程,每一個收集進程,用于當空閑時,接收外設的至少兩個設備發(fā)送的日志文件,并將日志文件發(fā)送給歸一化單元102;
[0059]歸一化單元102,包括:至少兩個歸一化進程,每一個歸一化進程,用于確定歸一化規(guī)則,當空閑時,接收收集單元101發(fā)送的日志文件,解析日志文件屬性,根據(jù)歸一化規(guī)則和日志文件屬性,確定日志文件的關聯(lián)屬性,將關聯(lián)屬性發(fā)送給日志關聯(lián)單元103;
[0060]日志關聯(lián)單元103,包括:至少兩個關聯(lián)進程,每一個關聯(lián)進程,用于確定關聯(lián)規(guī)則和告警規(guī)則,當接收到關聯(lián)屬性時,根據(jù)關聯(lián)規(guī)則,進行日志關聯(lián),當日志關聯(lián)滿足告警規(guī)則時,觸發(fā)告警單元104;
[0061]告警單元104,用于在接收到觸發(fā)時,進行日志審計告警。
[0062]如圖2所示,在本發(fā)明另一實施例中,上述日志審計的裝置進一步包括:規(guī)則引擎201,其中,
[0063]規(guī)則引擎201,用于接收至少一種歸一化規(guī)則和至少一種關聯(lián)規(guī)則,并為每一種關聯(lián)規(guī)則設置對應的RuleID ;
[0064]歸一化單元102中,每一個歸一化進程,用于加載規(guī)則引擎201,根據(jù)歸一化規(guī)則,
為日志文件分配對應的任務對象,并為任務對象配置關聯(lián)屬性,并根據(jù)關聯(lián)規(guī)則,為任務對象確定對應的RulelD,并根據(jù)RulelD,將任務對象和關聯(lián)屬性發(fā)送給日志關聯(lián)單元103中的目標關聯(lián)進程;
[0065]日志關聯(lián)單元103中,每一個關聯(lián)進程,當作為目標關聯(lián)進程時,用于接收歸一化單元102發(fā)送的任務對象和關聯(lián)屬性,根據(jù)關聯(lián)屬性,設置任務對象,對任務對象進行加I操作。
[0066]如圖3所示,在本發(fā)明又一實施例中,上述日志審計的裝置,進一步包括:緩存區(qū)域301和數(shù)據(jù)庫302,其中,
[0067]緩存區(qū)域301,用于設置時間閾值,緩存歸一化單元102配置的任務對象,并當緩存對象達到時間閾值時,將緩存的任務對象存儲到數(shù)據(jù)庫302,并刪除緩存的任務對象;
[0068]日志關聯(lián)單元103中,每一個關聯(lián)進程,當作為目標關聯(lián)進程時,進一步用于根據(jù)關聯(lián)屬性,在緩存區(qū)域301查找對應的任務對象,如果查找到任務對象,則對任務對象進行加I操作,否則,在數(shù)據(jù)庫302中查找任務對象,如果在數(shù)據(jù)庫302中查找到任務對象,則對任務對象進行加I操作,否則,增加新的任務對象給緩存區(qū)域301。
[0069]在本發(fā)明另一實施例中,上述日志審計的裝置,進一步包括:設置單元(圖中未示出),其中,
[0070]設置單元,用于為歸一化單元102中的每一個收集進程和日志關聯(lián)單元103中的每一個關聯(lián)進程設置處理類及關聯(lián)關系;
[0071]歸一化單元102中,每一個收集進程間,用于根據(jù)設置單元設置的處理類,對接收到的日志文件進行歸一化處理;
[0072]日志關聯(lián)單元103中,每一個關聯(lián)進程,用于根據(jù)設置單元設置的處理類,對接收到的日志文件進行日志關聯(lián);
[0073]每一個收集進程之間、每一個關聯(lián)進程之間及每一個收集進程與每一個關聯(lián)進程之間,根據(jù)關聯(lián)關系,進行數(shù)據(jù)交互。
[0074]在本發(fā)明又一實施例中,上述日志審計的裝置應用于storm集群中,其中,
[0075]storm集群中,每一個節(jié)點,用于安裝日志審計的裝置中的任意一個或多個收集進程、歸一化進程及關聯(lián)進程。
[0076]如圖4所示,本發(fā)明實施例提供一種日志審計的系統(tǒng),該系統(tǒng)包括:上述任意一種日志審計的裝置401和至少兩個設備402,其中,
[0077]至少兩個設備402中,每一個設備,用于向日志審計的裝置401發(fā)送日志文件。
[0078]上述裝置/系統(tǒng)內的各單元之間的信息交互、執(zhí)行過程等內容,由于與本發(fā)明方法實施例基于同一構思,具體內容可參見本發(fā)明方法實施例中的敘述,此處不再贅述。
[0079]如圖5所示,本發(fā)明實施例提供了一種日志審計的方法,該方法可以包括以下步驟:
[0080]步驟501:設置至少一個收集進程、至少兩個歸一化進程及至少兩個關聯(lián)進程;
[0081 ]步驟502:為每一個歸一化進程確定歸一化規(guī)則,并為每一個關聯(lián)進程確定關聯(lián)規(guī)則和告警規(guī)則;
[0082]步驟503:確定至少一個收集進程中空閑的收集進程;
[0083]步驟504:利用空閑的收集進程接收外設的至少兩個設備發(fā)送的日志文件;
[0084]步驟505:確定至少兩個歸一化進程中的空閑的歸一化進程;
[0085]步驟506:利用空閑歸一化進程解析日志文件的屬性,根據(jù)歸一化規(guī)則和日志文件的屬性,確定日志文件的關聯(lián)屬性;
[0086]步驟507:確定至少兩個關聯(lián)進程中的空閑關聯(lián)進程;
[0087]步驟508:根據(jù)關聯(lián)規(guī)則,利用空閑關聯(lián)進程進行日志關聯(lián),當日志關聯(lián)滿足告警規(guī)則時,進行日志審計告警。
[0088]在本發(fā)明一個實施例中,上述方法進一步包括:利用規(guī)則引擎設置至少一種歸一化規(guī)則和至少一種關聯(lián)規(guī)則,并為每一種關聯(lián)規(guī)則設置對應的RuleID;步驟502的【具體實施方式】,包括:每一個歸一化進程加載規(guī)則引擎設置的至少一種歸一化規(guī)則和關聯(lián)規(guī)則設置對應的RulelD;步驟505的【具體實施方式】,包括:根據(jù)歸一化規(guī)則,為日志文件分配對應的任務對象,為任務對象配置關聯(lián)屬性,并為任務對象確定對應的RuleID;步驟507的【具體實施方式】,包括:根據(jù)RuleID,確定目標關聯(lián)進程;步驟508的【具體實施方式】,包括:利用目標關聯(lián)進程進行日志關聯(lián),通過規(guī)則引擎用戶可以按照自己的需求設置各種規(guī)則,實現(xiàn)了規(guī)則設置的靈活性,例如:用戶利用規(guī)則引擎設置規(guī)則1、規(guī)則2等等,該規(guī)貝IJl和規(guī)則2可以直接通過進程加載規(guī)則引擎實現(xiàn)配置。
[0089]在本發(fā)明一個實施例中,為了保證日志關聯(lián)的準確性,同時保證日志審計的效率,上述方法進一步包括:設置緩存區(qū)域和數(shù)據(jù)庫;在所述緩存區(qū)域設置時間閾值;利用緩存區(qū)域緩存任務對象,并當緩存對象達到時間閾值時,將緩存的任務對象存儲到數(shù)據(jù)庫,并刪除緩存的任務對象;步驟508的【具體實施方式】,包括:根據(jù)關聯(lián)屬性,在緩存區(qū)域查找對應的任務對象,如果查找到任務對象,則對任務對象進行加I操作,否則,在數(shù)據(jù)庫中查找任務對象,如果在數(shù)據(jù)庫中查找到任務對象,則對任務對象進行加I操作,否則,增加新的任務對象給緩存區(qū)域。
[0090]在本發(fā)明一個實施例中,為了實現(xiàn)分類處理日志,同時保證各進程間的通信,上述方法進一步包括:為每一個收集進程和每一個關聯(lián)進程設置處理類及關聯(lián)關系;根據(jù)關聯(lián)關系,每一個收集進程之間、每一個關聯(lián)進程之間及每一個收集進程與每一個關聯(lián)進程之間,進行數(shù)據(jù)交互;確定空閑的進程,包括:根據(jù)日志文件屬性,確定目標處理類,并在目標處理類中,確定空閑的進程。
[0091]以審計某一網(wǎng)站帳戶登錄的頻次,從而判斷該網(wǎng)站是否被惡意攻擊或惡意訪問為例,詳細說明日志審計的方法,如圖6所示,該方法可以包括以下步驟:
[0092]步驟601:設置至少一個收集進程、至少兩個歸一化進程及至少兩個關聯(lián)進程;
[0093]在該步驟中,可以基于Topology架構構建不同的進程,其中,Topology是由spout和boIt組成的,spout負責向bolt發(fā)送消息,bolt負責處理消息,并把消息發(fā)送給下一個bolt。在該步驟中需要定義spout和bolt的處理類,以及它們之間的連接關系,從而實現(xiàn)設置至少一個收集進程、至少兩個歸一化進程及至少兩個關聯(lián)進程。如圖7所示,spoutA為一個收集進程,bo 11A和bo I tB是歸一化進程;bo I tC和bo I tD是關聯(lián)進程,其中,spout A與bo 11A和bo ItB交互數(shù)據(jù);bo ItA和bo ItB與bo ItC和bo ItD交互數(shù)據(jù)。
[0094]步驟602:利用規(guī)則引擎設置至少一種歸一化規(guī)則和至少一種關聯(lián)規(guī)則,并為每一種關聯(lián)規(guī)則設置對應的RuleID及網(wǎng)站帳戶登錄的頻次;
[°°95] 在該步驟中,可以通過Topology架構中的spoutB設置至少一種歸一化規(guī)則和至少一種關聯(lián)規(guī)則,該spoutB將歸一化規(guī)則和關聯(lián)規(guī)則發(fā)送給boltA和1301丨13,1301丨4和130]^13再將關聯(lián)規(guī)則發(fā)送給boltC和boltD,為了使關聯(lián)規(guī)則比較容易查找,一種關聯(lián)規(guī)則設置對應的RulelD。
[0096]步驟603:設置緩存區(qū)域和數(shù)據(jù)庫,在緩存區(qū)域設置時間閾值;
[0097]在該步驟設置的緩存區(qū)域和數(shù)據(jù)庫主要是為了緩存和存儲任務對象如某一網(wǎng)站登錄頻次統(tǒng)計。
[0098]步驟604:將至少一個收集進程、至少兩個歸一化進程及至少兩個關聯(lián)進程分散到s tr om集群中的各個節(jié)點上;
[0099]該步驟可以使歸一化進程和關聯(lián)進程設置在不同的節(jié)點上,保證進程間相對獨立,能夠為多個設備服務器提供服務,從而保證進程負載的均衡。
[0100]步驟605:在各個節(jié)點加載規(guī)則引擎;
[0101]步驟606:為各個節(jié)點中的歸一化進程確定歸一化規(guī)則,并為關聯(lián)進程確定關聯(lián)規(guī)則和告警規(guī)則;
[0102]例如:為boltA和boltB確定歸一化規(guī)則,以通過boltA和boltB對日志進行分類;為bo I tC確定關聯(lián)規(guī)則I對應Ru I e I;為bo I tD確定關聯(lián)規(guī)則2對應Ru I e2。
[0103]步驟607:確定各個節(jié)點中空閑的收集進程;
[0104]步驟608:利用各個節(jié)點中空閑的收集進程接收外設的至少兩個設備發(fā)送的網(wǎng)站登錄日志文件;
[0105]步驟609:利用收集進程確定各個節(jié)點中空閑的歸一化進程;
[0106]步驟610:利用空閑歸一化進程解析網(wǎng)站登錄日志文件的屬性,根據(jù)歸一化規(guī)則和日志文件的屬性,確定任務對象;
[0107]如圖8所示,通過步驟607至步驟610,確定出bo ItA和bo ItB空閑,確定為boltA分配1gl和log2;為boltB分配log3、log4及l(fā)og5,對日志文件的屬性如日志文件名稱等等進行解析。
[0108]步驟611:為任務對象配置關聯(lián)屬性及對應的RuleID;
[0109]在該步驟中,給日志對應的任務對象增加關聯(lián)屬性即相似性屬性如需要包括日志所屬設備,表示同一設備的日志關聯(lián),并根據(jù)關聯(lián)規(guī)則如對登陸頻次進行統(tǒng)計等等。如圖8所示,根據(jù)日志的相似屬性,為1gl配置Rulel;為10〖2、log3、log4及l(fā)og5配置Rule2。
[0110]步驟612:確定至少兩個關聯(lián)進程中的空閑關聯(lián)進程;
[0111]步驟613:根據(jù)RulelD,在空閑關聯(lián)進程中確定目標關聯(lián)進程;
[0112]如圖8所示,將 1gl 分配給13011:(];將1(^2、1(^3、1(^4及1(^5分配給1301七0。
[0113]步驟614:根據(jù)關聯(lián)規(guī)則和任務對象的關聯(lián)屬性及對應的RuleID,目標關聯(lián)進程查找緩存區(qū)域是否存在該任務對象,如果是,則執(zhí)行步驟615;否則,執(zhí)行步驟616;
[0114]該任務對象為對網(wǎng)站登錄頻次的統(tǒng)計,在該步驟中,如果之前對該網(wǎng)站已經(jīng)有登錄記錄,那么會在緩存區(qū)域有緩存任務對象。
[0115]步驟615:對緩存區(qū)域中的任務對象的頻次執(zhí)行加I操作,判斷該任務對象總頻次是否達到頻次閾值,如果是,則執(zhí)行步驟617;否則,執(zhí)行步驟608;
[0116]例如:可以設置頻次閾值為100次,即在24內某一帳戶登錄超過100次即認定該帳戶被惡意攻擊。
[0117]步驟616:目標關聯(lián)進程查找數(shù)據(jù)庫是否存在該任務對象,如果是,則執(zhí)行步驟618,否則,執(zhí)行步驟619;
[0118]步驟617:進行告警,并將任務對象頻次清零,執(zhí)行步驟608;
[0119]該步驟的告警可以通過郵件或者短消息的方式發(fā)送給用戶,以讓用戶及時對其賬戶進行處理。
[0120]步驟618:對將該任務對象加載到緩存區(qū)域,執(zhí)行步驟615;
[0121]步驟619:將任務對象存儲到緩存區(qū)域,并當任意任務對象在緩存區(qū)域中的時間達到時間閾值時,存儲到數(shù)據(jù)庫中。
[0122]根據(jù)上述方案,本發(fā)明的各實施例,至少具有如下有益效果:
[0123]1.該日志審計的裝置,與外設的至少兩個設備相連,包括:收集單元、歸一化單元、日志關聯(lián)單元及告警單元,其中,收集單元,包括:至少一個收集進程,每一個收集進程,用于當空閑時,接收外設的至少兩個設備發(fā)送的日志文件;歸一化單元,包括:至少兩個歸一化進程,每一個歸一化進程,用于確定歸一化規(guī)則,當空閑時,接收收集單元發(fā)送的所述日志文件,解析日志文件屬性,根據(jù)歸一化規(guī)則和日志文件屬性,確定日志文件的關聯(lián)屬性;日志關聯(lián)單元,包括:至少兩個關聯(lián)進程,每一個關聯(lián)進程,用于確定關聯(lián)規(guī)則和告警規(guī)則,當接收到所述關聯(lián)屬性時,根據(jù)關聯(lián)規(guī)則,進行日志關聯(lián),當日志關聯(lián)滿足告警規(guī)則時,觸發(fā)告警單元;告警單元,用于在接收到觸發(fā)時,進行日志審計告警,由于本發(fā)明實施例提供的各種進程在空閑時能夠對多個設備產(chǎn)生的日志進行日志解析和關聯(lián),實現(xiàn)了日志審計進程負載均衡。
[0124]2.通過Storm集群的方式,將多個進程分散到各個節(jié)點上,可以接收多個設備的日志,并對多個設備的日志并行進行日志審計,實現(xiàn)了資源共享。
[0125]3.本發(fā)明實施例提供至少兩個歸一化進程和至少兩個關聯(lián)進程,而且通過將符合同一規(guī)則的日志被同一關聯(lián)進程處理,便于對日志的關聯(lián)性進行統(tǒng)計,同時有效的提高了日志審計的效率。
[0126]4.在關聯(lián)進程進行關聯(lián)統(tǒng)計時,通過緩存區(qū)域和數(shù)據(jù)庫結合的方式緩存和存儲任務對象,當緩存區(qū)域緩存的任務對象達到一定時間閾值時,將任務對象存儲到數(shù)據(jù)庫,這樣保證緩存區(qū)域的緩存效率,同時在進行任務對象的關聯(lián)時,首先查找緩存區(qū)域中,然后查找數(shù)據(jù)庫,即以緩存區(qū)域為主,數(shù)據(jù)庫為輔,從而進一步有效地提高了日志審計的效率。
[0127]需要說明的是,在本文中,諸如第一和第二之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個〃.....”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同因素。
[0128]本領域普通技術人員可以理解:實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲在計算機可讀取的存儲介質中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質包括:ROM、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質中。
[0129]最后需要說明的是:以上所述僅為本發(fā)明的較佳實施例,僅用于說明本發(fā)明的技術方案,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內所做的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內。
【主權項】
1.一種日志審計的裝置,其特征在于,與外設的至少兩個設備相連,包括:收集單元、歸一化單元、日志關聯(lián)單元及告警單元,其中, 所述收集單元,包括:至少一個收集進程,每一個收集進程,用于當空閑時,接收外設的至少兩個設備發(fā)送的日志文件,并將所述日志文件發(fā)送給所述歸一化單元; 所述歸一化單元,包括:至少兩個歸一化進程,每一個歸一化進程,用于確定歸一化規(guī)則,當空閑時,接收所述收集單元發(fā)送的所述日志文件,解析所述日志文件屬性,根據(jù)所述歸一化規(guī)則和所述日志文件屬性,確定所述日志文件的關聯(lián)屬性,將所述關聯(lián)屬性發(fā)送給所述日志關聯(lián)單元; 所述日志關聯(lián)單元,包括:至少兩個關聯(lián)進程,每一個關聯(lián)進程,用于確定關聯(lián)規(guī)則和告警規(guī)則,當接收到所述關聯(lián)屬性時,根據(jù)所述關聯(lián)規(guī)則,進行日志關聯(lián),當所述日志關聯(lián)滿足所述告警規(guī)則時,觸發(fā)所述告警單元; 所述告警單元,用于在接收到觸發(fā)時,進行日志審計告警。2.根據(jù)權利要求1所述的日志審計的裝置,其特征在于,進一步包括:規(guī)則引擎,其中, 所述規(guī)則引擎,用于接收至少一種歸一化規(guī)則和至少一種關聯(lián)規(guī)則,并為每一種關聯(lián)規(guī)則設置對應的RuleID; 所述歸一化單元中,每一個歸一化進程,用于加載所述規(guī)則引擎,根據(jù)所述歸一化規(guī)則,為日志文件分配對應的任務對象,并為任務對象配置關聯(lián)屬性,并根據(jù)所述關聯(lián)規(guī)則,為所述任務對象確定對應的RuleID,并根據(jù)RuleID,將所述任務對象和關聯(lián)屬性發(fā)送給所述日志關聯(lián)單元中的目標關聯(lián)進程; 所述日志關聯(lián)單元中,每一個關聯(lián)進程,當作為目標關聯(lián)進程時,用于接收所述歸一化單元發(fā)送的任務對象和關聯(lián)屬性,根據(jù)所述關聯(lián)屬性,設置任務對象,對所述任務對象進行加I操作。3.根據(jù)權利要求2所述的日志審計的裝置,其特征在于,進一步包括:緩存區(qū)域和數(shù)據(jù)庫,其中, 所述緩存區(qū)域,用于設置時間閾值,緩存所述歸一化單元配置的任務對象,并當緩存對象達到所述時間閾值時,將緩存的任務對象存儲到所述數(shù)據(jù)庫,并刪除緩存的任務對象;所述日志關聯(lián)單元中,每一個關聯(lián)進程,當作為目標關聯(lián)進程時,進一步用于根據(jù)所述關聯(lián)屬性,在所述緩存區(qū)域查找對應的任務對象,如果查找到所述任務對象,則對所述任務對象進行加I操作,否則,在所述數(shù)據(jù)庫中查找任務對象,如果在所述數(shù)據(jù)庫中查找到任務對象,則對所述任務對象進行加I操作,否則,增加新的任務對象給所述緩存區(qū)域。4.根據(jù)權利要求1至3任一所述的日志審計的裝置,其特征在于,進一步包括:設置單元,其中, 所述設置單元,用于為所述歸一化單元中的每一個收集進程和所述日志關聯(lián)單元中的每一個關聯(lián)進程設置處理類及關聯(lián)關系; 所述歸一化單元中,每一個收集進程間,用于根據(jù)所述設置單元設置的處理類,對接收到的日志文件進行歸一化處理; 所述日志關聯(lián)單元中,每一個關聯(lián)進程,用于根據(jù)所述設置單元設置的處理類,對接收到的日志文件進行日志關聯(lián); 所述每一個收集進程之間、每一個關聯(lián)進程之間及每一個收集進程與每一個關聯(lián)進程之間,根據(jù)所述關聯(lián)關系,進行數(shù)據(jù)交互。5.根據(jù)權利要求1至3任一所述的日志審計的裝置,其特征在于,應用于storm集群中,其中, 所述storm集群中,每一個節(jié)點,用于安裝所述日志審計的裝置中的任意一個或多個收集進程、歸一化進程及關聯(lián)進程。6.—種日志審計的系統(tǒng),其特征在于,包括:權利要求1至5任一所述日志審計的裝置和至少兩個設備,其中, 所述至少兩個設備中,每一個設備,用于向所述日志審計的裝置發(fā)送日志文件。7.—種日志審計的方法,其特征在于,設置至少一個收集進程、至少兩個歸一化進程及至少兩個關聯(lián)進程,為每一個歸一化進程確定歸一化規(guī)則,并為每一個關聯(lián)進程確定關聯(lián)規(guī)則和告警規(guī)則,還包括: 確定所述至少一個收集進程中空閑的收集進程; 利用空閑的收集進程接收外設的至少兩個設備發(fā)送的日志文件; 確定所述至少兩個歸一化進程中的空閑的歸一化進程; 利用空閑歸一化進程解析所述日志文件的屬性,根據(jù)所述歸一化規(guī)則和所述日志文件的屬性,確定所述日志文件的關聯(lián)屬性; 確定所述至少兩個關聯(lián)進程中的空閑關聯(lián)進程; 根據(jù)所述關聯(lián)規(guī)則,利用空閑關聯(lián)進程進行日志關聯(lián),當所述日志關聯(lián)滿足所述告警規(guī)則時,進行日志審計告警。8.根據(jù)權利要求7所述的方法,其特征在于,進一步包括: 利用規(guī)則引擎設置至少一種歸一化規(guī)則和至少一種關聯(lián)規(guī)則,并為每一種關聯(lián)規(guī)則設置對應的RuleID; 所述每一個歸一化進程確定歸一化規(guī)則,包括:每一個歸一化進程加載所述規(guī)則引擎設置的至少一種歸一化規(guī)則和關聯(lián)規(guī)則設置對應的RuleID; 所述根據(jù)所述歸一化規(guī)則和所述日志文件的屬性,確定所述日志文件的關聯(lián)屬性,包括:根據(jù)所述歸一化規(guī)則,為日志文件分配對應的任務對象,為任務對象配置關聯(lián)屬性,并為所述任務對象確定對應的RuleID; 所述確定所述至少兩個關聯(lián)進程中的空閑關聯(lián)進程,包括:根據(jù)RulelD,確定目標關聯(lián)進程; 所述利用空閑關聯(lián)進程進行日志關聯(lián),包括:利用目標關聯(lián)進程進行日志關聯(lián)。9.根據(jù)權利要求8所述的方法,其特征在于,進一步包括:設置緩存區(qū)域和數(shù)據(jù)庫; 在所述緩存區(qū)域設置時間閾值; 在所述為日志文件分配對應的任務對象之后,在所述利用目標關聯(lián)進程進行日志關聯(lián)之前,進一步包括:利用所述緩存區(qū)域緩存所述任務對象,并當緩存對象達到所述時間閾值時,將緩存的任務對象存儲到所述數(shù)據(jù)庫,并刪除緩存的任務對象; 所述利用目標關聯(lián)進程進行日志關聯(lián),包括:根據(jù)所述關聯(lián)屬性,在所述緩存區(qū)域查找對應的任務對象,如果查找到所述任務對象,則對所述任務對象進行加I操作,否則,在所述數(shù)據(jù)庫中查找任務對象,如果在所述數(shù)據(jù)庫中查找到任務對象,則對所述任務對象進行加I操作,否則,增加新的任務對象給所述緩存區(qū)域。10.根據(jù)權利要求7至9任一所述的方法,其特征在于,進一步包括:為每一個收集進程和每一個關聯(lián)進程設置處理類及關聯(lián)關系; 根據(jù)所述關聯(lián)關系,所述每一個收集進程之間、每一個關聯(lián)進程之間及每一個收集進程與每一個關聯(lián)進程之間,進行數(shù)據(jù)交互; 所述確定空閑的進程,包括:根據(jù)日志文件屬性,確定目標處理類,并在所述目標處理類中,確定空閑的進程。
【文檔編號】G06F17/30GK106095575SQ201610415448
【公開日】2016年11月9日
【申請日】2016年6月14日 公開號201610415448.9, CN 106095575 A, CN 106095575A, CN 201610415448, CN-A-106095575, CN106095575 A, CN106095575A, CN201610415448, CN201610415448.9
【發(fā)明人】楊繼偉
【申請人】上海浪潮云計算服務有限公司