TWI772926B - 日誌處理裝置及其日誌處理方法 - Google Patents
日誌處理裝置及其日誌處理方法 Download PDFInfo
- Publication number
- TWI772926B TWI772926B TW109136181A TW109136181A TWI772926B TW I772926 B TWI772926 B TW I772926B TW 109136181 A TW109136181 A TW 109136181A TW 109136181 A TW109136181 A TW 109136181A TW I772926 B TWI772926 B TW I772926B
- Authority
- TW
- Taiwan
- Prior art keywords
- log
- block data
- data
- recorded
- rblk
- Prior art date
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 33
- 238000000034 method Methods 0.000 claims abstract description 46
- 238000004458 analytical method Methods 0.000 claims description 9
- 230000014509 gene expression Effects 0.000 description 18
- OTSMHWLYYJVJDL-UHFFFAOYSA-N SSSSSSSSS Chemical compound SSSSSSSSS OTSMHWLYYJVJDL-UHFFFAOYSA-N 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 101100115693 Arabidopsis thaliana OASA1 gene Proteins 0.000 description 7
- 101100027969 Caenorhabditis elegans old-1 gene Proteins 0.000 description 7
- OEXWWDYOBBQCKD-UHFFFAOYSA-N SSSSSS Chemical compound SSSSSS OEXWWDYOBBQCKD-UHFFFAOYSA-N 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 6
- WHSQPVUDHQAQLA-UHFFFAOYSA-N SSSSSSSSSS Chemical compound SSSSSSSSSS WHSQPVUDHQAQLA-UHFFFAOYSA-N 0.000 description 5
- GTMJHPZRGBKJFX-UHFFFAOYSA-N SSSSSSSS Chemical compound SSSSSSSS GTMJHPZRGBKJFX-UHFFFAOYSA-N 0.000 description 3
- -1 OLD2 Proteins 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1734—Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/40—Data acquisition and logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/86—Event-based monitoring
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
- H03M7/3097—Grammar codes
Abstract
一種日誌處理裝置及其日誌處理方法。日誌處理裝置基於一第一規則,將原始日誌資料拆分為複數區塊資料,並根據各區塊資料之一資料屬性,將各區塊資料中之一數字變量轉換為一代表碼,以及根據各區塊資料之一資料完整度決定是否將連續之區塊資料進行一合併處理,以產生複數合併後區塊資料。日誌處理裝置更將該等合併後區塊資料作為對應於原始日誌資料之一日誌樣板,且各合併後區塊資料對應至一事件。
Description
本發明係關於一種日誌處理裝置及其日誌處理方法。具體而言,日誌處理裝置透過取代原始日誌資料中之數字變量,以壓縮資料量,並根據日誌內容提供對應組合方式、分離引發事件及建立樣板。
現有對原始日誌資料之解析方法,大多是以特定符號(例如:*)與字元(例如:DATE、TIME、NUM、IPADDR、PORT等)取代數字變量後,再透過一連串預設解析規則進行資訊減量以及資料壓縮,建立日誌樣版。
然而,於轉化原始日誌記錄至日誌樣版及事件樣版的過程中,不會使用所有的預設解析規則,且預設解析規則套用順序會因為原始日誌資料內容的排列方式而所有差異,即使資料型態類似但表示式不同的原始日誌資料仍需要各自對應的解析規則及解析規則套用順序,且無法於解析原始日誌資料的過程中萃取引發原始日誌資料之日誌記錄的事件,亦無法於解析過程中探索與分析原始日誌資料中之變量變化。
有鑑於此,如何提供一種日誌紀錄解析機制,其可以相同的解析規則解析各種原始日誌資料,並在解析過程中萃取出引發日誌記錄的事件係為業界及學術界亟需解決的一技術問題。
本發明之目的在於提供一種日誌紀錄解析機制,其根據原始日誌資料拆分為多個區塊資料後之資料屬性決定取代數字變量之代表碼,並將連續之區塊資料中不完整的區塊資料合併,再將合併後之區塊資料及未被合併之區塊資料對應之事件組成日誌樣板。據此,本發明之日誌紀錄解析機制無需對不同的原始日誌資料設定不同的預設解析規則,且可在解析原始日誌資料的過程中萃取引發原始日誌資料之日誌記錄的事件,並分析原始日誌資料中之變量變化。
為達上述目的,本發明揭露一種日誌處理裝置,其包含一儲存器及一處理器。該儲存器用以儲存一原始日誌資料。該處理器電性連接至該儲存器,並用以執行下列操作:基於一第一規則,將該原始日誌資料拆分為複數區塊資料;根據各該區塊資料之一資料屬性,將各該區塊資料中之一數字變量轉換為一代表碼;根據各該區塊資料之一資料完整度決定是否將連續之該等區塊資料進行一合併處理,以產生複數合併後區塊資料;以將該等合併後區塊資料作為對應於該原始日誌資料之一日誌樣板,其中各該合併後區塊資料對應至一事件。
此外,本發明更揭露一種用於一日誌處理裝置之日誌處理方法,該日誌處理裝置包含一儲存器及一處理器。該儲存器儲存一原始日誌資料。該日誌處理方法由該處理器執行,且包含下列操作:基於一第一規則,將該原始日誌資料拆分為複數區塊資料;根據各該區塊資料之一資料屬性,將各該區塊資料中之一數字變量轉換為一代表碼;根據各該區塊資料之一資料完整度決定是否將連續之該等區塊資料進行一合併處理,以產生複數合併後區塊資料;以及將該等合併後區塊資料作為對應於該原始日誌資料之一日誌樣板,其中各該合併後區塊資料對應至一事件。
在參閱圖式及隨後描述之實施方式後,此技術領域具有通常知識者便可瞭解本發明之其他目的,以及本發明之技術手段及實施態樣。
以下將透過實施例來解釋本發明內容,本發明的實施例並非用以限制本發明須在如實施例所述之任何特定的環境、應用或特殊方式方能實施。因此,關於實施例之說明僅為闡釋本發明之目的,而非用以限制本發明。需說明者,以下實施例及圖式中,與本發明非直接相關之元件已省略而未繪示,且圖式中各元件間之尺寸關係僅為求容易瞭解,並非用以限制實際比例。
本發明之第一實施例請參考圖1-5。圖1為本發明之日誌處理裝置之示意圖。日誌處理裝置1包含一儲存器11以及一處理器13。處理器13與儲存器11彼此電性連接。儲存器11用以儲存一原始日誌資料OLD,其係記錄發生在執行中的作業系統或其他執行中軟體的檔案。
處理器13基於一第一規則,將原始日誌資料OLD拆分為複數區塊資料。具體而言,原始日誌資料OLD由複數字串所組成,處理器13將該等字串間之一空格作為第一規則,可較為快速的將原始日誌資料OLD拆分為複數區塊資料。
處理器13根據各區塊資料之一資料屬性,將各區塊資料中之一數字變量轉換為一代表碼,使區塊資料以正規表示式顯示。區塊資料之資料屬性為各區塊資料中之字串所代表的涵義。資料屬性可為一時間、一資訊、一程式、一資料庫、一訊息及一週期等,但不限於此。代表碼為表示區塊資料中數字變量所代表之涵義的文字定量。
於將數字變量轉換為相對應之代表碼時,處理器13會先判斷區塊資料中是否存在數字變量,再判斷各區塊資料之資料屬性為何。若區塊資料中存在數字變量,則以對應資料屬性的代表碼取代數字變量,使原本包含數字變量之區塊資料變更為皆以文字定量表示。因此,可進一步減少原始日誌資料OLD整體的資料量。
接著,處理器13根據各區塊資料之一資料完整度決定是否將連續之該等區塊資料進行一合併處理,以產生複數合併後區塊資料。具體而言,處理器13基於一第二規則,從該等區塊資料中的第一個區塊資料開始依序判斷各區塊資料之一資料完整度,並根據資料完整度決定各區塊資料是否具有完整涵義。於本實施例中,第二規則可為一語意分析。然而,於其他實施例中,第二規則亦可為用於描述句子時使用之引號或描述特定內容時所使用之括號。所屬技術領域中具有通常知識者可依據後續說明瞭解第二規則之設定,前述語意分析僅用於舉例說明,並非用以限制本發明。
當該等區塊資料中至少連續二者之資料完整度皆小於一臨界值時,合併該等區塊資料中資料完整度皆小於臨界值之至少連續二者,以及當該等區塊資料中至少連續二者之其中之一的資料完整度小於臨界值,且連續之另一區塊資料之資料完整度大於等於臨界值時,則處理器13不合併該等區塊資料中至少連續二者。簡言之,該等合併後區塊資料中包含經語意分析後,單一區塊資料即具有完整涵義之區塊資料,以及因語意不完整之多個被合併的連續區塊資料。換言之,不連續之單一區塊資料之涵義若不完整,將無法進行合併處理
最後,處理器13將該等合併後區塊資料作為對應於原始日誌資料OLD之一日誌樣板,且各合併後區塊資料對應至一事件。
舉例而言,請參考圖2,其係描繪本發明之日誌處理裝置處理原始日誌資料之一實施情境。日誌處理裝置1基於原始日誌資料OLD1中各字串間之空格,將原始日誌資料OLD1拆分為9個區塊資料blk-1~blk-9後,逐一判斷各區塊資料中是否存在數字變量。
日誌處理裝置1之處理器13判斷區塊資料blk-1中存在數字變量「586574001963154558」時,進一步判斷區塊資料blk-1中之字串之資料屬性為日誌系統時間,因此日誌處理裝置1以對應日誌系統時間之代表碼「EPOCH」取代數字變量「586574001963154558」,如圖2所示之區塊資料rblk-1。
接著,處理器13判斷區塊資料blk-2之字串「level=info」中不存在數字變量,則不變更區塊資料blk-2之內容,因此直接將字串「level=info」視為已正規化表示之區塊資料rblk-2。
處理器13判斷區塊資料blk-3中之字串「ts=2020-04-11T03:00:01.962Z」存在數字變量時,進一步判斷區塊資料blk-3中之字串之資料屬性為應用程式時間,因此日誌處理裝置1以應用程式時間中分別對應至年、月、日、小時、分鐘、秒鐘之代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-3為「ts=YYYY-MM-DDTHH:MM:SS.SSSZ」。
處理器13判斷區塊資料blk-4中之字串「caller=head.go:668」存在數字變量時,進一步判斷區塊資料blk-4中之字串之資料屬性為觸發程式。由於在區塊資料blk-4中觸發程式之資料屬性並非單純以數字變量「668」表示,因此處理器13係以對應一般數字的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-4為「caller=head.go:NUM」。
處理器13依序判斷區塊資料blk-5之字串「component=tsdb」、區塊資料blk-6之字串「msg="head」、區塊資料blk-7之字串「GC」及區塊資料blk-8之字串「completed"」中不存在數字變量,則不變更區塊資料blk-5~blk-8之內容,因此直接將字串「component=tsdb」、「msg="head」、「GC」、「completed"」分別視為已正規化表示之區塊資料rblk-4~rblk-8。
最後,處理器13判斷區塊資料blk-9中之字串「duration=46.714385ms」存在數字變量時,進一步判斷區塊資料blk-9中之字串之資料屬性為執行時間。由於在區塊資料blk-9中執行時間之資料屬性並非單純以數字變量「46.714385」表示,因此日誌處理裝置1以對應一般數字的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-9為「duration=NUM.NUMms」。
當區塊資料blk-1~blk-9中之數字變量皆以相應的代表碼取代後,日誌處理裝置1開始進行合併處理。詳言之,合併處理在此可視為一流程中之一程序,處理器13執行合併處理程序時,基於語意分析,從區塊資料rblk-1~rblk-9中的第一個區塊資料rblk-1開始依序判斷各區塊資料rblk-2~rblk-9之資料完整度,以確認各區塊資料rblk-1~rblk-9是否具有完整的涵義。
為便於說明,於本實施例中,皆假設臨界值為100%。若區塊資料具有完整涵義,表示區塊資料之資料完整度等於臨界值(即資料完整度為100%),若區塊資料不具有完整涵義或意義不明時,則表示區塊資料之資料完整度小於臨界值(即資料完整度小於100%或為0%)。
須說明者,於其他實施例中,臨界值亦可設為90%或80%等其他數值,若區塊資料具有完整涵義,或即使不完整但仍可推論出實際的完整涵義時,代表資料完整度大於或等於臨界值90%,以及區塊資料不具有完整涵義且無法推論出實際涵義或者意義不明時,代表資料完整度小於臨界值90%。然而,所屬技術領域中具有通常知識者可基於前述說明瞭解臨界值可由欲進行日誌資料解析之使用者依據欲解讀的語意程度自行設定,前述數值僅用於舉例說明,並非用於限制本發明。
區塊資料rblk-1之字串「EPOCH」為日誌系統時間,處理器13判斷區塊資料rblk-1具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-1進行合併處理後產生之合併後區塊資料cblk-1為「EPOCH」。區塊資料rblk-2之字串「level=info」為日誌紀錄等級,處理器13判斷區塊資料rblk-2具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-2進行合併處理後產生之合併後區塊資料cblk-2為「level=info」。區塊資料rblk-3之字串「ts=YYYY-MM-DDTHH:MM:SS.SSSZ」為應用程式時間,處理器13判斷區塊資料rblk-3具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-3進行合併處理後產生之合併後區塊資料cblk-3為「ts=YYYY-MM-DDTHH:MM:SS.SSSZ」。
區塊資料rblk-4之字串「caller=head.go:NUM」為觸發程式,處理器13判斷區塊資料rblk-4具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-4進行合併處理後產生之合併後區塊資料cblk-4為「caller=head.go:NUM」。區塊資料rblk-5之字串「component=tsdb」為觸發元件,處理器13判斷區塊資料rblk-5具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-5進行合併處理後產生之合併後區塊資料cblk-5為「component=tsdb」。
區塊資料rblk-6之字串「msg="head」為,且在字串「msg="head」中包含描述句子時會使用到的引號,由於在區塊資料rblk-6中僅包含一個引號,因此隱含的表示區塊資料rblk-6中字串之涵義不完整,其資料完整度小於臨界值100%。區塊資料rblk-7之字串「GC」為,處理器13判斷區塊資料rblk-7中字串之涵義不完整,其資料完整度小於臨界值100%。當處理器13判斷連續的區塊資料rblk-6及區塊資料rblk-7皆小於臨界值時,對區塊資料rblk-6及區塊資料rblk-7進行合併處理後產生之合併後區塊資料為「msg="head GC」,並判斷合併後區塊資料「msg="head GC」之資料完整度是否等於臨界值。
由於合併後區塊資料為「msg="head GC」中僅包含一個引號,因此隱含的表示區塊資料rblk-6中字串之涵義不完整,故處理器13判斷其資料完整度小於臨界值100%。因此,接著判斷區塊資料rblk-8之資料完整度。
區塊資料rblk-8之字串「completed"」為,且在字串「completed"」中同樣包含描述句子時會使用到的引號,由於在區塊資料rblk-8中僅包含一個引號,因此隱含的表示區塊資料rblk-8中之字串不完整,其資料完整度小於臨界值100%。因此,處理器13將資料完整度皆小於臨界值100%且連續之區塊資料rblk-6、區塊資料rblk-7及區塊資料rblk-8進行合併處理,以產生合併後區塊資料cblk-6為「msg="head GC completed"」,且處理器13更判斷合併後區塊資料cblk-6「msg="head GC completed"」為觸發訊息,具有完整涵義,其資料完整度等於臨界值100%。
區塊資料rblk-9之字串「duration=NUM.NUMms」為原始日誌資料OLD1中「caller=head.go:668 component=tsdb msg="head GC completed"」之執行時間,因此處理器13判斷區塊資料rblk-9具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-9進行合併處理後產生之合併後區塊資料cblk-9為「duration=NUM.NUMms」。
於進行完合併處理的程序後,日誌處理裝置1將該等合併後區塊資料cblk-1~cblk-9作為對應於原始日誌資料OLD1之一日誌樣板L1。日誌樣板L1中包含事件E1、事件E2、事件E3、事件E4、事件E5、事件E6及事件E9。事件E1對應至合併後區塊資料cblk-1。事件E2對應至合併後區塊資料cblk-2。事件E3對應至合併後區塊資料cblk-3。事件E4對應至合併後區塊資料cblk-4。事件E5對應至合併後區塊資料cblk-5。事件E6對應至合併後區塊資料cblk-6。事件E9對應至合併後區塊資料cblk-9。簡言之,各合併後區塊資料對應至一事件。
再舉例而言,請參考圖3,其係描繪本發明之日誌處理裝置處理原始日誌資料之一實施情境。日誌處理裝置1基於原始日誌資料OLD2中各字串間之空格,將原始日誌資料OLD2拆分為12個區塊資料blk-10~blk-21後,逐一判斷各區塊資料中是否存在數字變量。
處理器13判斷區塊資料blk-10中存在數字變量「1586898127706657481」時,進一步判斷區塊資料blk-10中之字串之資料屬性為日誌系統時間,因此日誌處理裝置1以對應日誌系統時間之代表碼「EPOCH」取代數字變量「1586898127706657481」,如圖3所示之區塊資料rblk-10。
接著,處理器13判斷區塊資料blk-11之字串「I0414」中存在數字變量時,進一步判斷區塊資料blk-11中之字串之資料屬性為應用程式日期,因此處理器13以對應日期之月、日的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-11為「IMMDD」。
處理器13判斷區塊資料blk-12中之字串「21:02:07.706586」存在數字變量時,進一步判斷區塊資料blk-12中之字串之資料屬性為應用程式時間,因此處理器13以應用程式時間中分別對應至小時、分鐘、秒鐘之代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-12為「HH:MM:SS.SSSSSS」。
處理器13判斷區塊資料blk-13中之字串「1」存在數字變量時,進一步判斷區塊資料blk-13中之字串之資料屬性為數字,因此處理器13以對應一般數字的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-13為「NUM」。
處理器13判斷區塊資料blk-14中之字串「resource_quota_monitor.go:228,」存在數字變量時,進一步判斷區塊資料blk-14中之字串之資料屬性為觸發程式,由於在區塊資料blk-14中觸發程式之資料屬性並非單純以數字變量「228」表示,因此處理器13係以對應一般數字的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-14為「resource_quota_monitor.go:NUM,」。
處理器13依序判斷區塊資料blk-15之字串「QuotaMonitor」、區塊資料blk-16之字串「created」、區塊資料blk-17之字串「object」、區塊資料blk-18之字串「count」、區塊資料blk-19之字串「evaluator」、區塊資料blk-20之字串「for」及區塊資料blk-21之字串「alertmanagers.monitoring.coreos.com」中不存在數字變量,則不變更區塊資料blk-15~blk-21之內容,因此直接將字串「QuotaMonitor」、「created」、「object」、「count」、「evaluator」、「for」及「alertmanagers.monitoring.coreos.com」分別視為已正規化表示之區塊資料rblk-15~rblk-21。
當區塊資料blk-10~blk-21中之數字變量皆以相應的代表碼取代後,處理器13開始進行合併處理的程序,並從區塊資料rblk-10~rblk-21中的第一個區塊資料rblk-10開始依序判斷各區塊資料rblk-11~rblk-21之資料完整度,以確認各區塊資料rblk-11~rblk-21是否具有完整的涵義。
區塊資料rblk-10之字串「EPOCH」為日誌系統時間,處理器13判斷區塊資料rblk-1具有完整涵義,,其資料完整度等於臨界值100%,故區塊資料rblk-1進行合併處理後產生之合併後區塊資料cblk-1為「EPOCH」。區塊資料rblk-11之字串「IMMDD」為日誌記錄等級/應用程式日期,處理器13判斷區塊資料rblk-11具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-11進行合併處理後產生之合併後區塊資料cblk-11為「IMMDD」。區塊資料rblk-12之字串「HH:MM:SS.SSSSSS」為應用程式時間,處理器13判斷區塊資料rblk-12具有完整涵義,,其資料完整度等於臨界值100%,故區塊資料rblk-12進行合併處理後產生之合併後區塊資料cblk-12為「HH:MM:SS.SSSSSS」。
區塊資料rblk-13之字串「NUM」代表數字,處理器13判斷區塊資料rblk-13具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-13進行合併處理後產生之合併後區塊資料cblk-13為「NUM」。區塊資料rblk-14之字串「resource_quota_monitor.go:NUM,」為觸發程式,其資料完整度等於臨界值100%,故處理器13判斷區塊資料rblk-14具有完整涵義,區塊資料rblk-14進行合併處理後產生之合併後區塊資料cblk-14為「resource_quota_monitor.go:NUM,」。
處理器13判斷區塊資料rblk-15之字串「QuotaMonitor」所代表之訊息不完整,因此判斷其資料完整度小於臨界值100%。接著,處理器13判斷區塊資料rblk-16之字串「created」所代表之訊息不完整,因此判斷其資料完整度小於臨界值100%。由於連續之區塊資料rblk-15及區塊資料rblk-16皆為資料完整度小於臨界值(即不完整)之區塊資料,因此處理器13將區塊資料rblk-15及區塊資料rblk-16合併為「QuotaMonitor created」後,再判斷合併後區塊資料「QuotaMonitor created」之資料完整度是否等於臨界值。
由於處理器13仍無法解讀合併後區塊資料「QuotaMonitor created」所代表的涵義,因此處理器13繼續判斷區塊資料rblk-17之資料完整度。針對區塊資料rblk-17之字串「object」,處理器13仍無法判斷區塊資料rblk-17欲表達之涵義,故區塊資料rblk-17所代表之訊息不完整,因此判斷其資料完整度小於臨界值100%。在此情況下,處理器13對區塊資料rblk-15及區塊資料rblk-16進行合併處理後產生之合併後區塊資料「QuotaMonitor created」與區塊資料rblk-17之字串「object」再次進行合併處理,並產生合併後區塊資料「QuotaMonitor created object」,以及判斷合併後區塊資料「QuotaMonitor created object」之資料完整度是否等於臨界值。
然而,即使合併區塊資料rblk-15、區塊資料rblk-16及區塊資料rblk-17之字串,處理器13仍無法判斷出字串「QuotaMonitor created object」完整的涵義,因此合併後區塊資料「QuotaMonitor created object」之資料完整度仍小於臨界值,故處理器13繼續判斷區塊資料rblk-18之資料完整度。
針對區塊資料rblk-18之字串「count」,處理器13判斷其所代表之訊息不完整,因此判斷區塊資料rblk-18之資料完整度小於臨界值100%。類似於前述處理方式,在區塊資料rblk-15、區塊資料rblk-16及區塊資料rblk-17合併後區塊資料「QuotaMonitor created object」之資料完整度及區塊資料rblk-18之資料完整度皆小於臨界值100%(即不完整)的情況下,處理器13將合併後區塊資料「QuotaMonitor created object」與區塊資料rblk-18之字串「count」進行合併處理,以產生合併後區塊資料「QuotaMonitor created object count」,以及判斷合併後區塊資料「QuotaMonitor created object count」之資料完整度是否等於臨界值。
然而,針對區塊資料rblk-15、區塊資料rblk-16、區塊資料rblk-17及區塊資料rblk-18合併後之字串「QuotaMonitor created object count」,處理器13仍無法判斷出完整的涵義,其所代表之訊息不完整,因此合併後區塊資料「QuotaMonitor created object count」之資料完整度仍小於臨界值100%,故處理器13繼續判斷區塊資料rblk-19之資料完整度。
針對區塊資料rblk-19之字串「evaluator」,處理器13仍無法判斷區塊資料rblk-19欲表達之涵義,因此判斷其資料完整度小於臨界值100%。因此,繼續將區塊資料rblk-15、區塊資料rblk-16、區塊資料rblk-17及區塊資料rblk-18合併後區塊資料「QuotaMonitor created object count」及區塊資料rblk-19之字串「evaluator」進行合併處理,產生合併後區塊資料「QuotaMonitor created object count evaluator」,以及判斷合併後區塊資料「QuotaMonitor created object count evaluator」之資料完整度是否大於或等於臨界值。
處理器13仍無法判斷出區塊資料rblk-15、區塊資料rblk-16、區塊資料rblk-17、區塊資料rblk-18及區塊資料rblk-19合併後區塊資料「QuotaMonitor created object count evaluator」完整的涵義,因此合併後區塊資料「QuotaMonitor created object count evaluator」之資料完整度仍小於臨界值100%,故處理器13繼續判斷區塊資料rblk-20之資料完整度。
針對區塊資料rblk-20之字串「for」,處理器13所代表之訊息不完整,因此判斷其資料完整度小於臨界值100%。因此,處理器13繼續將區塊資料rblk-15、區塊資料rblk-16、區塊資料rblk-17、區塊資料rblk-18及區塊資料rblk-19合併後區塊資料「QuotaMonitor created object count evaluator」與區塊資料rblk-20之字串「for」進行合併處理,產生合併後區塊資料「QuotaMonitor created object count evaluator for」,以及判斷合併後區塊資料「QuotaMonitor created object count evaluator for」之資料完整度是否大於或等於臨界值。
由於處理器13仍無法判斷出區塊資料rblk-15、區塊資料rblk-16、區塊資料rblk-17、區塊資料rblk-18、區塊資料rblk-19及區塊資料rblk-20合併後區塊資料「QuotaMonitor created object count evaluator for」完整的涵義,因此合併後區塊資料「QuotaMonitor created object count evaluator for」之資料完整度仍小於臨界值,故處理器13繼續判斷區塊資料rblk-21之資料完整度。
區塊資料rblk-21之字串「alertmanagers.monitoring.coreos.com」,處理器13仍無法判斷區塊資料rblk-21欲表達之涵義,故區塊資料rblk-21所代表之訊息不完整,因此判斷其資料完整度小於臨界值100%。在此情況下,處理器13將區塊資料rblk-15、區塊資料rblk-16、區塊資料rblk-17、區塊資料rblk-18、區塊資料rblk-19及區塊資料rblk-20合併後區塊資料「QuotaMonitor created object count evaluator for」與區塊資料rblk-21之字串「alertmanagers.monitoring.coreos.com」進行合併處理,以產生合併後區塊資料「QuotaMonitor created object count evaluator for alertmanagers.monitoring.coreos.com」,且判斷其所代表之涵義為觸發訊息。因此,處理器13將區塊資料rblk-15、區塊資料rblk-16、區塊資料rblk-17、區塊資料rblk-18、區塊資料rblk-19、區塊資料rblk-20及區塊資料rblk-21之字串合併後之字串「QuotaMonitor created object count evaluator for alertmanagers.monitoring.coreos.com」作為合併後區塊資料cblk-15,如圖3所示。
於進行完合併處理的程序後,處理器13將該等合併後區塊資料cblk-10~cblk-21作為對應於原始日誌資料OLD1之一日誌樣板L2。日誌樣板L2中包含事件E10、事件E11、事件E12、事件E13、事件E14及事件E15。事件E10對應至合併後區塊資料cblk-10。事件E11對應至合併後區塊資料cblk-11。事件E12對應至合併後區塊資料cblk-12。事件E13對應至合併後區塊資料cblk-13。事件E14對應至合併後區塊資料cblk-14。事件E15對應至合併後區塊資料cblk-15。
再舉例而言,請參考圖4及圖5,其係描繪本發明之日誌處理裝置處理原始日誌資料之一實施情境。處理器13基於原始日誌資料OLD3中各字串間之空格,將原始日誌資料OLD3拆分為17個區塊資料blk-22~blk-38後,逐一判斷各區塊資料中是否存在數字變量。
處理器13判斷區塊資料blk-22中存在數字變量「1586574010733936849」時,進一步判斷區塊資料blk-22中之字串之資料屬性為日誌系統時間,因此處理器13以對應日誌系統時間之代表碼「EPOCH」取代數字變量「1586574010733936849」,如圖4所示之區塊資料rblk-22。
接著,處理器13判斷區塊資料blk-23之字串「I0411」中存在數字變量時,進一步判斷區塊資料blk-23中之字串之資料屬性為日誌記錄等級/應用程式日期,因此處理器13以對應月、日的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-23為「IMMDD」。
處理器13判斷區塊資料blk-24中之字串「03:00:10.733881」存在數字變量時,進一步判斷區塊資料blk-24中之字串之資料屬性為應用程式時間,因此處理器13以應用程式時間中分別對應至小時、分鐘及秒鐘之代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-12為「HH:MM:SS.SSSSSS」。
處理器13判斷區塊資料blk-25中之字串「1」存在數字變量時,進一步判斷區塊資料blk-25中之字串之資料屬性為數字,因此處理器13以對應一般數字的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-25為「NUM」。
處理器13判斷區塊資料blk-26中之字串「trace.go:116,」存在數字變量時,進一步判斷區塊資料blk-26中之字串之資料屬性為觸發程式。由於在區塊資料blk-26中觸發程式之資料屬性並非單純以數字變量「116」表示,因此處理器13以對應一般數字之代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-26為「trace.go:NUM,」。
處理器13判斷區塊資料blk-27中之字串「Trace[3365106]:」存在數字變量時,進一步判斷區塊資料blk-27中之字串之資料屬性為觸發追跡。然而,因此單獨分析區塊資料blk-27時,數字變量「3365106」不具任何涵義,故處理器13以對應一般數字之代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-27為「Trace[NUM]:」。
處理器13依序判斷區塊資料blk-28之字串「"Get"」、區塊資料blk-29之字串「url:/api/v1/namespaces/kube-system/endpoints/kube-controller- manager」及區塊資料blk-30之字串「(started:」中不存在數字變量,則不變更區塊資料blk-28~blk-30之內容,因此直接將字串「"Get"」、「url:/api/v1/namespaces/kube-system/endpoints/kube-controller- manager」及「(started:」分別視為已正規化表示之區塊資料rblk-28~rblk-30。
處理器13判斷區塊資料blk-31之字串「2020-04-11」中存在數字變量時,進一步判斷區塊資料blk-31中之字串之資料屬性為日期,因此處理器13以對應年、月、日的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-31為「YYYY-MM-DD」。
處理器13判斷區塊資料blk-32之字串「3:00:09.845952954」中存在數字變量時,進一步判斷區塊資料blk-32中之字串之資料屬性為時間,因此處理器13以對應小時、分鐘及秒鐘的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-32為「HH:MM:SS.SSSSSSSSS」。
處理器13判斷區塊資料blk-33中之字串「+0000」存在數字變量時,進一步判斷區塊資料blk-33中之字串之資料屬性為時間。雖區塊資料blk-33之資料屬性為時間,由於在區塊資料blk-33中「+0000」未表示完整時間,因此單獨分析區塊資料blk-33時,數字變量「0000」不具任何涵義,因此處理器13以對應一般數字之代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-33為「+NUM」。
處理器13依序判斷區塊資料blk-34之字串「UTC」中不存在數字變量,則不變更區塊資料blk-34之內容,因此直接將字串「UTC」視為已正規化表示之區塊資料rblk-34。
處理器13判斷區塊資料blk-35之字串「m=+1458985.421484430)」中存在數字變量時,進一步判斷區塊資料blk-35中之字串之資料屬性,然而,單獨分析區塊資料blk-35時,數字變量「1458985.421484430」不具任何涵義,因此處理器13以對應一般數字的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-35為「m=+NUM.NUM)」。
處理器13依序判斷區塊資料blk-36之字串「(total」及區塊資料blk-37之字串「time:」中不存在數字變量,則不變更區塊資料blk-36及區塊資料blk-37之內容,因此直接將字串「(total」及「time:」視為已正規化表示之區塊資料rblk-36及區塊資料rblk-37。
處理器13判斷區塊資料blk-38之字串「887.906026ms):」中存在數字變量時,進一步判斷區塊資料blk-38中之字串之資料屬性為時間。雖區塊資料blk-38之資料屬性為時間,然而單獨分析區塊資料blk-38時,數字變量「887.90602」不具任何涵義,因此處理器13以對應一般數字的代表碼取代字串中之數字變量,數字變量被取代後以正規表示式顯示之區塊資料rblk-38為「NUM.NUMms):」。
當區塊資料blk-22~blk-38中之數字變量皆以相應的代表碼取代後,處理器13開始進行合併處理的程序,並從區塊資料rblk-22~rblk-38中的第一個區塊資料rblk-22開始依序判斷各區塊資料rblk-22~rblk-38之資料完整度,以確認各區塊資料rblk-22~rblk-38是否具有完整的涵義。
區塊資料rblk-22之字串「EPOCH」為日誌系統時間,處理器13判斷區塊資料rblk-22具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-22進行合併處理後產生之合併後區塊資料cblk-22為「EPOCH」。區塊資料rblk-23之字串「IMMDD」為應用程式日期,處理器13判斷區塊資料rblk-23具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-23進行合併處理後產生之合併後區塊資料cblk-23為「IMMDD」。區塊資料rblk-24之字串「HH:MM:SS.SSSSSS」為應用程式時間,處理器13判斷區塊資料rblk-24具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-24進行合併處理後產生之合併後區塊資料cblk-24為「HH:MM:SS.SSSSSS」。
區塊資料rblk-25之字串「NUM」代表數字,處理器13判斷區塊資料rblk-25具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-25進行合併處理後產生之合併後區塊資料cblk-25為「NUM」。
區塊資料rblk-26之字串「trace.go:NUM,」為觸發程式,處理器13判斷區塊資料rblk-26具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-26進行合併處理後產生之合併後區塊資料cblk-26為「trace.go:NUM,」。區塊資料rblk-27之字串「Trace[NUM]:」為觸發追跡,處理器13判斷區塊資料rblk-27具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-27進行合併處理後產生之合併後區塊資料cblk-27為「Trace[NUM]:」。
區塊資料rblk-28之字串「"Get"」為觸發指令,在字串「"Get"」中包含描述句子時會使用到的引號,且在區塊資料rblk-28中同時包含前後兩個引號,因此隱含的表示區塊資料rblk-28中之字串屬於完整句子,處理器13判斷區塊資料rblk-28具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-28進行合併處理後產生之合併後區塊資料cblk-28為「"Get"」。
區塊資料rblk-29之字串「url:/api/v1/namespaces/kube-system/ endpoints/kube-controller-manager」為觸發訊息,處理器13判斷區塊資料rblk-29具有完整涵義,其資料完整度等於臨界值100%,故區塊資料rblk-29進行合併處理後產生之合併後區塊資料cblk-29為「url:/api/v1/namespaces/kube-system/endpoints/kube-controller-manager」。
區塊資料rblk-30之字串「(started:」所代表之訊息不完整,因此處理器13判斷其資料完整度小於臨界值100%。此外,在字串「(started:」中包含括號,且在區塊資料rblk-30中僅包含一個左括號,而未包含右括號,因此隱含的表示區塊資料rblk-30中之字串為不完整句子。
接著,處理器13判斷區塊資料rblk-31之字串「YYYY-MM-DD」包含年、月、日,屬於日期,應將區塊資料rblk-31之資料完整度判斷為等於臨界值。然而,區塊資料rblk-23已記錄原始日誌資料OLD3之應用程式日期,而針對同一個日誌事件不應存在兩個不同的應用程式日期,且與區塊資料rblk-31連續之前一個區塊資料rblk-30屬於不完整的句子,因此處理器13判斷區塊資料rblk-31之日期應為區塊資料rblk-30之字串「(started:」所欲表達之涵義中存在的日期,故判斷區塊資料rblk-31之資料完整度小於臨界值,並將區塊資料rblk-31與區塊資料rblk-30合併為「(started: YYYY-MM-DD」,再判斷合併後區塊資料「(started: YYYY-MM-DD」之資料完整度是否大於或等於臨界值。由於合併後區塊資料「(started: YYYY-MM-DD」所代表之訊息不完整,因此判斷其資料完整度小於臨界值100%,因此處理器13繼續判斷區塊資料rblk-32之資料完整度。
區塊資料rblk-32之字串「HH:MM:SS.SSSSSSSSS」包含小時、分鐘、秒鐘,屬於應用程式時間,應將區塊資料rblk-32之資料完整度判斷為等於臨界值。然而,區塊資料rblk-24已記錄原始日誌資料OLD3之應用程式時間,而針對同一個日誌事件不應存在兩個不同的應用程式時間,故處理器13判斷區塊資料rblk-32之時間應為區塊資料rblk-30之字串「(started:」所欲表達之涵義中存在的時間,故判斷區塊資料rblk-32之資料完整度小於臨界值,並將區塊資料rblk-30及區塊資料rblk-31之合併後區塊資料「(started: YYYY-MM-DD」與區塊資料rblk-32之字串「HH:MM:SS.SSSSSSSSS」合併後,再判斷合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS」之資料完整度是否等於臨界值。由於合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS」所代表之訊息不完整,因此處理器13判斷其資料完整度小於臨界值100%,並接著繼續判斷區塊資料rblk-33之資料完整度。
區塊資料rblk-33之字串「+NUM」僅為一般數字代表碼,故處理器13無法基於單一字串判斷區塊資料rblk-33欲表達之涵義,故區塊資料rblk-33所代表之訊息不完整,其資料完整度小於臨界值100%。類似於前述處理方式,在合併區塊資料rblk-30、區塊資料rblk-31及區塊資料rblk-32進行合併處理後產生之合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS」之資料完整度及區塊資料rblk-33之資料完整度皆小於臨界值(即不完整)的情況下,處理器13將合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS」與區塊資料rblk-18之字串「+NUM」進行合併處理,以產生合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM」,以及判斷合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM」之資料完整度是否大於或等於臨界值。
然而,針對合併區塊資料rblk-30、區塊資料rblk-31、區塊資料rblk-32及區塊資料rblk-33之字串後,處理器13仍無法判斷出(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM」完整的涵義,因此合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM」之資料完整度仍小於臨界值,故處理器13繼續判斷區塊資料rblk-34之資料完整度。
區塊資料rblk-34之字串「UTC」代表的涵義為世界協調時間,在區塊資料rblk-34之前或之後的區塊資料中應存在與時間相關的代表碼,因此單就區塊資料rblk-34之字串「UTC」所代表之訊息仍不完整,其資料完整度小於臨界值100%。由於區塊資料rblk-30、區塊資料rblk-31、區塊資料rblk-32及區塊資料rblk-33之合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM」中已包含與時間相關之代表碼「HH:MM:SS.SSSSSSSSS」,故處理器13判斷單獨的區塊資料rblk-34之資料完整度小於臨界值,並將區塊資料rblk-34之字串「UTC」與「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM」進行合併處理,以產生合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM UTC」,以及判斷合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM UTC」之資料完整度是否大於或等於臨界值。
然而,處理器13仍無法判斷出「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM UTC」完整的涵義,因此合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM UTC」之資料完整度仍小於臨界值,故處理器13繼續判斷區塊資料rblk-35之資料完整度。
區塊資料rblk-35之字串「m=+NUM.NUM)」所代表之訊息仍不完整,其資料完整度小於臨界值100%,在字串「m=+NUM.NUM)」中包含括號,且在區塊資料rblk-35中僅包含一個右括號,而未包含左括號,因此隱含的表示區塊資料rblk-35中之字串不完整句子,故處理器13將區塊資料rblk-30、區塊資料rblk-31、區塊資料rblk-32、區塊資料rblk-33及區塊資料rblk-34之合併後區塊資料「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM UTC」與區塊資料rblk-35之字串「m=+NUM.NUM)」進行合併處理後,產生合併後區塊資料cblk-30「(started: YYYY-MM-DD HH:MM:SS.SSSSSSSSS +NUM UTC m=+NUM.NUM)」,且判斷其所代表之涵義為開始時間,具有完整涵義,故合併後區塊資料cblk-30之資料完整度等於臨界值。
須說明者,為更快速判斷區塊資料rblk-22~rblk-38中那些區塊資料需要被合併為合併後區塊資料,處理器13可依據前述描述句子之引號,或括號作為第二規則,將前後引號或左右括號內之該些區塊資料進行合併處理。
針對區塊資料rblk-36之字串「(total」,處理器13判斷所代表之訊息不完整,其資料完整度小於臨界值100%。類似於前述內容,在字串「(total」中包含括號,且在區塊資料rblk-36中僅包含一個左括號,而未包含右括號,因此隱含的表示區塊資料rblk-36中之字串不完整句子。
接著,處理器13判斷區塊資料rblk-37之字串「time」的意思為時間,但在區塊資料rblk-37不包含與時間相關之代表碼,故區塊資料rblk-37所代表之訊息仍不完整,其資料完整度小於臨界值100%。因此,處理器13將區塊資料rblk-36與區塊資料rblk-37進行合併處理,以產生合併後區塊資料「(total time」,再判斷合併後區塊資料「(total time」之資料完整度是否大於或等於臨界值。由於合併後區塊資料「(total time」之意思係表示整體時間,且同樣為包含與時間相關之代表碼,故處理器13仍無法解讀合併後區塊資料「(total time」所代表的涵義,並判斷合併後區塊資料「(total time」之資料完整度小於臨界值,因此處理器13繼續判斷區塊資料rblk-38之資料完整度。
區塊資料rblk-38之字串「NUM.NUMms):」所代表之訊息仍不完整,其資料完整度小於臨界值100%。此外,在字串「NUM.NUMms):」中包含括號,且在區塊資料rblk-38中僅包含一個右括號,而未包含左括號,因此隱含的表示區塊資料rblk-38中之字串不完整句子,故處理器13將區塊資料rblk-36、區塊資料rblk-37對應之合併後區塊資料「(total time」與區塊資料rblk-38之字串「NUM.NUMms):」進行合併處理後,產生合併後區塊資料cblk-36「(total time NUM.NUMms):」,且判斷其所代表之涵義為執行時間,具有完整涵義,故合併後區塊資料cblk-36之資料完整度等於臨界值。
於進行完合併處理的程序後,處理器13將該等合併後區塊資料cblk-22~cblk-36作為對應於原始日誌資料OLD3之一日誌樣板L3。日誌樣板L3中包含事件E22、事件E23、事件E24、事件E25、事件E26、事件E27、事件E28、事件E29、事件E30及事件E36。事件E22對應至合併後區塊資料cblk-22。事件E23對應至合併後區塊資料cblk-23。事件E24對應至合併後區塊資料cblk-24。事件E25對應至合併後區塊資料cblk-25。事件E26對應至合併後區塊資料cblk-26。事件E27對應至合併後區塊資料cblk-27。事件E28對應至合併後區塊資料cblk-28。事件E29對應至合併後區塊資料cblk-29。事件E30對應至合併後區塊資料cblk-30。事件E36對應至合併後區塊資料cblk-36。
須說明者,上述原始日誌資料OLD1、OLD2、OLD3內容,及解析方式與各區塊資料的涵義僅為舉例說明,並非用以限制本發明。
本發明第二實施例如圖6-8所示。第二實施例為第一實施例之延伸。於本實施例中,儲存器11更用以儲存一日誌資料庫112,日誌資料庫112中儲存複數已記錄日誌樣板RL1~RL4。已記錄日誌樣板RL1包含事件E1、E2、E3、E9、E11,已記錄日誌樣板RL2包含事件E1、E2、E3、E8、E9、E16、E17,已記錄日誌樣板RL3包含事件E10、E11、E12、E13、E14、E15,已記錄日誌樣板RL4包含事件E22、E23、E24、E25、E26、E27、E28、E29、E30、E40。
為避免日誌資料庫112中儲存過多重複的日誌樣板,造成儲存空間的浪費,處理器13之處理器13於產生日誌樣板後,先將日誌樣板與該等已記錄日誌樣板RL1~RL4進行比對,以判斷日誌資料庫112中是否存在與目前產生之日誌樣板相同之已記錄日誌樣板。若日誌資料庫112中不存在與目前產生之日誌樣板相同之已記錄日誌樣板,則處理器13將日誌樣板儲存於日誌資料庫112。反之,若日誌資料庫112中存在與目前產生之日誌樣板相同之已記錄日誌樣板,則處理器13不重複將日誌樣板儲存於日誌資料庫112。
舉例而言,請參考圖2及圖7,處理器13於產生日誌樣板L1後,會先將日誌樣板L1分別與已記錄日誌樣板RL1~RL4進行比對,以判斷於日誌資料庫112中是否已存在與日誌樣板L1相同之已記錄日誌樣板。日誌樣板L1包含事件E1、E2、E3、E4、E5、E6、E9,而在日誌資料庫112中之已記錄日誌樣板RL1~RL4中,不存在組成樣板的事件結構與日誌樣板L1相同之已記錄日誌樣板,故處理器13於比對後,將日誌樣板L1儲存於日誌資料庫112中。
再舉例而言,請參考圖3及圖7,處理器13於產生日誌樣板L2後,同樣會先將日誌樣板L2分別與已記錄日誌樣板RL1~RL4進行比對,以判斷於日誌資料庫112中是否已存在與日誌樣板L2相同之已記錄日誌樣板。日誌樣板L2包含事件E10、E11、E12、E13、E14、E15,而在日誌資料庫112中之已記錄日誌樣板RL1~RL4中,已存在組成樣板的事件結構與日誌樣板L2相同之已記錄日誌樣板RL3,故處理器13於比對後,不會將日誌樣板L2儲存於日誌資料庫112中。
再舉例而言,請參考圖4及圖7,處理器13於產生日誌樣板L3後,同樣會先將日誌樣板L3分別與已記錄日誌樣板RL1~RL4進行比對,以判斷於日誌資料庫112中是否已存在與日誌樣板L3相同之已記錄日誌樣板。日誌樣板L3包含事件E22、E23、E24、E25、E26、E27、E28、E29、E30、E36,而在日誌資料庫112中之已記錄日誌樣板RL1~RL4中,雖存在組成樣板的事件結構與日誌樣板L3大致相同之已記錄日誌樣板RL4,但由於已記錄日誌樣板RL4所包含之事件並未與日誌樣板L3完全相同,故處理器13於比對後,仍會將日誌樣板L3儲存於日誌資料庫112中。
於其他實施例中,處理器13對該等已記錄日誌樣板RL1~RL4進行一編號處理,使各已記錄日誌樣板RL1~RL4對應至一日誌代碼。日誌處理裝置1可自外部的電子裝置2接收一查詢請求訊息。當查詢請求訊息中包含該等日誌代碼中之一代碼時,根據代碼,自日誌資料庫112中擷取對應該代碼之已記錄日誌樣板,並將對應代碼之已記錄日誌樣板傳送至電子裝置2。
舉例而言,如圖8所示,已記錄日誌樣板RL1對應至日誌代碼CL1、已記錄日誌樣板RL2對應至日誌代碼CL2、已記錄日誌樣板RL3對應至日誌代碼CL3以及已記錄日誌樣板RL4對應至日誌代碼CL4。電子裝置2傳送之查詢請求訊息202中載有代碼CL2,日誌處理裝置1收到查詢請求訊息後,根據代碼CL2,自日誌資料庫112中找到其對應之已記錄日誌樣板RL2,並將日記錄日誌樣板RL2及其包含之事件E1、E2、E3、E8、E9、E16、E17。
於其他實施例中,電子裝置2儲存日誌資料庫212,日誌資料庫212中儲存之已記錄日誌樣板與日誌資料庫112相同。電子裝置2中之日誌資料庫112會不斷被更新,因此電子裝置2之日誌資料庫212中僅儲存較新的(例如:近三個月內)已記錄日誌樣板,若查詢請求訊息中之代碼不存在於電子裝置2之日誌資料庫212中,則電子裝置2將查詢請求訊息傳送至日誌處理裝置1,以獲得對應代碼之已記錄日誌樣板。
本發明第三實施例如圖9-11所示。第三實施例為第二實施例之延伸。於本實施例中,儲存器11更用以儲存一事件資料庫114,亦即儲存器11同時儲存日誌資料庫112及事件資料庫114。事件資料庫114中儲存複數已記錄事件以及各已記錄事件對應之合併後區塊資料。事件E1對應之合併後區塊資料cblk-1為「EPOCH」,事件E2對應之合併後區塊資料cblk-2為「level=info」,事件E3對應之合併後區塊資料cblk-3為「ts=YYYY-MM-DDTHH:MM:SS.SSSZ」等。
於本實施例中,日誌處理裝置1之處理器13於產生日誌樣板後,須將日誌樣板包含的所有事件儲存到事件資料庫114中。為避免事件資料庫114中儲存過多重複的事件及其對應之合併後區塊資料內容,造成儲存空間的浪費,處理器13先將各事件與事件資料庫114中之已記錄事件進行比對,以判斷事件資料庫114中是否存在與目前產生之日誌樣板中之該些事件相同之已記錄事件。
若事件資料庫114中不存在與目前產生之日誌樣板所包含之該些事件相同之已記錄事件,則處理器13將目前產生之日誌樣板所包含之該些事件及該些事件所對應之合併後區塊資料儲存於事件資料庫114。反之,若事件資料庫112中存在與目前產生之日誌樣板所包含之該些事件相同之已記錄日誌樣板,則處理器13不將重複之事件儲存於事件資料庫114中。
舉例而言,請參考圖2及圖10,處理器13於產生日誌樣板L1後,會先將日誌樣板L1包含之事件與已記錄事件進行比對,以判斷於事件資料庫114中是否已存在與日誌樣板L1包含之該些事件相同之已記錄事件。日誌樣板L1包含事件E1、E2、E3、E4、E5、E6、E9,而在事件資料庫114中之已記錄事件中,存在已記錄事件E1、E2、E3,故處理器13於比對後,僅將事件E4、E5、E6、E9及其對應之合併後區塊資料儲存於事件資料庫114中。
再舉例而言,請參考圖3及圖10,處理器13於產生日誌樣板L2後,同樣會先將日誌樣板L2包含之事件與已記錄事件進行比對,以判斷於事件資料庫114中是否已存在與日誌樣板L2包含之該些事件相同之已記錄事件。日誌樣板L2包含事件E10、E11、E12、E13、E14、E15,而在事件資料庫114中之已記錄事件中,不存在任何與事件E10、E11、E12、E13、E14、E15相同之已記錄事件,故處理器13於比對後,將日誌樣板L2包含的所有事件E10、E11、E12、E13、E14、E15及其對應之合併後區塊資料儲存於事件資料庫114中。
再舉例而言,請參考圖4及圖10,處理器13於產生日誌樣板L3後,同樣會先將日誌樣板L3包含之事件與已記錄事件進行比對,以判斷於事件資料庫114中是否已存在與日誌樣板L3包含之該些事件相同之已記錄事件。日誌樣板L3包含事件E22、E23、E24、E25、E26、E27、E28、E29、E30、E36,而在事件資料庫114中之已記錄事件中,僅存在與事件E36相同之已記錄事件,故處理器13於比對後,將日誌樣板L3包含的所有事件E22、E23、E24、E25、E26、E27、E28、E29、E30及其對應之合併後區塊資料儲存於事件資料庫114中。
於其他實施例中,處理器13對該等已記錄日誌樣板進行編號處理,使各已記錄日誌樣板對應至一日誌代碼,以及對該等已記錄事件進行編號處理,使各已記錄事件對應至一事件代碼。日誌處理裝置1自電子裝置2接收查詢請求訊息。當查詢請求訊息中包含該等事件代碼中之一代碼時,處理器13根據代碼,自事件資料庫114中擷取對應代碼之已記錄事件,以及自日誌資料庫112中擷取包含代碼對應已記錄事件之已記錄日誌樣板,並將對應該代碼之已記錄事件以及包含該代碼對應之已記錄事件之已記錄日誌樣板傳送至電子裝置2。
舉例而言,如圖11所示,已記錄日誌樣板RL1對應至日誌代碼CL1、已記錄日誌樣板RL2對應至日誌代碼CL2、已記錄日誌樣板RL3對應至日誌代碼CL3以及已記錄日誌樣板RL4對應至日誌代碼CL4。電子裝置2傳送之查詢請求訊息204中載有代碼CE2,日誌處理裝置1收到查詢請求訊息204後,根據代碼CE2,事件資料庫114中找到其對應之已記錄事件E2及已記錄事件E2對應之合併後區塊資料cblk-2,並將已記錄事件E2及已記錄事件E2對應之合併後區塊資料cblk-2傳送至電子裝置2。
於其他實施例中,日誌處理裝置1更進一步自日誌資料庫112中找到包含已記錄事件E2之已記錄日誌樣板RL1、RL2,並將已記錄事件E2、已記錄事件E2對應之合併後區塊資料cblk-2及包含已記錄事件E2之已記錄日誌樣板RL1、RL2傳送至電子裝置2中。
於其他實施例中,電子裝置2中之日誌資料庫212及事件資料庫214會不斷被更新,因此電子裝置2之日誌資料庫212中僅儲存較新的(例如:近三個月內)已記錄日誌樣板,以及事件資料庫214中僅儲存較新的已記錄事件。查詢請求訊息中之代碼不存在於電子裝置2之事件資料庫214中,則電子裝置2將查詢請求訊息傳送至日誌處理裝置1,以獲得對應之已記錄事件及包含已記錄事件之已記錄日誌樣板。
本發明第四實施例如圖12-13所示。第四實施例為第三實施例之延伸。於本實施例中,儲存器11更用以儲存一變量資料庫116,亦即儲存器11同時儲存日誌資料庫112、事件資料庫114及變量資料庫116,如圖12所示。日誌處理裝置1之處理器13判斷該等合併後區塊資料中是否存在一預設資料屬性,若該等合併後區塊資料中存在預設資料屬性,則根據預設資料屬性,將與預設資料屬性相關之至少一事件儲存於變量資料庫中。預設資料屬性相關之合併後區塊資料可用於判斷原始日誌資料是否異常,因此預設資料屬性通常與時間相關,例如:執行時間、開始時間、結束時間、儲存檔案大小、儲存起始位置、儲存終止位置、記憶體起始位置、記憶體終止位置、網路封包起始位置、網路封包終止位置、網路傳輸速率、網路接收速率等,但不限於此。
舉例而言,請參考圖2及圖13,於前述實施例中之日誌樣板L1中之合併後區塊資料cblk-1、cblk-2、cblk-3、cblk-4、cblk-5、cblk-6、cblk-9中,合併後區塊資料cblk-9之資料屬性為執行時間,屬於預設資料屬性。然而,僅儲存合併後區塊資料cblk-9至變量資料庫116中無法用於判別異常,因此需儲存與合併後區塊資料cblk-9之執行時間相關之合併後區塊資料cblk-4、cblk-5、cblk-6。各合併後區塊資料cblk-4、cblk-5、cblk-6、cblk-9對應之事件E4、E5、E6、E9組成變量樣板V1,變量樣板V1會記錄各事件E4、E5、E6、E9對應之合併後區塊資料cblk-4、cblk-5、cblk-6、cblk-9。
舉例而言,請參考圖3及圖13,於前述實施例中之日誌樣板L2中,不存在合併後區塊資料之資料屬性為預設資料屬性。因此,日誌樣板L2中,不包含任何變量樣板。換言之,並非所有日誌樣板中都會包含變量樣板。
再舉例而言,請參考圖5及圖13,於前述實施例中之日誌樣板L3中之合併後區塊資料cblk-22、cblk-23、cblk-24、cblk-25、cblk-26、cblk-27、cblk-28、cblk-29、cblk-30、cblk-36中,合併後區塊資料cblk-30之資料屬性為開始時間,屬於預設資料屬性,以及合併後區塊資料cblk-36之資料屬性為執行時間,同樣屬於預設資料屬性。因此,處理器13須將與合併後區塊資料cblk-30及合併後區塊資料cblk-36相關之合併後區塊資料cblk-22、cblk-23、cblk-24、cblk-25、cblk-26、cblk-27、cblk-28、cblk-29皆儲存於變量資料庫116中。各合併後區塊資料cblk-22、cblk-23、cblk-24、cblk-25、cblk-26、cblk-27、cblk-28、cblk-29、cblk-30、cblk-36對應之事件E22、E23、E24、E2、5E26、E27、E28、E29、E30、E36組成變量樣板V2,變量樣板V2會記錄各事件E22、E23、E24、E2、5E26、E27、E28、E29、E30、E36對應之合併後區塊資料cblk-22、cblk-23、cblk-24、cblk-25、cblk-26、cblk-27、cblk-28、cblk-29、cblk-30、cblk-36。
本發明第五實施例係描述一日誌處理方法,其流程圖如圖14所示。日誌處理方法用於一日誌處理裝置,例如:前述實施例之日誌處理裝置1。日誌處理裝置包含一儲存器以及一處理器。處理器電性連接至儲存器。儲存器儲存一原始日誌資料。日誌處理方法由處理器所執行,其包含步驟說明如下。
首先,於步驟S1402中,基於一第一規則,將原始日誌資料拆分為複數區塊資料。於一實施例中,原始日誌資料由複數字串所組成,處理器將該等字串間之一空格作為該第一規則,以將原始日誌資料拆分為該等區塊資料。
於步驟S1404中,根據各區塊資料之一資料屬性,將各區塊資料中之一數字變量轉換為一代表碼。於步驟S1406中,根據各區塊資料之一資料完整度決定是否將連續之該等區塊資料進行一合併處理,以產生複數合併後區塊資料。於步驟S1408中,將該等合併後區塊資料作為對應於原始日誌資料之一日誌樣板。各合併後區塊資料對應至一事件。
於其他實施例中,合併處理係基於一第二規則,依序判斷各區塊資料之一資料完整度。當該等區塊資料中至少連續二者之該資料完整度皆小於一臨界值時,合併該等區塊資料中該至少連續二者。當該等區塊資料中該至少連續二者之其中之一之該資料完整度小於該臨界值,且連續之另一之該資料完整度大於等於該臨界值時,不合併該等區塊資料中該至少連續二者。於一實施例中,第二規則係一語意分析。
於其他實施例中,儲存器更儲存一日誌資料庫,日誌資料庫中儲存複數已記錄日誌樣板。日誌處理方法更包含步驟:於產生該日誌樣板後,將該日誌樣板與該等已記錄日誌樣板進行比對,並將該日誌樣板儲存於該日誌資料庫。
此外,於其他實施例中,日誌資料庫中儲存複數已記錄日誌樣板,日誌處理方法更包含步驟:對該等已記錄日誌樣板進行一編號處理,使各已記錄日誌樣板對應至一日誌代碼,並自一電子裝置接收一查詢請求訊息,以及當該查詢請求訊息中包含該等日誌代碼中之一代碼時,根據該代碼,自日誌資料庫中擷取對應該代碼之已記錄日誌樣板,並將對應該代碼之已記錄日誌樣板傳送至電子裝置。
於其他實施例中,除了日誌資料庫以外,儲存器更儲存一事件資料庫,且事件資料庫中儲存複數已記錄事件。日誌處理方法更包含步驟:於產生該等事件後,將各該事件與該等已記錄事件進行比對,並產生一比對結果,並將該等事件及各該事件對應之該合併後區塊資料儲存於該事件資料庫。
此外,於其他實施例中,日誌處理方法更包含步驟:對該等已記錄日誌樣板進行一編號處理,使各已記錄日誌樣板對應至一日誌代碼,以及對該等已記錄事件進行該編號處理,使各已記錄事件對應至一事件代碼。接著,自電子裝置接收查詢請求訊息。當查詢請求訊息中包含該等事件代碼中之一代碼時,根據該代碼,自事件資料庫中擷取對應該代碼之已記錄事件,以及自日誌資料庫中擷取包含該代碼對應之已記錄事件之已記錄日誌樣板,並將對應該代碼之已記錄事件以及包含該代碼對應之已記錄事件之已記錄日誌樣板傳送至電子裝置。
於其他實施例中,除了日誌資料庫及事件資料庫以外,儲存器更儲存一變量資料庫,且日誌處理方法更包含步驟:判斷該等合併後區塊資料中是否存在一預設資料屬性,以及根據預設資料屬性,將與預設資料屬性相關之至少一事件儲存於變量資料庫中。
除了上述步驟,本發明之日誌處理方法亦能執行在所有前述實施例中所闡述之所有操作並具有所有對應之功能,所屬技術領域具有通常知識者可直接瞭解此實施例如何基於所有前述實施例執行此等操作及具有該等功能,故不贅述。
綜上所述,本發明之日誌紀錄解析機制在解析原始日誌資料的過程中,可萃取引發日誌記錄的事件,並分析變量變化,且本發明解析原始日誌資料的方法無須因不同資料型態之原始日誌記錄而改變,亦不存在解析結果因規則套用順序而有所不同。據此,本發明之日誌記錄解析機制可滿足各種複雜日誌內容的解析,並於解析後透過不同資料庫儲存相應之資料,以供使用者可快速識別原始日誌資料。另外,透過區塊化資料的處理方式,不僅可提升運算效能亦可獲得水平擴展性。
上述之實施例僅用來例舉本發明之實施態樣,以及闡釋本發明之技術特徵,並非用來限制本發明之保護範疇。任何熟悉此技術者可輕易完成之改變或均等性之安排均屬於本發明所主張之範圍,本發明之權利保護範圍應以申請專利範圍為準。
1:日誌處理裝置
11:儲存器
13:處理器
112:日誌資料庫
114:事件資料庫
116:變量資料庫
2:電子裝置
202:查詢請求訊息
204:查詢請求訊息
212:日誌資料庫
214:事件資料庫
OLD、OLD1、OLD2、OLD3:原始日誌資料
L1、L2、L3:日誌樣板
RL1、RL2、RL3、RL4:已記錄日誌樣板
CL1、CL2、CL3、CL4:日誌代碼
CE1~CE36:事件代碼
blk-1~blk-38:區塊資料
rblk-1~rblk-38:區塊資料
cblk-1~cblk-38:合併後區塊資料
E1~E38:事件
V1、V2:變量樣板
S1402~S1408:步驟
圖1係本發明之日誌處理裝置之示意圖;
圖2描繪本發明之日誌處理裝置處理原始日誌資料之一實施情境;
圖3描繪本發明之日誌處理裝置處理原始日誌資料之一實施情境;
圖4描繪本發明之日誌處理裝置處理原始日誌資料之一實施情境;
圖5描繪本發明之日誌處理裝置處理原始日誌資料之一實施情境;
圖6係本發明之日誌處理裝置之示意圖;
圖7描繪本發明之日誌資料庫之示意圖;
圖8描繪本發明查詢日誌樣板之一實施情境;
圖9係本發明之日誌處理裝置之示意圖;
圖10描繪本發明之事件資料庫之示意圖;
圖11描繪本發明查詢事件及日誌樣板之一實施情境;
圖12係本發明之日誌處理裝置之示意圖;
圖13描繪本發明之變量資料庫之示意圖;以及
圖14係本發明之日誌處理方法之流程圖。
無
S1402~S1408:步驟
Claims (20)
- 一種日誌處理裝置,包含:一儲存器,用以儲存一原始日誌資料;以及一處理器,電性連接至該儲存器,並用以執行下列操作:基於一第一規則,將該原始日誌資料拆分為複數區塊資料;判斷各該區塊資料中是否具有一數字變量,並根據各該區塊資料之一資料屬性,將各該區塊資料中之該數字變量轉換為一代表碼,並利用該代表碼取代該數字變量;根據各該區塊資料之一資料完整度決定是否將連續之該等區塊資料進行一合併處理,以產生複數合併後區塊資料;以及將該等合併後區塊資料作為對應於該原始日誌資料之一日誌樣板,其中各該合併後區塊資料對應至一事件。
- 如請求項1所述之日誌處理裝置,其中該原始日誌資料由複數字串所組成,該處理器將該等字串間之一空格作為該第一規則,以將該原始日誌資料拆分為該等區塊資料。
- 如請求項1所述之日誌處理裝置,其中進行該合併處理時,該處理器更用以執行下列操作:基於一第二規則,依序判斷各該區塊資料之一資料完整度;以及當該等區塊資料中至少連續二者之該資料完整度皆小於一臨界值時,合併該等區塊資料中該至少連續二者。
- 如請求項3所述之日誌處理裝置,其中該處理器更用以執行下列操作:當該等區塊資料中該至少連續二者之其中之一之該資料完整度小於該臨界值,且連續之另一之該資料完整度大於等於該臨界值時,不合併該等區塊資料中該至少連續二者。
- 如請求項3所述之日誌處理裝置,其中該第二規則係一語意分析。
- 如請求項1所述之日誌處理裝置,其中該儲存器更用以儲存一日誌資料庫,該日誌資料庫中儲存複數已記錄日誌樣板,該處理器更用以執行下列操作:於產生該日誌樣板後,將該日誌樣板與該等已記錄日誌樣板進行比對,並將該日誌樣板儲存於該日誌資料庫。
- 如請求項6所述之日誌處理裝置,其中該處理器更用以執行下列操作:對該等已記錄日誌樣板進行一編號處理,使各該已記錄日誌樣板對應至一日誌代碼;自一電子裝置接收一查詢請求訊息;以及 當該查詢請求訊息中包含該等日誌代碼中之一代碼時,根據該代碼,自該日誌資料庫中擷取對應該代碼之該已記錄日誌樣板,並將對應該代碼之該已記錄日誌樣板傳送至該電子裝置。
- 如請求項6所述之日誌處理裝置,其中該儲存器更用以儲存一事件資料庫,該事件資料庫中儲存複數已記錄事件,該處理器更用以執行下列操作:於產生該等事件後,將各該事件與該等已記錄事件進行比對,並產生一比對結果,並將該等事件及各該事件對應之該合併後區塊資料儲存於該事件資料庫。
- 如請求項8所述之日誌處理裝置,其中該處理器更用以執行下列操作:對該等已記錄日誌樣板進行一編號處理,使各該已記錄日誌樣板對應至一日誌代碼;對該等已記錄事件進行該編號處理,使各該已記錄事件對應至一事件代碼;自一電子裝置接收一查詢請求訊息;以及當該查詢請求訊息中包含該等事件代碼中之一代碼時,根據該代碼,自該事件資料庫中擷取對應該代碼之該已記錄事件,以及自該日誌資料庫中擷取包含該代碼對應之該已記錄事件之該已記錄日誌樣板,並將對應該代碼之 該已記錄事件以及包含該代碼對應之該已記錄事件之該已記錄日誌樣板傳送至該電子裝置。
- 如請求項8所述之日誌處理裝置,其中該儲存器更用以儲存一變量資料庫,該處理器更用以執行下列操作:判斷該等合併後區塊資料中是否存在一預設資料屬性;以及根據該預設資料屬性,將與該預設資料屬性相關之至少一事件儲存於該變量資料庫中。
- 一種用於一日誌處理裝置之日誌處理方法,該日誌處理裝置包含一儲存器及一處理器,該儲存器儲存一原始日誌資料,該日誌處理方法由該處理器執行,且包含下列操作:基於一第一規則,將該原始日誌資料拆分為複數區塊資料;判斷各該區塊資料中是否具有一數字變量,並根據各該區塊資料之一資料屬性,將各該區塊資料中之該數字變量轉換為一代表碼,並利用該代表碼取代該數字變量;根據各該區塊資料之一資料完整度決定是否將連續之該等區塊資料進行一合併處理,以產生複數合併後區塊資料;以及將該等合併後區塊資料作為對應於該原始日誌資料之一日誌樣板,其中各該合併後區塊資料對應至一事件。
- 如請求項11所述之日誌處理方法,其中該原始日誌資料由複數字串所組成,該處理器將該等字串間之一空格作為該第一規則,以將該原始日誌資料拆分為該等區塊資料。
- 如請求項11所述之日誌處理方法,其中進行該合併處理時,該日誌處理方法更包含下列步驟:基於一第二規則,依序判斷各該區塊資料之一資料完整度;以及當該等區塊資料中至少連續二者之該資料完整度皆小於一臨界值時,合併該等區塊資料中該至少連續二者。
- 如請求項13所述之日誌處理方法,其中更包含下列步驟:當該等區塊資料中該至少連續二者之其中之一之該資料完整度小於該臨界值,且連續之另一之該資料完整度大於等於該臨界值時,不合併該等區塊資料中該至少連續二者。
- 如請求項13所述之日誌處理方法,其中該第二規則係一語意分析。
- 如請求項11所述之日誌處理方法,其中該儲存器更用以儲存一日誌資料庫,該日誌資料庫中儲存複數已記錄日誌樣板,該日誌處理方法更包含下列步驟: 於產生該日誌樣板後,將該日誌樣板與該等已記錄日誌樣板進行比對,並將該日誌樣板儲存於該日誌資料庫。
- 如請求項16所述之日誌處理方法,其中該日誌資料庫中儲存複數已記錄日誌樣板,該日誌處理方法更包含下列步驟:對該等已記錄日誌樣板進行一編號處理,使各該已記錄日誌樣板對應至一日誌代碼;自一電子裝置接收一查詢請求訊息;以及當該查詢請求訊息中包含該等日誌代碼中之一代碼時,根據該代碼,自該日誌資料庫中擷取對應該代碼之該已記錄日誌樣板,並將對應該代碼之該已記錄日誌樣板傳送至該電子裝置。
- 如請求項16所述之日誌處理方法,其中該儲存器更用以儲存一事件資料庫,該事件資料庫中儲存複數已記錄事件,該日誌處理方法更包含下列步驟:於產生該等事件後,將各該事件與該等已記錄事件進行比對,並產生一比對結果,並將該等事件及各該事件對應之該合併後區塊資料儲存於該事件資料庫。
- 如請求項18所述之日誌處理方法,更包含下列步驟:對該等已記錄日誌樣板進行一編號處理,使各該已記錄日誌樣板對應至一日誌代碼; 對該等已記錄事件進行該編號處理,使各該已記錄事件對應至一事件代碼;自一電子裝置接收一查詢請求訊息;以及當該查詢請求訊息中包含該等事件代碼中之一代碼時,根據該代碼,自該事件資料庫中擷取對應該代碼之該已記錄事件,以及自該日誌資料庫中擷取包含該代碼對應之該已記錄事件之該已記錄日誌樣板,並將對應該代碼之該已記錄事件以及包含該代碼對應之該已記錄事件之該已記錄日誌樣板傳送至該電子裝置。
- 如請求項19所述之日誌處理方法,其中該儲存器更用以儲存一變量資料庫,該日誌處理方法更包含下列步驟:判斷該等合併後區塊資料中是否存在一預設資料屬性;以及根據該預設資料屬性,將與該預設資料屬性相關之至少一事件儲存於該變量資料庫中。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109136181A TWI772926B (zh) | 2020-10-19 | 2020-10-19 | 日誌處理裝置及其日誌處理方法 |
US17/100,934 US11734320B2 (en) | 2020-10-19 | 2020-11-22 | Log processing device and log processing method |
EP20209608.7A EP3985936A1 (en) | 2020-10-19 | 2020-11-24 | Log processing device and log processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109136181A TWI772926B (zh) | 2020-10-19 | 2020-10-19 | 日誌處理裝置及其日誌處理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202217592A TW202217592A (zh) | 2022-05-01 |
TWI772926B true TWI772926B (zh) | 2022-08-01 |
Family
ID=73597827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109136181A TWI772926B (zh) | 2020-10-19 | 2020-10-19 | 日誌處理裝置及其日誌處理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11734320B2 (zh) |
EP (1) | EP3985936A1 (zh) |
TW (1) | TWI772926B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391881A (zh) * | 2014-10-30 | 2015-03-04 | 杭州安恒信息技术有限公司 | 一种基于分词算法的日志解析方法及系统 |
TW201642132A (zh) * | 2015-05-18 | 2016-12-01 | Chunghwa Telecom Co Ltd | 網路日誌格式的識別系統及其方法 |
CN106656607A (zh) * | 2016-12-27 | 2017-05-10 | 上海爱数信息技术股份有限公司 | 设备日志解析方法、系统及具有该系统的服务器端 |
US20200019484A1 (en) * | 2018-07-16 | 2020-01-16 | Red Hat Israel, Ltd. | Log record analysis based on reverse engineering of log record formats |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8332652B2 (en) * | 2003-10-01 | 2012-12-11 | International Business Machines Corporation | Computing device that securely runs authorized software |
US20140006010A1 (en) * | 2012-06-27 | 2014-01-02 | Igor Nor | Parsing rules for data |
US9734005B2 (en) * | 2014-10-31 | 2017-08-15 | International Business Machines Corporation | Log analytics for problem diagnosis |
US9946607B2 (en) * | 2015-03-04 | 2018-04-17 | Sandisk Technologies Llc | Systems and methods for storage error management |
US9934265B2 (en) * | 2015-04-09 | 2018-04-03 | Commvault Systems, Inc. | Management of log data |
KR101953548B1 (ko) * | 2016-02-15 | 2019-03-04 | 한국전자통신연구원 | 네트워크 트래픽 기록 장치 및 그 방법 |
US10338977B2 (en) | 2016-10-11 | 2019-07-02 | Oracle International Corporation | Cluster-based processing of unstructured log messages |
DE102017216974A1 (de) * | 2017-09-25 | 2019-05-16 | Bundesdruckerei Gmbh | Dataculestruktur und Verfahren zum manipulationssicheren Speichern von Daten |
US11023420B1 (en) * | 2018-03-29 | 2021-06-01 | EMC IP Holding Company LLC | Real-time compression of log data |
WO2019216950A1 (en) * | 2018-05-08 | 2019-11-14 | Visa International Service Association | Password based threshold token generation |
US11151089B2 (en) * | 2018-10-29 | 2021-10-19 | EMC IP Holding Company LLC | Compression of log data using pattern recognition |
-
2020
- 2020-10-19 TW TW109136181A patent/TWI772926B/zh active
- 2020-11-22 US US17/100,934 patent/US11734320B2/en active Active
- 2020-11-24 EP EP20209608.7A patent/EP3985936A1/en not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391881A (zh) * | 2014-10-30 | 2015-03-04 | 杭州安恒信息技术有限公司 | 一种基于分词算法的日志解析方法及系统 |
TW201642132A (zh) * | 2015-05-18 | 2016-12-01 | Chunghwa Telecom Co Ltd | 網路日誌格式的識別系統及其方法 |
CN106656607A (zh) * | 2016-12-27 | 2017-05-10 | 上海爱数信息技术股份有限公司 | 设备日志解析方法、系统及具有该系统的服务器端 |
US20200019484A1 (en) * | 2018-07-16 | 2020-01-16 | Red Hat Israel, Ltd. | Log record analysis based on reverse engineering of log record formats |
Also Published As
Publication number | Publication date |
---|---|
TW202217592A (zh) | 2022-05-01 |
US20220121693A1 (en) | 2022-04-21 |
EP3985936A1 (en) | 2022-04-20 |
US11734320B2 (en) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11663244B2 (en) | Segmenting machine data into events to identify matching events | |
US9171037B2 (en) | Searching for associated events in log data | |
US7877399B2 (en) | Method, system, and computer program product for comparing two computer files | |
US5826250A (en) | Rules bases and methods of access thereof | |
CA2701046C (en) | Analysis of a system for matching data records | |
CN114153702A (zh) | 用于在日志分析系统中实现日志解析器的方法和系统 | |
CN106682097A (zh) | 一种处理日志数据的方法和装置 | |
US9123006B2 (en) | Techniques for parallel business intelligence evaluation and management | |
CN106708965A (zh) | 一种数据的处理方法和装置 | |
CN111638908A (zh) | 接口文档生成方法、装置、电子设备及介质 | |
CN105022815A (zh) | 信息拦截方法及装置 | |
Verbeke et al. | Critical news reading with Twitter? Exploring data-mining practices and their impact on societal discourse | |
US7844601B2 (en) | Quality of service feedback for technology-neutral data reporting | |
CN114661832A (zh) | 一种基于数据质量的多模态异构数据存储方法及系统 | |
CN117251414B (zh) | 一种基于异构技术的数据存储及处理方法 | |
TWI772926B (zh) | 日誌處理裝置及其日誌處理方法 | |
JP2019537171A (ja) | 警告メッセージを効率的に配信するためのシステム及び方法 | |
JP2008026968A (ja) | データ管理装置、データプログラム及びデータ管理方法 | |
US20240020405A1 (en) | Extracted field generation to filter log messages | |
CN114647555B (zh) | 基于多业务系统的数据预警方法、装置、设备和介质 | |
JP2006039810A (ja) | 分類支援装置 | |
CN114416323A (zh) | 任务创建方法、装置、计算机设备及计算机可读存储介质 | |
CN117874218A (zh) | 基于大模型的摘要生成方法、装置、设备及存储介质 | |
CN116756088A (zh) | 一种档案内人物关系的分析方法及相关设备 | |
CN117170735A (zh) | 一种解析编辑yaml文件保留所有格式和注释的方法及系统 |