日志分析系統(tǒng)中的日志的與語言無關(guān)的處理方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本公開一般涉及分析日志用以產(chǎn)生有含義的領(lǐng)悟(insight)和/或數(shù)據(jù)的領(lǐng)域。
【背景技術(shù)】
[0002]在計算中,日志是記錄在系統(tǒng)的執(zhí)行中發(fā)生的事件以便提供審計跟蹤(audittrail)的文件,所述審計跟蹤可用于:(i)理解系統(tǒng)的活動;和/或(ii)診斷問題。傳統(tǒng)上,日志可以幫助人們擴展對復(fù)雜計算機系統(tǒng)的活動的領(lǐng)悟,尤其在很少有用戶交互的應(yīng)用(如服務(wù)器應(yīng)用)的情況下更是如此。有時,考慮將來自多個源的日志文件條目進行組合。這種方法與統(tǒng)計分析相結(jié)合,可以產(chǎn)生在不同服務(wù)器上的看起來無關(guān)的事件之間的相關(guān)。許多操作系統(tǒng)和計算機程序包括某些形式的日志記錄子系統(tǒng)。
[0003]日志可能很大和/或以難以被理解的形式和格式呈現(xiàn)。傳統(tǒng)上,這些日志經(jīng)過“日志分析”以便幫助從日志得到領(lǐng)悟。傳統(tǒng)上,這經(jīng)常使用特殊日志分析軟件來進行。
[0004]許多數(shù)據(jù)庫維持某些種類的事務(wù)日志。與上述日志不同,這些日志主要不意圖作為用于之后的分析的審計跟蹤,并且不(易于)是人類可讀的。替代地,它們記錄對于所存儲的數(shù)據(jù)的改變,以允許數(shù)據(jù)庫從崩潰或其他錯誤恢復(fù),并將所存儲的數(shù)據(jù)維持在一致的狀態(tài)下。多數(shù)數(shù)據(jù)庫系統(tǒng)都具有上述廣義上的日志和事務(wù)日志。日志文件是全局化的內(nèi)容,并且應(yīng)用典型地以應(yīng)用正運行的系統(tǒng)的位置處本地的語言來生成日志。這幫助管理員以本地語言閱讀日志文件。傳統(tǒng)上,基于應(yīng)用支持的語言來構(gòu)建與日志分析相關(guān)聯(lián)的內(nèi)容和/或知識,以便能夠跨所有語言一致地處理日志。日志分析或基于流的分析系統(tǒng)典型地使用:
(i)運行規(guī)則以從日志提取有用和/或相關(guān)信息的注釋;(ii)運行規(guī)則以標識模式并將附加信息添加到正被處理的內(nèi)容的注釋;以及(iii)標識模式并從問題分析場景檢測可能感興趣的特定情況的評估規(guī)則。
[0005]“資源包(resource bundle) ”是包含對特定地在某個地點(locale)使用通用軟件有用的地點特定的數(shù)據(jù)的文件。這是通過使得代碼與地點無關(guān)而“國際化”通用軟件的方式。從代碼提取諸如字符串的地點敏感的對象(與硬編碼它們相對),這意味著:(i)應(yīng)用可以處理多個地點,而不必對每個地點寫不同代碼;以及(ii)人類翻譯者可以僅處理可翻譯的文本而不是編程代碼。已知為日志記錄軟件提供一個或多個資源包。傳統(tǒng)上,這些資源包用于以本地語言生成日志的內(nèi)容的非運行時部分。這里,“非運行時”意味著與系統(tǒng)/環(huán)境無關(guān),也就是說,在開發(fā)時通常是靜態(tài)的和設(shè)計好的日志內(nèi)容字符串。另一方面,運行時日志內(nèi)容值和/或字符串與環(huán)境或運行時相關(guān)(列舉一些示例:主機名、ip(因特網(wǎng)協(xié)議)地址、環(huán)境變量值、程序運行時值)。運行時值性質(zhì)上可以是數(shù)字的或非數(shù)字的。然而,非運行時值通常包括人們期望以他們優(yōu)選的人類可讀的語言呈現(xiàn)的文本。
【發(fā)明內(nèi)容】
[0006]根據(jù)本發(fā)明的一方面,提供了一種計算機程序產(chǎn)品、系統(tǒng)和方法,包括以下步驟(不一定按照下面的順序):(i)使用與數(shù)據(jù)轉(zhuǎn)換相關(guān)的第一資源包生成第一人類可讀語言的第一日志內(nèi)容;以及(ii)使用所述第一資源包將所述第一日志內(nèi)容轉(zhuǎn)換為第二日志內(nèi)容,所述第二日志內(nèi)容與所述第一日志內(nèi)容相對應(yīng)但是第二人類可讀語言。
【附圖說明】
[0007]圖1是根據(jù)本發(fā)明的系統(tǒng)的第一實施例的示意圖;
[0008]圖2是示出至少部分地通過第一實施例的計算機系統(tǒng)執(zhí)行的方法的流程圖;
[0009]圖3是第一實施例的系統(tǒng)的一部分的示意圖;以及
[0010]圖4是第一實施例的系統(tǒng)的另一部分的示意圖。
【具體實施方式】
[0011]本公開的一些實施例使用用于生成日志內(nèi)容的消息包或資源包來轉(zhuǎn)換(translate)日志內(nèi)容。此【具體實施方式】部分被分為以下的子部分:(i)硬件和軟件環(huán)境;
[11]示例實施例;(iii)進一步的評論和/或?qū)嵤├?;以?iv)定義。
[0012]1.硬件和軟件環(huán)境
[0013]所屬技術(shù)領(lǐng)域的技術(shù)人員知道,本發(fā)明的各個方面可以實現(xiàn)為系統(tǒng)、方法或計算機程序產(chǎn)品。因此,本發(fā)明的各個方面可以具體實現(xiàn)為以下形式,即:完全的硬件實施方式、完全的軟件實施方式(包括固件、駐留軟件、微代碼等),或硬件和軟件方面結(jié)合的實施方式,這里可以統(tǒng)稱為“電路”、“模塊”或“系統(tǒng)”。此外,在一些實施例中,本發(fā)明的各個方面還可以實現(xiàn)為在一個或多個計算機可讀介質(zhì)中的計算機程序產(chǎn)品的形式,該計算機可讀介質(zhì)中包含計算機可讀的程序代碼。
[0014]可以采用一個或多個計算機可讀介質(zhì)的任意組合。計算機可讀介質(zhì)可以是計算機可讀信號介質(zhì)或者計算機可讀存儲介質(zhì)。計算機可讀存儲介質(zhì)例如可以是一一但不限于一一電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。計算機可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個或多個導(dǎo)線的電連接、便攜式計算機盤、硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPR0M或閃存)、光纖、便攜式緊湊盤只讀存儲器(CD-ROM)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文件中,計算機可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。
[0015]計算機可讀的信號介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號,其中承載了計算機可讀的程序代碼。這種傳播的數(shù)據(jù)信號可以采用多種形式,包括一一但不限于一一電磁信號、光信號或上述的任意合適的組合。計算機可讀的信號介質(zhì)還可以是計算機可讀存儲介質(zhì)以外的任何計算機可讀介質(zhì),該計算機可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。
[0016]計算機可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括一但不限于一無線、有線、光纜、RF等等,或者上述的任意合適的組合。
[0017]可以以一種或多種程序設(shè)計語言的任意組合來編寫用于執(zhí)行本發(fā)明操作的計算機程序代碼,所述程序設(shè)計語言包括面向?qū)ο蟮某绦蛟O(shè)計語言一諸如Java (注意:“Java”一詞可能在全世界不同司法轄區(qū)中具有商標權(quán),而此處只用來在該商標權(quán)成立的條件下指代該產(chǎn)品或服務(wù))、Smalltalk、C++等,還包括常規(guī)的過程式程序設(shè)計語言一諸如“C”語言或類似的程序設(shè)計語言。程序代碼可以完全地在用戶計算機上執(zhí)行、部分地在用戶計算機上執(zhí)行、作為一個獨立的軟件包執(zhí)行、部分在用戶計算機上部分在遠程計算機上執(zhí)行、或者完全在遠程計算機或服務(wù)器上執(zhí)行。在涉及遠程計算機的情形中,遠程計算機可以通過任意種類的網(wǎng)絡(luò)一一包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計算機,或者,可以連接到外部計算機(例如利用因特網(wǎng)服務(wù)提供商來通過因特網(wǎng)連接)。
[0018]下面將參照根據(jù)本發(fā)明實施例的方法、裝置(系統(tǒng))和計算機程序產(chǎn)品的流程圖和/或框圖描述本發(fā)明。應(yīng)當(dāng)理解,流程圖和/或框圖的每個方框以及流程圖和/或框圖中各方框的組合,都可以由計算機程序指令實現(xiàn)。這些計算機程序指令可以提供給通用計算機、專用計算機或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機器,使得這些計算機程序指令在通過計算機或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時,產(chǎn)生了實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的裝置。
[0019]也可以把這些計算機程序指令存儲在計算機可讀介質(zhì)中,這些指令使得計算機、其它可編程數(shù)據(jù)處理裝置、或其他設(shè)備以特定方式工作,從而,存儲在計算機可讀介質(zhì)中的指令就產(chǎn)生出包括實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的指令的制造品(article of manufacture)。
[0020]也可以把這些計算機程序指令存儲在計算機、其他可編程數(shù)據(jù)處理裝置或其他設(shè)備上,以使得在計算機、其它可編程裝置或其他設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程裝置上執(zhí)行的指令提供用于實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的處理。
[0021]現(xiàn)在將參照圖1詳細描述用于根據(jù)本發(fā)明的軟件和/或方法的可能的硬件和軟件環(huán)境的實施例,圖1是圖示聯(lián)網(wǎng)計算機系統(tǒng)100的框圖,其包括:轉(zhuǎn)換子系統(tǒng)102、客戶端子