用于處理日志的方法及其系統(tǒng)的制作方法
【專利摘要】一種用于處理日志的方法及其系統(tǒng),所述方法包括:收集步驟:收集由服務(wù)器針對用戶操作而產(chǎn)生的異構(gòu)日志,其中,基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生異構(gòu)日志,使得異構(gòu)日志包括指示動作項(xiàng)目的項(xiàng)目標(biāo)識符字段;格式轉(zhuǎn)換步驟:將收集的異構(gòu)日志轉(zhuǎn)換為具有統(tǒng)一格式的日志,其中,統(tǒng)一格式包括項(xiàng)目標(biāo)識符字段;組合步驟:通過組合具有統(tǒng)一格式的日志來產(chǎn)生中間日志文件,并將中間日志文件存儲在不同于所述各個服務(wù)器的中間服務(wù)器上;統(tǒng)計步驟:基于指示期望統(tǒng)計的動作項(xiàng)目的項(xiàng)目標(biāo)識符字段來配置日志規(guī)格文檔,以利用日志規(guī)格文檔從中間日志文件所包括的各個日志中自動統(tǒng)計期望統(tǒng)計的動作項(xiàng)目,從而以規(guī)范化的方式來處理海量日志。
【專利說明】用于處理日志的方法及其系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本申請涉及網(wǎng)絡(luò)日志服務(wù)系統(tǒng)領(lǐng)域,更具體地說,涉及一種以規(guī)范化的方式來處理日志的方法和系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)技術(shù)和信息處理技術(shù)的發(fā)展,越來越多的終端用戶已經(jīng)接入網(wǎng)絡(luò),并在日常工作、學(xué)習(xí)和生活中將大量的時間用來上網(wǎng)。針對每個用戶的每次操作行為,網(wǎng)絡(luò)上的諸多環(huán)節(jié)都將會產(chǎn)生相應(yīng)的網(wǎng)絡(luò)日志。在提供各種服務(wù)的服務(wù)器端產(chǎn)生的各種網(wǎng)絡(luò)日志反映出各個服務(wù)的運(yùn)行情況,也有助于服務(wù)提供商了解用戶的上網(wǎng)行為,從而給出技術(shù)上的保障或改進(jìn)。
[0003]然而,網(wǎng)絡(luò)日志的數(shù)量巨大,常常需要對百億條日志進(jìn)行處理。此外,這些日志很可能因?yàn)楫a(chǎn)生的來源不同而具有不同的格式。例如,當(dāng)某個用戶作出網(wǎng)頁瀏覽的相關(guān)動作(諸如點(diǎn)擊)時,涉及頁面變化、數(shù)據(jù)提取和處理、內(nèi)容展示等各個方面的網(wǎng)絡(luò)日志均會相應(yīng)地被產(chǎn)生,其中,前端的頁面設(shè)計美工人員與后端的數(shù)據(jù)處理程序員通常會得到不同格式的相應(yīng)日志。此外,針對同一個用戶動作,網(wǎng)頁中的不同模塊也將分別產(chǎn)生各自的日志。由此可見,網(wǎng)絡(luò)日志數(shù)量巨大,內(nèi)容繁雜,且其在產(chǎn)生來源上的差異還可能導(dǎo)致得到的日志具有異構(gòu)性,因此,很難有效地處理產(chǎn)生的海量日志。
[0004]另外,對網(wǎng)絡(luò)日志進(jìn)行處理是服務(wù)提供商維護(hù)網(wǎng)絡(luò)的重要一環(huán),在現(xiàn)有技術(shù)中,為了統(tǒng)計這些日志,常常需要將網(wǎng)絡(luò)日志存儲為表格形式,此后,針對想要統(tǒng)計的內(nèi)容來設(shè)置相應(yīng)的處理過程,這種方式存在一定的弊端,具體說來,利用表格來存儲海量日志數(shù)據(jù)會大大降低數(shù)據(jù)的處理速度,而且在統(tǒng)計日志時也受限于表格這種形式,并且為了統(tǒng)計特定的統(tǒng)計項(xiàng)目,需要反復(fù)地篩選表格中的海量日志,由于網(wǎng)絡(luò)日志數(shù)據(jù)的龐大,這種統(tǒng)計方式將耗費(fèi)大量的時間,且欠缺靈活性。
[0005]因此,現(xiàn)有的日志服務(wù)系統(tǒng)在處理海量日志時,其巨大的數(shù)據(jù)量給日志數(shù)據(jù)的存儲和統(tǒng)計帶來很大的不便。此外,當(dāng)日志因?yàn)楫a(chǎn)生來源不同而具有不同的格式時,也難以對這些異構(gòu)日志進(jìn)行統(tǒng)計等處理。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的在于提供一種能夠以規(guī)范化的方式來處理海量日志的方法和系統(tǒng)。
[0007]根據(jù)本發(fā)明的一方面,提供一種用于處理日志的方法,包括:收集步驟:收集由網(wǎng)絡(luò)上的各個服務(wù)器針對用戶操作而產(chǎn)生的異構(gòu)日志,其中,基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生異構(gòu)日志,使得異構(gòu)日志包括指示動作項(xiàng)目的項(xiàng)目標(biāo)識符字段;格式轉(zhuǎn)換步驟:將收集的異構(gòu)日志轉(zhuǎn)換為具有統(tǒng)一格式的日志,其中,所述統(tǒng)一格式包括項(xiàng)目標(biāo)識符字段;組合步驟:通過組合具有統(tǒng)一格式的日志來產(chǎn)生中間日志文件,并將中間日志文件存儲在不同于所述各個服務(wù)器的中間服務(wù)器上;統(tǒng)計步驟:基于指示期望統(tǒng)計的動作項(xiàng)目的項(xiàng)目標(biāo)識符字段來配置日志規(guī)格文檔,以利用日志規(guī)格文檔從中間日志文件所包括的各個日志中自動統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
[0008]所述網(wǎng)絡(luò)上的各個服務(wù)器可以是前端服務(wù)器或后端服務(wù)器。
[0009]所述統(tǒng)一格式還可包括以下字段中的至少一個:用戶標(biāo)識符字段、日志標(biāo)識符字段、日志產(chǎn)生時間字段、日志來源字段、用戶行為描述字段。
[0010]格式轉(zhuǎn)換步驟可包括:解析步驟:基于統(tǒng)一格式中的各個字段來解析收集的異構(gòu)日志;字段排列步驟:排列解析出的各個字段,以得到具有統(tǒng)一格式的日志。
[0011]日志規(guī)格文檔可按照XML來配置,從而以項(xiàng)目標(biāo)識符為搜索條件來統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
[0012]搜索條件可包括以下字段中的至少一個與項(xiàng)目標(biāo)識符的結(jié)合:日志產(chǎn)生時間字段、日志來源字段、用戶行為描述字段。
[0013]解析步驟可包括:提取步驟:基于統(tǒng)一格式中的各個字段來提取異構(gòu)日志中的字段;修正步驟:對提取的字段進(jìn)行修正以與統(tǒng)一格式中的相應(yīng)字段完全一致。
[0014]在組合步驟中,特定時間段內(nèi)產(chǎn)生的具有相同用戶標(biāo)識符字段、日志標(biāo)識符字段或相同用戶行為描述字段的日志可被合并為一條日志。
[0015]根據(jù)本發(fā)明的另一方面,提供一種用于處理日志的系統(tǒng),包括:收集裝置:收集由網(wǎng)絡(luò)上的各個服務(wù)器針對用戶操作而產(chǎn)生的異構(gòu)日志,其中,基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生異構(gòu)日志,使得異構(gòu)日志包括指示動作項(xiàng)目的項(xiàng)目標(biāo)識符字段;格式轉(zhuǎn)換裝置:將收集的異構(gòu)日志轉(zhuǎn)換為具有統(tǒng)一格式的日志,其中,所述統(tǒng)一格式包括項(xiàng)目標(biāo)識符字段;組合裝置:通過組合具有統(tǒng)一格式的日志來產(chǎn)生中間日志文件,并將中間日志文件存儲在不同于所述各個服務(wù)器的中間服務(wù)器上;統(tǒng)計裝置:基于指示期望統(tǒng)計的動作項(xiàng)目的項(xiàng)目標(biāo)識符字段來配置日志規(guī)格文檔,以利用日志規(guī)格文檔從中間日志文件所包括的各個日志中自動統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
[0016]格式轉(zhuǎn)換裝置可包括:解析裝置:基于統(tǒng)一格式中的各個字段來解析收集的異構(gòu)日志;字段排列裝置:排列解析出的各個字段,以得到具有統(tǒng)一格式的日志。
[0017]解析裝置可包括:提取裝置:基于統(tǒng)一格式中的各個字段來提取異構(gòu)日志中的字段;修正裝置:對提取的字段進(jìn)行修正以與統(tǒng)一格式中的相應(yīng)字段完全一致。
[0018]根據(jù)本發(fā)明的另一方面,提供一種用于處理日志的方法,包括:收集步驟:收集由網(wǎng)絡(luò)上的各個服務(wù)器針對用戶操作而產(chǎn)生的具有統(tǒng)一格式的日志,其中,基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生所述日志,使得所述日志包括指示動作項(xiàng)目的項(xiàng)目標(biāo)識符字段;組合步驟:通過組合所述日志來產(chǎn)生中間日志文件,并將中間日志文件存儲在不同于所述各個服務(wù)器的中間服務(wù)器上;統(tǒng)計步驟:基于指示期望統(tǒng)計的動作項(xiàng)目的項(xiàng)目標(biāo)識符字段來配置日志規(guī)格文檔,以利用日志規(guī)格文檔從中間日志文件所包括的各個日志中自動統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
[0019]根據(jù)本發(fā)明的另一方面,提供一種用于處理日志的系統(tǒng),包括:收集裝置:收集由網(wǎng)絡(luò)上的各個服務(wù)器針對用戶操作而產(chǎn)生的具有統(tǒng)一格式的日志,其中,基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生所述日志,使得所述日志包括指示動作項(xiàng)目的項(xiàng)目標(biāo)識符字段;組合裝置:通過組合所述日志來產(chǎn)生中間日志文件,并將中間日志文件存儲在不同于所述各個服務(wù)器的中間服務(wù)器上;統(tǒng)計裝置:基于指示期望統(tǒng)計的動作項(xiàng)目的項(xiàng)目標(biāo)識符字段來配置日志規(guī)格文檔,以利用日志規(guī)格文檔從中間日志文件所包括的各個日志中自動統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
[0020]根據(jù)本發(fā)明的示例性實(shí)施例,可規(guī)范地處理網(wǎng)絡(luò)上收集的海量日志,這些海量日志組合成統(tǒng)一的中間日志文件并存儲于額外設(shè)置的中間服務(wù)器上,從而可進(jìn)行快速的處理。此外,可通過基于動作項(xiàng)目產(chǎn)生日志來利用日志規(guī)格文檔自動地統(tǒng)計日志,從而提高了日志處理的效率。
【專利附圖】
【附圖說明】
[0021]通過下面結(jié)合附圖對本發(fā)明示例性實(shí)施例的描述,本發(fā)明的上述和其它目的和特點(diǎn)將會變得更加清楚,其中:
[0022]圖1是示出根據(jù)本發(fā)明示例性實(shí)施例進(jìn)行網(wǎng)絡(luò)日志處理的網(wǎng)絡(luò)組成示意圖;
[0023]圖2是示出根據(jù)本發(fā)明示例性實(shí)施例的日志處理方法的流程圖;
[0024]圖3是示出根據(jù)本發(fā)明示例性實(shí)施例的日志處理方法中的格式轉(zhuǎn)換步驟的示意性流程圖;
[0025]圖4是示出根據(jù)本發(fā)明示例性實(shí)施例的日志處理方法中的解析步驟的示意性流程圖;
[0026]圖5是示出根據(jù)本發(fā)明示例性實(shí)施例的日志處理系統(tǒng)的框圖;以及
[0027]圖6是示出根據(jù)本發(fā)明另一示例性實(shí)施例的日志處理方法的流程圖。
【具體實(shí)施方式】
[0028]現(xiàn)將詳細(xì)參照本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中,相同的標(biāo)號始終指的是相同的部件。以下將通過參照附圖來說明所述實(shí)施例,以便解釋本發(fā)明。
[0029]圖1是示出根據(jù)本發(fā)明示例性實(shí)施例進(jìn)行網(wǎng)絡(luò)日志處理的網(wǎng)絡(luò)組成示意圖。如圖1所示,對于每一次用戶在客戶端作出的操作,分布于網(wǎng)絡(luò)的各個服務(wù)器(例如,后端服務(wù)器或前端服務(wù)器)將產(chǎn)生相應(yīng)的日志。例如,假設(shè)某個用戶在瀏覽網(wǎng)頁時進(jìn)行點(diǎn)擊特定按鈕、移動特定條目等操作,則該用戶操作將引起一系列動作項(xiàng)目,涉及例如頁面變化、數(shù)據(jù)提取和處理、內(nèi)容展示等各個方面,相應(yīng)的后端服務(wù)器或前端服務(wù)器將基于這次用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生相應(yīng)的日志,使得產(chǎn)生的日志中包括指示各個具體動作項(xiàng)目的信息,而不是僅包括日志本身的內(nèi)容。這里,頁面中通常會包括多個按鈕,而某些用戶操作(諸如刷新頁面等)會同時涉及多個模塊的變化,相應(yīng)地,后端服務(wù)器或前端服務(wù)器會產(chǎn)生所述多個模塊的不同日志。
[0030]根據(jù)本發(fā)明的示例性實(shí)施例,后端服務(wù)器與前端服務(wù)器各自產(chǎn)生的網(wǎng)絡(luò)日志被統(tǒng)一發(fā)送到額外設(shè)置的中間服務(wù)器,以進(jìn)行相應(yīng)的處理。通過這種方式,能夠確保處理網(wǎng)絡(luò)日志的速度,且不會影響網(wǎng)絡(luò)其它業(yè)務(wù)的正常運(yùn)行。
[0031]以下將參照圖2來描述根據(jù)本發(fā)明示例性實(shí)施例的用于在上述網(wǎng)絡(luò)中處理日志的方法,在該實(shí)施例中,分布于網(wǎng)絡(luò)上的各個服務(wù)器將產(chǎn)生不同格式的異構(gòu)日志。如圖2所示,在步驟S10,執(zhí)行收集步驟:收集由網(wǎng)絡(luò)上的各個服務(wù)器針對用戶操作而產(chǎn)生的異構(gòu)日志。這里,基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生異構(gòu)日志,使得異構(gòu)日志包括指示動作項(xiàng)目的項(xiàng)目標(biāo)識符字段。根據(jù)該示例性實(shí)施例,由于異構(gòu)日志在產(chǎn)生時包括了指示相應(yīng)動作項(xiàng)目的項(xiàng)目指示符字段,因此在處理海量異構(gòu)日志時能夠提高處理效率。[0032]具體說來,作為示例,分布于網(wǎng)絡(luò)上的各個服務(wù)器可以是后端服務(wù)器或前端服務(wù)器,其中,針對用戶192在2012年I月10作出的點(diǎn)擊(cl i ck)操作,前端服務(wù)器產(chǎn)生的日志可具有以下格式:
[0033]2012-01-10 21:00:OOurl[index, php ? 1gid = 247&uid = 192&logitemid =011&do = click]
[0034]在上述日志中,包括了以下信息:項(xiàng)目標(biāo)識符字段(1gitemid),用于標(biāo)識用戶操作所引起的動作項(xiàng)目,在該實(shí)施例中其值為011。應(yīng)注意:可預(yù)先設(shè)置項(xiàng)目標(biāo)識符字段的值所表示的動作項(xiàng)目的具體內(nèi)容。例如,這里的項(xiàng)目標(biāo)識符字段011表示用戶的點(diǎn)擊操作在前端服務(wù)器產(chǎn)生的動作項(xiàng)目之一,即,“首頁點(diǎn)擊”項(xiàng)目。
[0035]此外,所述日志還可包括以下字段:用戶標(biāo)識符字段(Uid),用于標(biāo)識進(jìn)行操作的用戶,在該實(shí)施例中其值為192 ;日志標(biāo)識符字段(1gid),用于在網(wǎng)絡(luò)中標(biāo)識同一次用戶操作所產(chǎn)生的日志,在該實(shí)施例中其值為247 ;日志產(chǎn)生時間字段,用于標(biāo)識產(chǎn)生該條日志的時間,在該實(shí)施例中其值為21:00:00;用戶行為描述字段(do),用于描述用戶的操作行為,在該實(shí)施例中其值為click(點(diǎn)擊)。
[0036]相應(yīng)地,針對用戶192在2012年I月10作出的點(diǎn)擊(click)操作,后端服務(wù)器(例如,涉及首頁展現(xiàn)的后端服務(wù)器)產(chǎn)生的日志可具有以下格式:
[0037]2012-01-10 21:00:001ogid[247]uid[192]logitemid[010]do[show]
[0038]在上述日志中,包括了以下信息:項(xiàng)目標(biāo)識符字段(1gitemid),用于標(biāo)識用戶操作所引起的動作項(xiàng)目,在該實(shí)施例中其值為010。應(yīng)注意:可預(yù)先設(shè)置項(xiàng)目標(biāo)識符字段的值所表示的動作項(xiàng)目的具體內(nèi)容。例如,這里的項(xiàng)目標(biāo)識符字段010表示用戶的點(diǎn)擊操作在后端服務(wù)器產(chǎn)生的動作項(xiàng)目之一,即,“首頁展示”項(xiàng)目。
`[0039]此外,所述日志還可包括以下字段:用戶標(biāo)識符字段(Uid),用于標(biāo)識進(jìn)行操作的用戶,在該實(shí)施例中其值為192;日志標(biāo)識符字段(1gid),用于在網(wǎng)絡(luò)中標(biāo)識同一次用戶操作所產(chǎn)生的日志,在該實(shí)施例中其值為247 ;日志產(chǎn)生時間字段,用于標(biāo)識產(chǎn)生該條日志的時間,在該實(shí)施例中其值為21:00:00;用戶行為描述字段(do),用于描述用戶的操作行為,在該實(shí)施例中其值為show (展示)。
[0040]應(yīng)注意,各個服務(wù)器產(chǎn)生的日志并不必然包括以上描述的除了項(xiàng)目標(biāo)識符字段之外的其它所有字段,并且還可包括以上未示出的字段。
[0041]從以上示例可以看出,后端服務(wù)器與前端服務(wù)器產(chǎn)生了具有不同格式的異構(gòu)日志,不僅字段的排列方式不同,而且部分字段的內(nèi)容也有所區(qū)別,但這些日志均基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目而產(chǎn)生。
[0042]然后,在步驟S20,執(zhí)行格式轉(zhuǎn)換步驟:將收集的異構(gòu)日志轉(zhuǎn)換為具有統(tǒng)一格式的日志,其中,所述統(tǒng)一格式包括項(xiàng)目標(biāo)識符字段。
[0043]除了項(xiàng)目標(biāo)識符字段之外,統(tǒng)一格式可包括作為示例的以下字段:
[0044]Uid:用戶標(biāo)識符字段,用于標(biāo)識進(jìn)行操作的用戶;
[0045]Datetime:日志產(chǎn)生時間字段,用于標(biāo)識產(chǎn)生日志的時間;
[0046]Logid:日志標(biāo)識符字段,用于在網(wǎng)絡(luò)中標(biāo)識同一次用戶操作所產(chǎn)生的日志;
[0047]Do:用戶行為描述字段,用于描述用戶的操作行為。
[0048]作為示例,在具有所述統(tǒng)一格式的日志中,各字段按照預(yù)定順序排列,其間由制表符“\t”來分割,整條日志以“\n”結(jié)束。此外,作為優(yōu)選方式,在將收集的異構(gòu)日志轉(zhuǎn)換為具有統(tǒng)一格式的日志時,還可將日志來源(source)字段包括在轉(zhuǎn)換后的日志中,其中,所述日志來源字段用于標(biāo)識相應(yīng)日志產(chǎn)生的來源。作為示例,當(dāng)相應(yīng)日志由后端服務(wù)器產(chǎn)生時,它的日志來源字段具有值fe,而當(dāng)相應(yīng)日志由前端服務(wù)器產(chǎn)生時,它的日志來源字段具有值rd。
[0049]根據(jù)上述統(tǒng)一格式,上述由前端服務(wù)器產(chǎn)生的日志可被轉(zhuǎn)換為如下日志,其中,011為標(biāo)識符字段(1gitemid)的取值:
[0050]192\t2012-01-10 21:00:00\t 247\t 011\t fe\t click\n
[0051]此外,上述由后端服務(wù)器產(chǎn)生的日志可被轉(zhuǎn)換為如下日志,其中,010為標(biāo)識符字段(1gitemid)的取值:
[0052]192\t 2012-01-10 21:00:00\t 247\t 010\t rd\t show\n
[0053]以下將參照圖3來描述根據(jù)本發(fā)明示例性實(shí)施例的日志處理方法中的格式轉(zhuǎn)換步驟的示例。
[0054]如圖3所示,在步驟S210,執(zhí)行解析步驟:基于統(tǒng)一格式中的各個字段來解析收集的異構(gòu)日志。
[0055]例如,假設(shè)收集到的異構(gòu)日志為后端服務(wù)器產(chǎn)生的日志“2012-01-1021:00:001ogid[247]uid[192] logitemid[010] do [show] ”,則可按照統(tǒng)一格式中的各個字段Uid、Datetime、Logid、Logitemid、Source、Do來解析上述日志,以獲取對應(yīng)字段的內(nèi)容。
[0056]然后,在步驟S220,執(zhí)行字段排列步驟:排列解析出的各個字段,以得到具有統(tǒng)一格式的日志。作為示例,可按照預(yù)定的順序來排列解析出的各字段的內(nèi)容,其間由制表符“\t”來分割,整條日志以“\n”結(jié)束。在上述示例中,轉(zhuǎn)換后的日志可具有以下形式:192\t2012-01-10 21:00:00\t 247\t010\t rd\t show\n。
[0057]作為優(yōu)選方式,在執(zhí)行解析步驟時,可對異構(gòu)日志的各個字段進(jìn)行修正,以確保各字段的內(nèi)容符合預(yù)先設(shè)置的格式。以下參照圖4來描述根據(jù)本發(fā)明示例性實(shí)施例的日志處理方法中的解析步驟的示例。
[0058]如圖4所示,在步驟S2110,執(zhí)行提取步驟:基于統(tǒng)一格式中的各個字段來提取異構(gòu)日志中的字段。這里,如果異構(gòu)日志中包括統(tǒng)一格式中未設(shè)置的信息字段(如,地址鏈接字段),可將所述信息字段丟棄。然后,在步驟S2120,執(zhí)行修正步驟:對提取的字段進(jìn)行修正以與統(tǒng)一格式中的相應(yīng)字段完全一致。這里,可通過修正步驟來刪除相應(yīng)字段中不當(dāng)使用的符號(如,非法空格)等,從而使得修正后的各字段內(nèi)容符合統(tǒng)一格式中的相關(guān)設(shè)定。
[0059]再次參照圖2,在步驟S30,執(zhí)行組合步驟:通過組合具有統(tǒng)一格式的日志來產(chǎn)生中間日志文件,并將中間日志文件存儲在不同于所述各個服務(wù)器的中間服務(wù)器上。這里,與現(xiàn)有技術(shù)中采用的數(shù)據(jù)表存儲方式不同,本發(fā)明通過將轉(zhuǎn)換后的日志進(jìn)行組合來產(chǎn)生中間日志文件,并將其存儲在單獨(dú)設(shè)置的中間服務(wù)器中。通過上述方式,不僅有助于日志的自動處理,而且提高了處理速度,且對已有服務(wù)器的運(yùn)行不造成影響。
[0060]作為優(yōu)選方式,在組合步驟中,可將特定時間段內(nèi)產(chǎn)生的具有相同用戶標(biāo)識符字段、日志標(biāo)識符字段或相同用戶行為描述字段的日志合并為一條日志,以避免對項(xiàng)目的重復(fù)統(tǒng)計,從而更加客觀地反映用戶的上網(wǎng)行為。[0061]接下來,在步驟S40,執(zhí)行統(tǒng)計步驟:基于指示期望統(tǒng)計的動作項(xiàng)目的項(xiàng)目標(biāo)識符字段來配置日志規(guī)格文檔,以利用日志規(guī)格文檔從中間日志文件所包括的各個日志中自動統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
[0062]具體說來,在現(xiàn)有技術(shù)中,由于待統(tǒng)計的日志以表格或其它類似的方式進(jìn)行存儲,因此,當(dāng)需要統(tǒng)計日志時,需要編寫涉及統(tǒng)計事項(xiàng)的代碼段,并逐條日志進(jìn)行判斷,這種方式在處理海量異構(gòu)日志時非常費(fèi)時。
[0063]在根據(jù)本發(fā)明示例性實(shí)施例所產(chǎn)生的中間日志文件中,每條日志均基于相應(yīng)的動作項(xiàng)目而產(chǎn)生,從而包括指示該動作項(xiàng)目的項(xiàng)目標(biāo)識符字段。因此,根據(jù)本發(fā)明的日志處理方法能夠更為有效地對海量日志進(jìn)行統(tǒng)計。
[0064]作為示例,日志規(guī)格文檔可按照XML來配置,從而以項(xiàng)目標(biāo)識符為搜索條件來統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
[0065]以下示出根據(jù)本發(fā)明示例性實(shí)施例的按照XML來配置的日志規(guī)格文檔的示例:
[0066]
【權(quán)利要求】
1.一種用于處理日志的方法,包括: 收集步驟:收集由網(wǎng)絡(luò)上的各個服務(wù)器針對用戶操作而產(chǎn)生的異構(gòu)日志,其中,基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生異構(gòu)日志,使得異構(gòu)日志包括指示動作項(xiàng)目的項(xiàng)目標(biāo)識符字段; 格式轉(zhuǎn)換步驟:將收集的異構(gòu)日志轉(zhuǎn)換為具有統(tǒng)一格式的日志,其中,所述統(tǒng)一格式包括項(xiàng)目標(biāo)識符字段; 組合步驟:通過組合具有統(tǒng)一格式的日志來產(chǎn)生中間日志文件,并將中間日志文件存儲在不同于所述各個服務(wù)器的中間服務(wù)器上; 統(tǒng)計步驟:基于指示期望統(tǒng)計的動作項(xiàng)目的項(xiàng)目標(biāo)識符字段來配置日志規(guī)格文檔,以利用日志規(guī)格文檔從中間日志文件所包括的各個日志中自動統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
2.如權(quán)利要求1所述的方法,其中,所述網(wǎng)絡(luò)上的各個服務(wù)器為前端服務(wù)器或后端服務(wù)器。
3.如權(quán)利要求1所述的方法,其中,所述統(tǒng)一格式還包括以下字段中的至少一個:用戶標(biāo)識符字段、日志標(biāo)識符字段、日志產(chǎn)生時間字段、日志來源字段、用戶行為描述字段。
4.如權(quán)利要求1所述的方法,其中,格式轉(zhuǎn)換步驟包括: 解析步驟:基于統(tǒng)一格式中的各個字段來解析收集的異構(gòu)日志; 字段排列步驟:排列解析出的各個字段,以得到具有統(tǒng)一格式的日志。
5.如權(quán)利要求1所述的方法,其中,日志規(guī)格文檔按照XML來配置,從而以項(xiàng)目標(biāo)識符為搜索條件來統(tǒng)計期望統(tǒng)·計的動作項(xiàng)目。
6.如權(quán)利要求5所述的方法,其中,搜索條件包括以下字段中的至少一個與項(xiàng)目標(biāo)識符的結(jié)合:日志產(chǎn)生時間字段、日志來源字段、用戶行為描述字段。
7.如權(quán)利要求4所述的方法,其中,解析步驟包括: 提取步驟:基于統(tǒng)一格式中的各個字段來提取異構(gòu)日志中的字段; 修正步驟:對提取的字段進(jìn)行修正以與統(tǒng)一格式中的相應(yīng)字段完全一致。
8.如權(quán)利要求4所述的方法,其中,在組合步驟中,特定時間段內(nèi)產(chǎn)生的具有相同用戶標(biāo)識符字段、日志標(biāo)識符字段或相同用戶行為描述字段的日志被合并為一條日志。
9.一種用于處理日志的系統(tǒng),包括: 收集裝置:收集由網(wǎng)絡(luò)上的各個服務(wù)器針對用戶操作而產(chǎn)生的異構(gòu)日志,其中,基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生異構(gòu)日志,使得異構(gòu)日志包括指示動作項(xiàng)目的項(xiàng)目標(biāo)識符字段; 格式轉(zhuǎn)換裝置:將收集的異構(gòu)日志轉(zhuǎn)換為具有統(tǒng)一格式的日志,其中,所述統(tǒng)一格式包括項(xiàng)目標(biāo)識符字段; 組合裝置:通過組合具有統(tǒng)一格式的日志來產(chǎn)生中間日志文件,并將中間日志文件存儲在不同于所述各個服務(wù)器的中間服務(wù)器上; 統(tǒng)計裝置:基于指示期望統(tǒng)計的動作項(xiàng)目的項(xiàng)目標(biāo)識符字段來配置日志規(guī)格文檔,以利用日志規(guī)格文檔從中間日志文件所包括的各個日志中自動統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
10.如權(quán)利要求9所述的系統(tǒng),其中,格式轉(zhuǎn)換裝置包括: 解析裝置:基于統(tǒng)一格式中的各個字段來解析收集的異構(gòu)日志; 字段排列裝置:排列解析出的各個字段,以得到具有統(tǒng)一格式的日志。
11.如權(quán)利要求10所述的系統(tǒng),其中,解析裝置包括: 提取裝置:基于統(tǒng)一格式中的各個字段來提取異構(gòu)日志中的字段; 修正裝置:對提取的字段進(jìn)行修正以與統(tǒng)一格式中的相應(yīng)字段完全一致。
12.一種用于處理日志的方法,包括: 收集步驟:收集由網(wǎng)絡(luò)上的各個服務(wù)器針對用戶操作而產(chǎn)生的具有統(tǒng)一格式的日志,其中,基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生所述日志,使得所述日志包括指示動作項(xiàng)目的項(xiàng)目標(biāo)識符字段; 組合步驟:通過組合所述日志來產(chǎn)生中間日志文件,并將中間日志文件存儲在不同于所述各個服務(wù)器的中間服務(wù)器上; 統(tǒng)計步驟:基于指示期望統(tǒng)計的動作項(xiàng)目的項(xiàng)目標(biāo)識符字段來配置日志規(guī)格文檔,以利用日志規(guī)格文檔從中間日志文件所包括的各個日志中自動統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
13.如權(quán)利要求12所述的方法,其中,所述網(wǎng)絡(luò)上的各個服務(wù)器為前端服務(wù)器或后端服務(wù)器。
14.如權(quán)利要求12所述的方法,其中,所述統(tǒng)一格式還包括以下字段中的至少一個:用戶標(biāo)識符字段、日志標(biāo)識符字段、日志產(chǎn)生時間字段、日志來源字段、用戶行為描述字段。
15.如權(quán)利要求12所述的方法,其中,日志規(guī)格文檔按照XML來配置,從而以項(xiàng)目標(biāo)識符為搜索條件來統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
16.如權(quán)利要求14所述的方法,其中,在組合步驟中,特定時間段內(nèi)產(chǎn)生的具有相同用戶標(biāo)識符字段、日志標(biāo)識符字段或相同用戶行為描述字段的日志被合并為一條日志。`
17.一種用于處理日志的系統(tǒng),包括: 收集裝置:收集由網(wǎng)絡(luò)上的各個服務(wù)器針對用戶操作而產(chǎn)生的具有統(tǒng)一格式的日志,其中,基于用戶操作在各個服務(wù)器上引起的動作項(xiàng)目來產(chǎn)生所述日志,使得所述日志包括指示動作項(xiàng)目的項(xiàng)目標(biāo)識符字段; 組合裝置:通過組合所述日志來產(chǎn)生中間日志文件,并將中間日志文件存儲在不同于所述各個服務(wù)器的中間服務(wù)器上; 統(tǒng)計裝置:基于指示期望統(tǒng)計的動作項(xiàng)目的項(xiàng)目標(biāo)識符字段來配置日志規(guī)格文檔,以利用日志規(guī)格文檔從中間日志文件所包括的各個日志中自動統(tǒng)計期望統(tǒng)計的動作項(xiàng)目。
18.如權(quán)利要求17所述的系統(tǒng),其中,所述網(wǎng)絡(luò)上的各個服務(wù)器為前端服務(wù)器或后端服務(wù)器。
【文檔編號】G06F17/30GK103823811SQ201210467081
【公開日】2014年5月28日 申請日期:2012年11月19日 優(yōu)先權(quán)日:2012年11月19日
【發(fā)明者】宋歡, 李鵬, 何威, 曹曉冬, 廖迪青 申請人:北京百度網(wǎng)訊科技有限公司