一種分布式環(huán)境下的日志管理方法和裝置制造方法
【專利摘要】本發(fā)明提供了一種分布式環(huán)境下的日志管理方法和裝置,其中的方法包括步驟:攔截收集日志數(shù)據(jù)并發(fā)送;接收日志數(shù)據(jù),并對(duì)集中的日志數(shù)據(jù)進(jìn)行分析整理;將整理后的日志數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中,提供給用戶進(jìn)行查詢和統(tǒng)計(jì)。利用本發(fā)明可以將分散在各個(gè)物理存儲(chǔ)位置的日志實(shí)時(shí)收集到一個(gè)集中的日志中心,并將各日志文件中的日志記錄按照統(tǒng)一時(shí)間線順序進(jìn)行排序并結(jié)構(gòu)化存儲(chǔ),提供了更強(qiáng)的日志查詢、分析、統(tǒng)計(jì)功能。本發(fā)明解決了分布、集群部署時(shí)應(yīng)用產(chǎn)生的日志在空間與時(shí)間上的不一致造成使用日志的各種問(wèn)題,方便了用戶的查詢統(tǒng)計(jì)。
【專利說(shuō)明】一種分布式環(huán)境下的日志管理方法和裝置
[0001]【技術(shù)領(lǐng)域】
本發(fā)明涉及日志管理,尤其涉及分布式環(huán)境下的日志管理方法和裝置。
[0002]【背景技術(shù)】
當(dāng)前基于J2EE的應(yīng)用得到了廣泛的使用。為了獲取應(yīng)用的運(yùn)行情況以及便于調(diào)試,基于J2EE的應(yīng)用一般都會(huì)使用某種日志組件將應(yīng)用實(shí)時(shí)產(chǎn)生的日志寫(xiě)入到文件系統(tǒng)中。日志組件的典型例子包括Log4j、common-log等。由于基于J2EE的應(yīng)用通常會(huì)部署在集群環(huán)境或分布式環(huán)境中,此時(shí)的日志就會(huì)分散在多個(gè)物理機(jī)器上。當(dāng)需要從日志中查找或者定位某些問(wèn)題時(shí),將會(huì)面臨以下問(wèn)題:1)空間不統(tǒng)一,日志的存儲(chǔ)位置分散:由于應(yīng)用被分布或集群部署,每個(gè)應(yīng)用將被部署在多個(gè)物理機(jī)器上,每個(gè)部署的應(yīng)用實(shí)例產(chǎn)生自己的日志文件,此時(shí)應(yīng)用的日志將被分散于每個(gè)物理機(jī)器上。2)時(shí)間不統(tǒng)一,每個(gè)實(shí)例產(chǎn)生自己的日志時(shí)間線:在集群部署的每個(gè)應(yīng)用實(shí)例都使用自己的服務(wù)器時(shí)間作為產(chǎn)生日志時(shí)間,每個(gè)應(yīng)用實(shí)例只寫(xiě)自己的日志,多個(gè)應(yīng)用實(shí)例就產(chǎn)生了多條基于各自時(shí)間的日志文件。
[0003]為了解決日志分散存儲(chǔ)的問(wèn)題,現(xiàn)有技術(shù)中存在一些實(shí)時(shí)日志收集方法,但由于收集過(guò)程中占用大量的資源,會(huì)造成應(yīng)用系統(tǒng)本身性能顯著下降。同時(shí)現(xiàn)有技術(shù)中沒(méi)有提供對(duì)收集過(guò)程的管理和控制,針對(duì)已集中的日志記錄也沒(méi)有提供靈活、有效的日志查詢、分析、統(tǒng)計(jì)功能。
[0004]
【發(fā)明內(nèi)容】
鑒于以上問(wèn)題,本發(fā)明旨在提供一種分布式環(huán)境下的日志管理方法和裝置,以解決分布、集群部署時(shí)應(yīng)用產(chǎn)生的日志在空間與時(shí)間上的不一致造成使用日志的各種問(wèn)題。
[0005]根據(jù)本發(fā)明的一個(gè)方面,提供了一種分布式環(huán)境下的日志管理方法,包括以下步驟:
攔截收集日志數(shù)據(jù)并發(fā)送;
接收日志數(shù)據(jù),并對(duì)集中的日志數(shù)據(jù)進(jìn)行分析整理;
將整理后的日志數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中,提供給用戶進(jìn)行查詢和統(tǒng)計(jì)。
[0006]其中,優(yōu)選的方案是,攔截收集日志數(shù)據(jù)并發(fā)送的步驟具體包括:
攔截日志數(shù)據(jù)并將日志放入日志待打包隊(duì)列;
按時(shí)間或數(shù)據(jù)量條件將日志待打包隊(duì)列中的日志進(jìn)行壓縮形成數(shù)據(jù)包,并放入數(shù)據(jù)包待發(fā)送隊(duì)列;
連接日志中心,向日志中心發(fā)送日志數(shù)據(jù)包。
[0007]其中,優(yōu)選的方案是,接收日志數(shù)據(jù),并對(duì)集中的日志數(shù)據(jù)進(jìn)行整理分析的步驟具體包括:
接收日志數(shù)據(jù)包,并將其放入數(shù)據(jù)包隊(duì)列;
對(duì)數(shù)據(jù)包隊(duì)列中的數(shù)據(jù)包進(jìn)行解壓并放入日志隊(duì)列;
對(duì)日志隊(duì)列中的日志進(jìn)行分析并整理為固定的存儲(chǔ)結(jié)構(gòu)。
[0008]根據(jù)本發(fā)明的另一方面,提供了一種分布式環(huán)境下的日志管理裝置,包括:
日志攔截器,用于攔截收集日志數(shù)據(jù)并發(fā)送; 日志中心,用于接收日志數(shù)據(jù)并對(duì)集中的日志數(shù)據(jù)進(jìn)行分析整理;
存儲(chǔ)數(shù)據(jù)庫(kù),用于存儲(chǔ)整理后的日志數(shù)據(jù),并提供給用戶進(jìn)行查詢和統(tǒng)計(jì)。
[0009]其中,優(yōu)選的方案是,日志攔截器包括:
攔截器,用于攔截日志數(shù)據(jù)并將日志放入日志待打包隊(duì)列;
打包線程,用于按時(shí)間或數(shù)據(jù)量條件將日志待打包隊(duì)列中的日志進(jìn)行壓縮形成數(shù)據(jù)包,并放入數(shù)據(jù)包待發(fā)送隊(duì)列;
發(fā)送線程,用于連接日志中心,向日志中心發(fā)送日志數(shù)據(jù)包。
[0010]其中,優(yōu)選的方案是,日志中心包括:
日志接收器,用于接收日志數(shù)據(jù)包,并將其放入數(shù)據(jù)包隊(duì)列;
解包線程,用于對(duì)數(shù)據(jù)包隊(duì)列中的數(shù)據(jù)包進(jìn)行解壓并放入日志隊(duì)列;
分析線程,用于對(duì)日志隊(duì)列中的日志進(jìn)行分析并整理為固定的存儲(chǔ)結(jié)構(gòu)。
[0011]本發(fā)明的分布式環(huán)境下的日志管理方法和裝置將分散在各個(gè)物理存儲(chǔ)位置的日志實(shí)時(shí)收集到一個(gè)集中的日志中心,并將各日志文件中的日志記錄按照統(tǒng)一時(shí)間線順序進(jìn)行排序并結(jié)構(gòu)化存儲(chǔ),在一定程度上降低了對(duì)應(yīng)用本身性能的影響。本發(fā)明的技術(shù)方案允許管理人員從日志中心實(shí)時(shí)管理與控制各個(gè)應(yīng)用實(shí)例中的日志生成、收集的過(guò)程中的參數(shù)及行為,在日志中心也提供了更強(qiáng)的日志查詢、分析、統(tǒng)計(jì)功能。本發(fā)明的方案能夠解決在分布式應(yīng)用開(kāi)發(fā)及維護(hù)過(guò)程中查找日志時(shí)由于日志文件存放的物理位置不同及時(shí)間順序不同所帶來(lái)的問(wèn)題。
[0012]【專利附圖】
【附圖說(shuō)明】
圖1是根據(jù)本發(fā)明實(shí)施例的分布式環(huán)境下的日志管理裝置的模塊圖;
圖2是根據(jù)本發(fā)明實(shí)施例的分布式環(huán)境下的日志管理裝置的日志攔截器的模塊圖;
圖3是根據(jù)本發(fā)明實(shí)施例的分布式環(huán)境下的日志管理裝置的日志中心的模塊圖;
圖4-5是根據(jù)本發(fā)明實(shí)施例的分布式環(huán)境下的日志管理裝置中在數(shù)據(jù)庫(kù)中存儲(chǔ)的日志數(shù)據(jù)所包括的屬性;
圖6是根據(jù)本發(fā)明實(shí)施例的分布式環(huán)境下的日志管理方法的流程圖。
【具體實(shí)施方式】
[0013]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說(shuō)明。
[0014]圖1是根據(jù)本發(fā)明實(shí)施例的分布式環(huán)境下的日志管理裝置的模塊圖。
[0015]如圖1所示,本發(fā)明的分布式環(huán)境下的日志管理裝置包括日志攔截器、日志中心和存儲(chǔ)數(shù)據(jù)庫(kù)。其中日志攔截器隨應(yīng)用啟動(dòng)并過(guò)濾其需要收集的日志信息;日志中心用于接收各個(gè)應(yīng)用的日志數(shù)據(jù),并對(duì)集中的日志數(shù)據(jù)進(jìn)行分析整理,提供人機(jī)界面給用戶進(jìn)行管理、查詢、統(tǒng)計(jì)等操作;存儲(chǔ)數(shù)據(jù)庫(kù)用于存儲(chǔ)經(jīng)過(guò)整理后的日志數(shù)據(jù)。
[0016]日志攔截器位于應(yīng)用中,是一組輔助型工具類組合,其結(jié)構(gòu)如圖2所示。該日志攔截器包括攔截器來(lái)獲取應(yīng)用中的各個(gè)日志數(shù)據(jù)。更具體地,攔截器包括啟動(dòng)及過(guò)濾類以及JVM數(shù)據(jù)收集線程。啟動(dòng)及過(guò)濾器實(shí)現(xiàn)了 Servlet 2.3規(guī)范中所定義的Filter接口,在Web應(yīng)用啟動(dòng)時(shí)負(fù)責(zé)啟動(dòng)日志攔截器相關(guān)的線程及服務(wù),同時(shí)負(fù)責(zé)攔截web應(yīng)用所有請(qǐng)求生成訪應(yīng)用的訪問(wèn)記錄以及應(yīng)用產(chǎn)生的各個(gè)日志記錄,并將這些記錄存入日志待打包隊(duì)列。JVM數(shù)據(jù)收集線程隨Web應(yīng)用啟動(dòng),每隔N秒收集內(nèi)存、線程、類等數(shù)據(jù),生成JVM狀態(tài)日志數(shù)據(jù)記錄,存入日志待打包隊(duì)列。上面的參數(shù)N可以由用戶根據(jù)經(jīng)驗(yàn)值設(shè)定。該攔截器根據(jù)相關(guān)日志攔截參數(shù)來(lái)攔截應(yīng)用所產(chǎn)生的日志,將符合條件的日志放入到待打包隊(duì)列中。
[0017]日志攔截器中運(yùn)行的相關(guān)線程還包括:
O日志打包線程:從日志待打包隊(duì)列中取得多條原始日志數(shù)據(jù),使用數(shù)據(jù)壓縮算法將多條日志數(shù)據(jù)壓縮成為一個(gè)數(shù)據(jù)包。當(dāng)滿足下面2個(gè)條件之一時(shí)結(jié)束打包,將數(shù)據(jù)包存入數(shù)據(jù)包待發(fā)送隊(duì)列。條件1:K條日志數(shù)據(jù)的原始大小累計(jì)大于M byte。條件2:當(dāng)前時(shí)間-開(kāi)始打包時(shí)間大于S秒。上面的參數(shù)K、M、S可以由用戶根據(jù)經(jīng)驗(yàn)值設(shè)定。該日志打包線程可以是一組線程,其數(shù)量可以根據(jù)待打包日志數(shù)據(jù)的數(shù)量和大小來(lái)確定。
[0018]2)發(fā)送線程:從數(shù)據(jù)包待發(fā)送隊(duì)列中取得壓縮好的數(shù)據(jù)包,使用HTTP協(xié)議將數(shù)據(jù)包發(fā)送給日志中心。該發(fā)送操作可以以固定的時(shí)間間隔進(jìn)行或是在數(shù)據(jù)包待發(fā)送隊(duì)列的長(zhǎng)度大于一定長(zhǎng)度閾值時(shí)進(jìn)行。上述的時(shí)間間隔和長(zhǎng)度閾值均可由用戶根據(jù)經(jīng)驗(yàn)值設(shè)定。該發(fā)送線程同樣可以是一組線程,其數(shù)量可以根據(jù)待發(fā)送的數(shù)據(jù)包的數(shù)量來(lái)確定。
[0019]3)時(shí)間校準(zhǔn)線程:該每間隔N小時(shí)使用NTP協(xié)議訪問(wèn)國(guó)家授時(shí)服務(wù)器獲取標(biāo)準(zhǔn)時(shí)間,計(jì)算本地時(shí)間與標(biāo)準(zhǔn)時(shí)間的差值,對(duì)日志生成時(shí)間進(jìn)行校準(zhǔn)。
[0020]該日志攔截器中包括2個(gè)數(shù)據(jù)緩存隊(duì)列,分別是日志待打包隊(duì)列和數(shù)據(jù)包待發(fā)送隊(duì)列,它們分別用于存放原始日志數(shù)據(jù)和壓縮后的數(shù)據(jù)包。
[0021]日志攔截器通過(guò)上述的后臺(tái)守護(hù)線程的運(yùn)行來(lái)定時(shí)收集、打包和發(fā)送日志,克服了現(xiàn)有技術(shù)中實(shí)時(shí)收集日志方法所帶來(lái)的占用大量資源,造成應(yīng)用性能顯著下降的缺陷。
[0022]日志中心是一個(gè)Web應(yīng)用程序,其接收各個(gè)應(yīng)用的日志數(shù)據(jù),并對(duì)集中的日志數(shù)據(jù)進(jìn)行分析整理,同時(shí)提供GUI用戶管理界面給用戶進(jìn)行管理、查詢、統(tǒng)計(jì)等操作。其結(jié)構(gòu)如圖3所示。該日志中心包括:
O日志接收器:基于HTTP協(xié)議接收日志攔截器發(fā)送來(lái)的日志數(shù)據(jù)包,并將其存入數(shù)據(jù)包隊(duì)列中。
[0023]2)解包線程:負(fù)責(zé)從數(shù)據(jù)包隊(duì)列中取得數(shù)據(jù)包,將其解壓縮后存入日志隊(duì)列中。該解包線程可以是一組線程,其數(shù)量可以根據(jù)待解壓縮的數(shù)據(jù)包的數(shù)量來(lái)確定。
[0024]3)分析線程:負(fù)責(zé)從日志隊(duì)列中將一條日志數(shù)據(jù)解析成為最終日志數(shù)據(jù)存儲(chǔ)結(jié)構(gòu),并對(duì)日志數(shù)據(jù)按照多種條件進(jìn)行分類,最終將日志數(shù)據(jù)存入數(shù)據(jù)庫(kù)中。最終日志數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)詳見(jiàn)下面的描述。該分析線程可以是一組線程,其數(shù)量可以根據(jù)待分析的日志數(shù)據(jù)的數(shù)量來(lái)確定。在日志的解析過(guò)程中將提取最關(guān)鍵的時(shí)間信息、日志等級(jí)、產(chǎn)生位置等信息,解析過(guò)后的日志記錄將具備相同的數(shù)據(jù)結(jié)構(gòu),方便后續(xù)進(jìn)行相關(guān)的數(shù)據(jù)分析。日志數(shù)據(jù)按照日志的級(jí)別等可以被分類為系統(tǒng)級(jí),應(yīng)用級(jí),業(yè)務(wù)級(jí)日志,或可按照日志的來(lái)源,例如產(chǎn)生日志的服務(wù)器,線程,類等,進(jìn)行分類。日志從原本無(wú)結(jié)構(gòu)的文本數(shù)據(jù)流,經(jīng)過(guò)分析線程的結(jié)構(gòu)化處理之后,最終以相同的結(jié)構(gòu)存儲(chǔ)在非關(guān)系型數(shù)據(jù)庫(kù)中。
[0025]該日志中心包括2個(gè)數(shù)據(jù)緩存隊(duì)列,分別是數(shù)據(jù)包隊(duì)列和日志隊(duì)列,它們分別用于存放接收到的壓縮數(shù)據(jù)包和解壓縮后的日志數(shù)據(jù)。
[0026]最終日志數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)如圖4-5所示,所有的日志數(shù)據(jù)條目都包括如圖4-5所示的屬性,日志中心的分析線程負(fù)責(zé)將所有的日志數(shù)據(jù)進(jìn)行填充和完善,填寫(xiě)上圖4-5中所示的各種屬性,從而方便用戶的查詢和統(tǒng)計(jì)。最終得到的日志數(shù)據(jù)存儲(chǔ)在存儲(chǔ)數(shù)據(jù)庫(kù)中。出于存取速度和性能的考慮,該數(shù)據(jù)庫(kù)可以是非關(guān)系型數(shù)據(jù)庫(kù)。[0027]下面結(jié)合圖6對(duì)根據(jù)本發(fā)明的實(shí)施例的分布式環(huán)境下的日志管理方法的步驟進(jìn)行說(shuō)明。該方法主要包括日志攔截器收集日志的步驟SI和日志中心分析整理與存儲(chǔ)日志的步驟S2。
[0028]在步驟SI的日志的收集過(guò)程中,日志攔截器根據(jù)相關(guān)日志攔截參數(shù)對(duì)應(yīng)用所產(chǎn)生的日志進(jìn)行攔截,將符合條件的日志放入到待打包隊(duì)列中,由打包線程根據(jù)時(shí)間或數(shù)據(jù)量條件將一批日志進(jìn)行壓縮成為數(shù)據(jù)包,并放入數(shù)據(jù)包待發(fā)送隊(duì)列中,發(fā)送線程定時(shí)檢測(cè)到待發(fā)送數(shù)據(jù)包之后將連接到日志中心并發(fā)送日志數(shù)據(jù)包。步驟Si包括的具體步驟如下:在步驟S11,攔截器隨應(yīng)用啟動(dòng)并初始化;在步驟S12,攔截器根據(jù)日志相關(guān)參數(shù)攔截日志,將符合條件的日志放入日志待打包隊(duì)列;步驟S13中,打包線程按時(shí)間或數(shù)據(jù)量條件將日志待打包隊(duì)列中的日志進(jìn)行壓縮形成數(shù)據(jù)包,并放入數(shù)據(jù)包待發(fā)送隊(duì)列;在步驟S14,發(fā)送線程檢測(cè)到數(shù)據(jù)包待發(fā)送隊(duì)列中有數(shù)據(jù)時(shí)連接日志中心,并向日志中心發(fā)送日志數(shù)據(jù)包。
[0029]在步驟S2的日志中心對(duì)日志的分析整理與存儲(chǔ)過(guò)程中,日志中心在收到數(shù)據(jù)包后將對(duì)日志進(jìn)行分析整理,并將整理后的日志保存在非關(guān)系型數(shù)據(jù)庫(kù)中。步驟S2包括的具體步驟如下:在步驟S21,日志接收器接收到日志數(shù)據(jù)包之后將其放入數(shù)據(jù)包隊(duì)列;在步驟S22,解包線程檢測(cè)到數(shù)據(jù)包之后對(duì)數(shù)據(jù)包進(jìn)行解壓并放入日志隊(duì)列;在步驟S23,一組分析線程將對(duì)日志進(jìn)行解析和分類,例如分為系統(tǒng)級(jí),應(yīng)用級(jí),業(yè)務(wù)級(jí)日志等;在步驟S24,分析線程將解析后的數(shù)據(jù)保存在非關(guān)系型數(shù)據(jù)庫(kù)中供其他用戶查詢使用。
[0030]本發(fā)明的分布式環(huán)境下的日志管理方法和裝置對(duì)日志管理和使用帶來(lái)如下的改進(jìn):
1.分散的應(yīng)用日志可以被集中在一個(gè)存儲(chǔ)空間內(nèi),不同的時(shí)間線將被重新編排為統(tǒng)一的時(shí)間線。將分散的日志重新以應(yīng)用為單位聚集成一個(gè)連續(xù)整體。
[0031]2.對(duì)日志進(jìn)行分析并存放在非關(guān)系型數(shù)據(jù)庫(kù)中,可以按照時(shí)間、線程、類、日志等級(jí)等條件查詢?nèi)罩緮?shù)據(jù),方便用戶的查詢統(tǒng)計(jì)。
[0032]最后說(shuō)明的是,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的宗旨和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
【權(quán)利要求】
1.一種分布式環(huán)境下的日志管理方法,包括以下步驟: 攔截收集日志數(shù)據(jù)并發(fā)送; 接收日志數(shù)據(jù),并對(duì)集中的日志數(shù)據(jù)進(jìn)行分析整理; 將整理后的日志數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中,提供給用戶進(jìn)行查詢和統(tǒng)計(jì)。
2.根據(jù)權(quán)利要求1所述的分布式環(huán)境下的日志管理方法,其中,所述攔截收集日志數(shù)據(jù)并發(fā)送的步驟具體包括: 攔截日志數(shù)據(jù)并將日志放入日志待打包隊(duì)列; 按時(shí)間或數(shù)據(jù)量條件將日志待打包隊(duì)列中的日志進(jìn)行壓縮形成數(shù)據(jù)包,并放入數(shù)據(jù)包待發(fā)送隊(duì)列; 連接日志中心,向日志中心發(fā)送日志數(shù)據(jù)包。
3.根據(jù)權(quán)利要求2所述的分布式環(huán)境下的日志管理方法,其中,由打包線程將日志進(jìn)行壓縮形成數(shù)據(jù)包,由發(fā)送線程向日志中心發(fā)送日志數(shù)據(jù)包。
4.根據(jù)權(quán)利要求2所述的分布式環(huán)境下的日志管理方法,其中,攔截日志時(shí)根據(jù)日志攔截參數(shù)來(lái)攔截日志,將符合條件的日志放入到待打包隊(duì)列中。
5.根據(jù)權(quán)利要求2所述的分布式環(huán)境下的日志管理方法,其中,在檢測(cè)到數(shù)據(jù)包待發(fā)送隊(duì)列中的數(shù)據(jù)長(zhǎng)度大于一定長(zhǎng)度閾值時(shí)或以固定的時(shí)間間隔發(fā)送日志數(shù)據(jù)包。
6.根據(jù)權(quán)利要求2所述 分布式環(huán)境下的日志管理方法,其中,所述接收日志數(shù)據(jù),并對(duì)集中的日志數(shù)據(jù)進(jìn)行整理分析的步驟具體包括: 接收日志數(shù)據(jù)包,并將其放入數(shù)據(jù)包隊(duì)列; 對(duì)數(shù)據(jù)包隊(duì)列中的數(shù)據(jù)包進(jìn)行解壓并放入日志隊(duì)列; 對(duì)日志隊(duì)列中的日志進(jìn)行分析并整理為固定的存儲(chǔ)結(jié)構(gòu)。
7.根據(jù)權(quán)利要求6所述的分布式環(huán)境下的日志管理方法,其中,由解包線程對(duì)數(shù)據(jù)包進(jìn)行解壓,并由分析線程對(duì)日志進(jìn)行分析和整理。
8.根據(jù)權(quán)利要求1所述的分布式環(huán)境下的日志管理方法,其中,將整理后的日志數(shù)據(jù)存儲(chǔ)在非關(guān)系型數(shù)據(jù)庫(kù)中。
9.根據(jù)權(quán)利要求1所述的分布式環(huán)境下的日志管理方法,其中,使用HTTP協(xié)議發(fā)送和接收日志數(shù)據(jù)。
10.一種分布式環(huán)境下的日志管理裝置,包括: 日志攔截器,用于攔截收集日志數(shù)據(jù)并發(fā)送; 日志中心,用于接收日志數(shù)據(jù)并對(duì)集中的日志數(shù)據(jù)進(jìn)行分析整理; 存儲(chǔ)數(shù)據(jù)庫(kù),用于存儲(chǔ)整理后的日志數(shù)據(jù),并提供給用戶進(jìn)行查詢和統(tǒng)計(jì)。
11.根據(jù)權(quán)利要求10所述的分布式環(huán)境下的日志管理裝置,其中,日志攔截器包括: 攔截器,用于攔截日志數(shù)據(jù)并將日志放入日志待打包隊(duì)列; 打包線程,用于按時(shí)間或數(shù)據(jù)量條件將日志待打包隊(duì)列中的日志進(jìn)行壓縮形成數(shù)據(jù)包,并放入數(shù)據(jù)包待發(fā)送隊(duì)列; 發(fā)送線程,用于連接日志中心,向日志中心發(fā)送日志數(shù)據(jù)包。
12.根據(jù)權(quán)利要求11所述的分布式環(huán)境下的日志管理裝置,其中,日志中心包括: 日志接收器,用于接收日志數(shù)據(jù)包,并將其放入數(shù)據(jù)包隊(duì)列; 解包線程,用于對(duì)數(shù)據(jù)包隊(duì)列中的數(shù)據(jù)包進(jìn)行解壓并放入日志隊(duì)列;分析線程,用于對(duì)日志隊(duì)列中的日志進(jìn)行分析并整理為固定的存儲(chǔ)結(jié)構(gòu)。
13.根據(jù)權(quán)利要求10所述的分布式環(huán)境下的日志管理裝置,其中所述存儲(chǔ)數(shù)據(jù)庫(kù)是非關(guān)系型數(shù)據(jù)庫(kù) 。
【文檔編號(hào)】G06F11/34GK103617287SQ201310682470
【公開(kāi)日】2014年3月5日 申請(qǐng)日期:2013年12月12日 優(yōu)先權(quán)日:2013年12月12日
【發(fā)明者】孫凱 申請(qǐng)人:用友軟件股份有限公司