一種日志處理系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開(kāi)一種日志處理系統(tǒng),其特征在于,包括日志生成模塊、日志監(jiān)控服務(wù)端、日志監(jiān)控客戶端,其中,日志生成模塊被設(shè)置在一個(gè)或多個(gè)應(yīng)用系統(tǒng)中,以統(tǒng)一接口的形式被一個(gè)或多個(gè)應(yīng)用系統(tǒng)調(diào)用從而生成具有預(yù)先配置的日志信息,日志監(jiān)控服務(wù)端被配置成接收并處理從日志生成模塊發(fā)送的日志信息,并且將與預(yù)設(shè)條件相適應(yīng)的日志信息發(fā)送至日志監(jiān)控客戶端。
【專利說(shuō)明】一種日志處理系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息技術(shù),并且尤其涉及一種日志處理系統(tǒng)。
【背景技術(shù)】
[0002]當(dāng)前,支持企業(yè)業(yè)務(wù)的IT系統(tǒng)越來(lái)越繁多,對(duì)于運(yùn)維人員來(lái)說(shuō),大量的報(bào)錯(cuò)與定位往往會(huì)增加其監(jiān)控的難度,降低IT系統(tǒng)處理的效率。然而,各系統(tǒng)受到平臺(tái)、團(tuán)隊(duì)、需求等因素的制約,往往設(shè)計(jì)各自的日志模塊,導(dǎo)致各系統(tǒng)的報(bào)錯(cuò)信息五花八門,給運(yùn)維人員、支持人員帶來(lái)不必要的麻煩。
[0003]另一方面,在IT系統(tǒng)中,往往定義多種級(jí)別的日志信息,如信息級(jí)別、調(diào)試級(jí)別、警告級(jí)別、一般錯(cuò)誤級(jí)別、致命錯(cuò)誤級(jí)別?;蛘撸€可能定義很多個(gè)性化的日志處理方式,如日志記錄方式(進(jìn)程級(jí)、線程級(jí)、模塊級(jí)等)、日志分類方式(時(shí)間、模塊、大小等)等。根據(jù)軟件產(chǎn)品周期,在軟件的不同階段或不同使用場(chǎng)景,需要對(duì)產(chǎn)品設(shè)置不同的日志方式。現(xiàn)有技術(shù)中,往往在軟件產(chǎn)品編譯階段,通過(guò)不同的編譯選項(xiàng),通過(guò)將相同的源程序編譯成不同的目標(biāo)產(chǎn)品來(lái)實(shí)現(xiàn)不同的日志方式,而這實(shí)際上造成了不同階段軟件產(chǎn)品的不同。
[0004]因此,需要一種集中統(tǒng)一并且可動(dòng)態(tài)調(diào)整的日志處理系統(tǒng)。
【發(fā)明內(nèi)容】
[0005]根據(jù)本發(fā)明的一個(gè)目的,提供一種日志處理系統(tǒng),其特征在于,包括日志生成模塊、日志監(jiān)控服務(wù)端、日志監(jiān)控客戶端,其中,日志生成模塊被設(shè)置在一個(gè)或多個(gè)應(yīng)用系統(tǒng)中,以統(tǒng)一接口的形式被一個(gè)或多個(gè)應(yīng)用系統(tǒng)調(diào)用從而生成具有預(yù)先配置的日志信息,日志監(jiān)控服務(wù)端被配置成接收并處理從日志生成模塊發(fā)送的日志信息,并且將與預(yù)設(shè)條件相適應(yīng)的日志信息發(fā)送至日志監(jiān)控客戶端。
[0006]優(yōu)選地,所述日志監(jiān)控服務(wù)端包括日志接收處理模塊、日志發(fā)送模塊、日志管理模塊,其中,日志接收處理模塊被配置成從日志生成模塊接收日志信息,并將接收的日志信息傳送到日志發(fā)送模塊,日志發(fā)送模塊根據(jù)預(yù)設(shè)條件對(duì)接收到的日志信息進(jìn)行過(guò)濾,并且將與預(yù)設(shè)條件相適應(yīng)的日志信息發(fā)送至日志監(jiān)控客戶端,日志管理模塊被配置成從日志監(jiān)控客戶端接收用戶自定義設(shè)置作為所述預(yù)設(shè)條件的一部分。
[0007]優(yōu)選地,日志接收處理模塊還被配置成將接收的日志信息進(jìn)行分類并且記錄到數(shù)據(jù)庫(kù)中,日志管理模塊還被配置成根據(jù)所述數(shù)據(jù)庫(kù),響應(yīng)于來(lái)自日志監(jiān)控客戶端的查詢請(qǐng)求,向日志監(jiān)控客戶端發(fā)送相應(yīng)的日志信息。
[0008]優(yōu)選地,日志發(fā)送模塊還被配置成維護(hù)與日志監(jiān)控客戶端之間的鏈路狀態(tài)。
[0009]優(yōu)選地,日志管理模塊還被配置成對(duì)數(shù)據(jù)庫(kù)中日志信息進(jìn)行清理。
[0010]優(yōu)選地,日志生成模塊采用TCP/UDP協(xié)議將日志信息發(fā)送到日志監(jiān)控服務(wù)端。
[0011]優(yōu)選地,日志監(jiān)控服務(wù)端與日志監(jiān)控客戶端通過(guò)HTTP協(xié)議通信。
[0012]優(yōu)選地,所述日志監(jiān)控客戶端包括PC和移動(dòng)終端。
[0013]優(yōu)選地,日志監(jiān)控客戶端被配置成能夠在日志監(jiān)控服務(wù)端進(jìn)行注冊(cè), 日志監(jiān)控服務(wù)端被配置成將所述注冊(cè)的信息作為預(yù)設(shè)條件的一部分。
[0014]優(yōu)選地,日志生成模塊還包括日志配置內(nèi)存映射處理模塊和日志器,其中,日志配置內(nèi)存映射處理模塊被配置成在應(yīng)用系統(tǒng)初始化期間,將日志配置文件映射到應(yīng)用系統(tǒng)的內(nèi)存中,所述日志器根據(jù)內(nèi)存中的配置信息生成日志信息。
[0015]優(yōu)選地,所述日志生成模塊還包括日志配置修改內(nèi)存重載模塊,其中,日志配置修改內(nèi)存重載模塊根據(jù)日志配置文件的變化動(dòng)態(tài)調(diào)整內(nèi)存中的配置信息。
[0016]優(yōu)選地,內(nèi)存中的配置信息指示生成日志信息的輸出形式和內(nèi)容。
[0017]優(yōu)選地,日志生成模塊還被配置成能夠產(chǎn)生本地日志文件,以及根據(jù)內(nèi)存中的配置信息與日志信息同步或者異步產(chǎn)生本地日志文件。
[0018]本發(fā)明的技術(shù)方案實(shí)現(xiàn)多個(gè)應(yīng)用系統(tǒng)之間的日志信息的統(tǒng)一,從而做到既能不影響各系統(tǒng)各自的報(bào)錯(cuò)功能,又能統(tǒng)一地、有效地處理所有系統(tǒng)的報(bào)錯(cuò)信息,大幅度提高報(bào)錯(cuò)處理的效率。本發(fā)明的優(yōu)點(diǎn)在于,將現(xiàn)有應(yīng)用系統(tǒng)的報(bào)錯(cuò)從表現(xiàn)形式上、從處理方式上都進(jìn)行了統(tǒng)一,不僅能方便運(yùn)維人員、支持人員的處理與分析,降低了各系統(tǒng)各自開(kāi)發(fā)日志處理模塊的資源投入,也有助于對(duì)整合的日志數(shù)據(jù)做后期的分析,從而反向優(yōu)化應(yīng)用系統(tǒng)。此夕卜,并且通過(guò)提供不同平臺(tái)的報(bào)錯(cuò)接口,使得現(xiàn)有應(yīng)用系統(tǒng)能夠容易的整合到統(tǒng)一的日志處理系統(tǒng)體系之內(nèi)。
[0019]本發(fā)明的優(yōu)點(diǎn)還在于,根據(jù)本發(fā)明的技術(shù)方案,軟件產(chǎn)品無(wú)需編譯成不同的目標(biāo)產(chǎn)品,便可動(dòng)態(tài)調(diào)整產(chǎn)品的日志方式,使得軟件產(chǎn)品可以適用于軟件的不同階段或不同使用場(chǎng)景,并且無(wú)需維護(hù)多套不同的目標(biāo)產(chǎn)品。
【專利附圖】
【附圖說(shuō)明】
[0020]在參照附圖閱讀了本發(fā)明的【具體實(shí)施方式】以后,本領(lǐng)域技術(shù)人員將會(huì)更清楚地了解本發(fā)明的各個(gè)方面。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解的是,這些附圖僅僅用于配合【具體實(shí)施方式】說(shuō)明本發(fā)明的技術(shù)方案,而并非意在對(duì)本發(fā)明的保護(hù)范圍構(gòu)成限制。其中,
圖1是根據(jù)本發(fā)明實(shí)施例的日志處理系統(tǒng)的框圖。
[0021]圖2是根據(jù)本發(fā)明實(shí)施例的日志監(jiān)控服務(wù)端的框圖。
[0022]圖3是根據(jù)本發(fā)明實(shí)施例的日志處理系統(tǒng)的日志處理過(guò)程示意圖。
[0023]圖4是根據(jù)本發(fā)明實(shí)施例的日志處理系統(tǒng)的日志處理過(guò)程示意圖。
【具體實(shí)施方式】
[0024]下面參照附圖,對(duì)本發(fā)明的【具體實(shí)施方式】作進(jìn)一步的詳細(xì)描述。
[0025]如圖1所示,日志處理系統(tǒng)包括日志生成模塊、日志監(jiān)控服務(wù)端、日志監(jiān)控客戶端。日志生成模塊可以被設(shè)置在一個(gè)或多個(gè)應(yīng)用系統(tǒng)中,以統(tǒng)一接口的形式(如圖3所示,應(yīng)用系統(tǒng)中的應(yīng)用邏輯集成了作為日志生成模塊的LOG API)被該一個(gè)或多個(gè)應(yīng)用系統(tǒng)調(diào)用從而生成具有預(yù)先配置(含指定格式、日志方式、記錄位置等)的日志信息。如圖4所示,通過(guò)為多個(gè)應(yīng)用系統(tǒng)提供統(tǒng)一的接口,日志監(jiān)控服務(wù)端能夠統(tǒng)一收集各個(gè)應(yīng)用系統(tǒng)的日志信息,而不影響各個(gè)系統(tǒng)自身的日志功能。日志監(jiān)控服務(wù)端被配置成接收并處理從日志生成模塊發(fā)送的日志信息,并且將與預(yù)設(shè)條件相適應(yīng)的日志信息發(fā)送至日志監(jiān)控客戶端。發(fā)送日志信息的方式可以為推送,日志監(jiān)控服務(wù)端可以采用主動(dòng)“推”的方法將信息傳遞到日志監(jiān)控客戶端??梢岳斫獾氖牵罩颈O(jiān)控客戶端也可以主動(dòng)從日志監(jiān)控服務(wù)端讀取數(shù)據(jù),可以稱為“拉”。借助于日志生成模塊,日志監(jiān)控服務(wù)端不需要解析所涉及的應(yīng)用系統(tǒng)的日志文件,僅僅解析從遠(yuǎn)程發(fā)送的包含日志信息的報(bào)文信息。在一個(gè)實(shí)施例中,日志生成模塊采用TCP/UDP協(xié)議將日志信息發(fā)送到日志監(jiān)控服務(wù)端,如圖3所示,作為日志生成模塊的LOGAPI通過(guò)UDP方式發(fā)送日志信息。
[0026]圖2是根據(jù)本發(fā)明實(shí)施例的日志監(jiān)控服務(wù)端的框圖。日志監(jiān)控服務(wù)端包括日志接收處理模塊、日志發(fā)送模塊、日志管理模塊。以下分別描述各個(gè)模塊的功能。日志接收處理模塊被配置成從日志生成模塊接收日志信息,并將接收的日志信息傳送到日志發(fā)送模塊。日志發(fā)送模塊根據(jù)預(yù)設(shè)條件對(duì)接收到的日志信息進(jìn)行過(guò)濾,并且將與預(yù)設(shè)條件相適應(yīng)的日志信息發(fā)送至日志監(jiān)控客戶端。日志管理模塊被配置成從日志監(jiān)控客戶端接收用戶自定義設(shè)置作為所述預(yù)設(shè)條件的一部分。在一個(gè)實(shí)施例中,日志發(fā)送模塊還被配置成維護(hù)與日志監(jiān)控客戶端之間的鏈路狀態(tài),從而確保發(fā)送有效。在一個(gè)實(shí)施例中,日志監(jiān)控服務(wù)端與日志監(jiān)控客戶端通過(guò)HTTP協(xié)議通信。
[0027]在一個(gè)實(shí)施例中,日志監(jiān)控客戶端被配置成能夠在日志監(jiān)控服務(wù)端進(jìn)行注冊(cè),日志監(jiān)控服務(wù)端被配置成將所述注冊(cè)的信息作為預(yù)設(shè)條件的一部分。如圖4所示,日志監(jiān)控服務(wù)端可以根據(jù)作為預(yù)設(shè)條件的一部分的注冊(cè)的信息僅僅將日志信息3發(fā)送給日志監(jiān)控客戶端。如上所述,日志管理模塊能夠被配置成從日志監(jiān)控客戶端接收用戶自定義設(shè)置作為所述預(yù)設(shè)條件的一部分。在該實(shí)施例中,日志監(jiān)控服務(wù)端可以根據(jù)作為預(yù)設(shè)條件的一部分的用戶自定義設(shè)置僅僅將日志信息3的一部分發(fā)送給日志監(jiān)控客戶端。如圖3所示,接收的日志信息能夠通過(guò)條件過(guò)濾被分發(fā)給日志監(jiān)控客戶端。由此,日志監(jiān)控客戶端通過(guò)在日志監(jiān)控服務(wù)端注冊(cè)、設(shè)置用戶自定義數(shù)據(jù)能夠?qū)崿F(xiàn)日志信息的集中定制獲取。日志監(jiān)控客戶端可以包括PC和移動(dòng)終端,但本發(fā)明不限于此,例如,其它能夠利用HTTP協(xié)議與日志監(jiān)控服務(wù)端通信的設(shè)備也能夠作為日志監(jiān)控客戶端。
[0028]在一個(gè)實(shí)施例中,日志接收處理模塊還被配置成將接收的日志信息進(jìn)行分類并且記錄到數(shù)據(jù)庫(kù)中。例如,日志接收處理模塊能夠?qū)唧w的日志信息進(jìn)行分類,根據(jù)日期、重要程度等參數(shù)分別記錄到不同的數(shù)據(jù)庫(kù)中的日志表中。另外,日志管理模塊還被配置成根據(jù)所述數(shù)據(jù)庫(kù),響應(yīng)于來(lái)自日志監(jiān)控客戶端的查詢請(qǐng)求,向日志監(jiān)控客戶端發(fā)送相應(yīng)的日志信息,如圖3所示。
[0029]在另一個(gè)實(shí)施例中,日志管理模塊還被配置成對(duì)數(shù)據(jù)庫(kù)中日志信息進(jìn)行清理。例如,可以定期進(jìn)行隔日清理、隔月清理、按類型清理等。
[0030]在根據(jù)本發(fā)明的另一個(gè)實(shí)施例中,日志生成模塊還可以包括日志配置內(nèi)存映射處理模塊和日志器,其中,日志配置內(nèi)存映射處理模塊被配置成在應(yīng)用系統(tǒng)初始化期間,將日志配置文件映射到應(yīng)用系統(tǒng)的內(nèi)存中,所述日志器根據(jù)內(nèi)存中的配置信息生成日志信息。由此,應(yīng)用系統(tǒng)在生命周期內(nèi)僅僅需要訪問(wèn)內(nèi)存中的配置信息就能夠?qū)崿F(xiàn)自定義的日志處理。作為示例,日志配置內(nèi)存映射處理模塊在應(yīng)用系統(tǒng)初始化期間加載解析文件(由配置文件生成的二進(jìn)制文件)到內(nèi)存中,并且根據(jù)內(nèi)存中的配置信息初始化相應(yīng)的應(yīng)用程序的日志信息,在本地日志文件的情況下可以初始化本地日志文件的文件名、文件格式等。本領(lǐng)域的技術(shù)人員可以理解的是,還可以根據(jù)內(nèi)存中的配置信息初始化要發(fā)送給日志監(jiān)控服務(wù)端的日志信息,例如內(nèi)存中的配置信息能夠指示生成日志信息的輸出形式和內(nèi)容。[0031]在另一個(gè)示例中,日志生成模塊還包括日志配置修改內(nèi)存重載模塊,其中,日志配置修改內(nèi)存重載模塊根據(jù)日志配置文件的變化動(dòng)態(tài)調(diào)整內(nèi)存中的配置信息。作為示例,日志配置修改內(nèi)存重載模塊可以動(dòng)態(tài)刷新配置文件,當(dāng)發(fā)現(xiàn)配置文件的內(nèi)容發(fā)生變化時(shí),將配置文件中的內(nèi)容重新映射到上述配置信息對(duì)應(yīng)的內(nèi)存。這種動(dòng)態(tài)生效的過(guò)程對(duì)于應(yīng)用系統(tǒng)本身是透明的。例如,日志配置修改內(nèi)存重載模塊能夠被配置成解析配置文件的內(nèi)容,并將配置文件中的內(nèi)容與內(nèi)存中的配置信息進(jìn)行匹配,若存在不一致的地方,則將內(nèi)存中的配置信息內(nèi)容與修改成與配置文件中的內(nèi)容一致。
[0032]如上所述以及如圖3所示,日志生成模塊還被配置成能夠產(chǎn)生本地日志文件,以及根據(jù)內(nèi)存中的配置信息與日志信息同步或者異步產(chǎn)生本地日志文件。
[0033]通過(guò)以上實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件結(jié)合硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以全部通過(guò)硬件來(lái)實(shí)施。本領(lǐng)域中的普通技術(shù)人員能夠理解,在不偏離本發(fā)明的精神和范圍的情況下,還可以對(duì)本發(fā)明的【具體實(shí)施方式】作各種變更和替換。這些變更和替換都落在本發(fā)明權(quán)利要求書(shū)所限定的范圍內(nèi)。
【權(quán)利要求】
1.一種日志處理系統(tǒng),其特征在于,包括日志生成模塊、日志監(jiān)控服務(wù)端、日志監(jiān)控客戶端,其中, 日志生成模塊被設(shè)置在一個(gè)或多個(gè)應(yīng)用系統(tǒng)中,以統(tǒng)一接口的形式被一個(gè)或多個(gè)應(yīng)用系統(tǒng)調(diào)用從而生成具有預(yù)先配置的日志信息, 日志監(jiān)控服務(wù)端被配置成接收并處理從日志生成模塊發(fā)送的日志信息,并且將與預(yù)設(shè)條件相適應(yīng)的日志信息發(fā)送至日志監(jiān)控客戶端。
2.如權(quán)利要求1所述的日志處理系統(tǒng),其特征在于,所述日志監(jiān)控服務(wù)端包括日志接收處理模塊、日志發(fā)送模塊、日志管理模塊,其中, 日志接收處理模塊被配置成從日志生成模塊接收日志信息,并將接收的日志信息傳送到日志發(fā)送模塊, 日志發(fā)送模塊根據(jù)預(yù)設(shè)條件對(duì)接收到的日志信息進(jìn)行過(guò)濾,并且將與預(yù)設(shè)條件相適應(yīng)的日志信息發(fā)送至日志監(jiān)控客戶端, 日志管理模塊被配置成從日志監(jiān)控客戶端接收用戶自定義設(shè)置作為所述預(yù)設(shè)條件的一部分。
3.如權(quán)利要求2所述的日志處理系統(tǒng),其特征在于, 日志接收處理模塊還被配置成將接收的日志信息進(jìn)行分類并且記錄到數(shù)據(jù)庫(kù)中,日志管理模塊還被配置成根據(jù)所述數(shù)據(jù)庫(kù),響應(yīng)于來(lái)自日志監(jiān)控客戶端的查詢請(qǐng)求,向日志監(jiān)控客戶端發(fā)送相應(yīng)的日志信息。
4.如權(quán)利要求3所述的日志處理系統(tǒng),其特征在于, 日志發(fā)送模塊還被配置成維護(hù)與日志監(jiān)控客戶端之間的鏈路狀態(tài)。
5.如權(quán)利要求4所述的日志處理系統(tǒng),其特征在于, 日志管理模塊還被配置成對(duì)數(shù)據(jù)庫(kù)中日志信息進(jìn)行清理。
6.如權(quán)利要求1所述的日志處理系統(tǒng),其特征在于, 日志生成模塊采用TCP/UDP協(xié)議將日志信息發(fā)送到日志監(jiān)控服務(wù)端。
7.如權(quán)利要求1所述的日志處理系統(tǒng),其特征在于, 日志監(jiān)控服務(wù)端與日志監(jiān)控客戶端通過(guò)HTTP協(xié)議通信。
8.如權(quán)利要求7所述的日志處理系統(tǒng),其特征在于, 所述日志監(jiān)控客戶端包括PC和移動(dòng)終端。
9.如權(quán)利要求1所述的日志處理系統(tǒng),其特征在于, 日志監(jiān)控客戶端被配置成能夠在日志監(jiān)控服務(wù)端進(jìn)行注冊(cè), 日志監(jiān)控服務(wù)端被配置成將所述注冊(cè)的信息作為預(yù)設(shè)條件的一部分。
10.如權(quán)利要求1所述的日志處理系統(tǒng),其特征在于,所述日志生成模塊還包括日志配置內(nèi)存映射處理模塊和日志器,其中, 日志配置內(nèi)存映射處理模塊被配置成在應(yīng)用系統(tǒng)初始化期間,將日志配置文件映射到應(yīng)用系統(tǒng)的內(nèi)存中, 所述日志器根據(jù)內(nèi)存中的配置信息生成日志信息。
11.如權(quán)利要求10所述的日志處理系統(tǒng),其特征在于,所述日志生成模塊還包括日志配置修改內(nèi)存重載模塊,其中, 日志配置修改內(nèi)存重載模塊根據(jù)日志配置文件的變化動(dòng)態(tài)調(diào)整內(nèi)存中的配置信息。
12.如權(quán)利要求10或11所述的日志處理系統(tǒng),其特征在于, 內(nèi)存中的配置信息指示生成日志信息的輸出形式和內(nèi)容。
13.如權(quán)利要求10所述的日志處理系統(tǒng),其特征在于, 日志生成模塊還被配置成能夠產(chǎn)生本地日志文件,以及根據(jù)內(nèi)存中的配置信息與日志信息同步或者異步產(chǎn)生本 地日志文件。
【文檔編號(hào)】G06F17/30GK103577443SQ201210266986
【公開(kāi)日】2014年2月12日 申請(qǐng)日期:2012年7月30日 優(yōu)先權(quán)日:2012年7月30日
【發(fā)明者】茅毓銘, 邱鵬, 楊燕明 申請(qǐng)人:中國(guó)銀聯(lián)股份有限公司