欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種通用應(yīng)用日志管理方法、裝置和系統(tǒng)的制作方法

文檔序號(hào):7812353閱讀:195來(lái)源:國(guó)知局
一種通用應(yīng)用日志管理方法、裝置和系統(tǒng)的制作方法
【專利摘要】本發(fā)明披露了一種通用應(yīng)用日志管理方法,包括步驟:實(shí)時(shí)記錄應(yīng)用的操作信息;對(duì)所述操作信息作分類處理;判斷應(yīng)用的系統(tǒng)環(huán)境為Web應(yīng)用程序或移動(dòng)應(yīng)用,并根據(jù)判斷結(jié)果分別將所述操作信息輸出至瀏覽器控制臺(tái)或虛擬控制臺(tái);通過(guò)全雙工通信方式將所述操作信息上傳至服務(wù)器。本發(fā)明還披露了相應(yīng)的通用應(yīng)用日志管理裝置和系統(tǒng)。所述技術(shù)方案提供的日志管理服務(wù)具有平臺(tái)通用性,版本單一易于管理,可有效降低開發(fā)成本;且具有規(guī)范起草和制定的功能,可自動(dòng)對(duì)日志進(jìn)行收集、分類、分析,無(wú)需產(chǎn)品所有者的任何操作;在操作信息同步過(guò)程中能有效節(jié)約服務(wù)器資源和帶寬,并提高實(shí)時(shí)通信的效率。
【專利說(shuō)明】一種通用應(yīng)用日志管理方法、裝置和系統(tǒng)

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及應(yīng)用程序日志管理領(lǐng)域,更具體地涉及一種通用應(yīng)用日志管理方法、 裝置和系統(tǒng)。

【背景技術(shù)】
[0002] 現(xiàn)有的客戶端日志分析和記錄工具多由客戶端產(chǎn)品的開發(fā)商提供相關(guān)的記錄功 能,只針對(duì)單一產(chǎn)品,如騰訊PC端QQ的日志收集器,美團(tuán)網(wǎng)的Android端日志記錄器,沒(méi) 有一個(gè)通用的日志管理服務(wù)和工具。無(wú)法實(shí)現(xiàn)跨平臺(tái)功能服務(wù),以騰訊為例,PC端QQ、 Android端QQ、I0S端QQ的日志記錄技術(shù)程序內(nèi)核是不一致的,需要發(fā)布多個(gè)版本,開發(fā)、 管理、維護(hù)消耗較大。
[0003] 其次,現(xiàn)有的日志記錄分析和記錄技術(shù)需要編寫大量的程序功能來(lái)實(shí)現(xiàn)日志的自 動(dòng)化分類、規(guī)范整理和分析功能,并且功能由程序自身發(fā)起,而不是規(guī)范發(fā)起,缺少統(tǒng)一性、 規(guī)范性。
[0004] 再次,現(xiàn)有的日志記錄分析和記錄工具很難實(shí)現(xiàn)服務(wù)端對(duì)客戶端程序的實(shí)時(shí)數(shù)據(jù) 傳輸,大多數(shù)需要在網(wǎng)絡(luò)較好的情況下(如有Wifi的場(chǎng)景)將日志數(shù)據(jù)上傳服務(wù)器,采用 傳統(tǒng)的傳輸機(jī)制,流量高耗,客戶端機(jī)器性能高耗,服務(wù)器的并發(fā)性能高耗,傳輸時(shí)常長(zhǎng),容 易出現(xiàn)數(shù)據(jù)中斷和傳輸錯(cuò)誤。


【發(fā)明內(nèi)容】

[0005] 為此,需要提供一種規(guī)范化、易管理、開發(fā)成本低、數(shù)據(jù)傳輸效率高的通用應(yīng)用日 志管理方法、裝置和系統(tǒng)。
[0006] 為實(shí)現(xiàn)上述目的,發(fā)明人提供了一種通用應(yīng)用日志管理方法,包括步驟:
[0007] 實(shí)時(shí)記錄應(yīng)用的操作信息;
[0008] 對(duì)所述操作信息作分類處理;
[0009] 判斷應(yīng)用的系統(tǒng)環(huán)境為Web應(yīng)用程序或移動(dòng)應(yīng)用,并根據(jù)判斷結(jié)果分別將所述操 作信息輸出至瀏覽器控制臺(tái)或虛擬控制臺(tái);
[0010] 通過(guò)全雙工通信方式將所述操作信息上傳至服務(wù)器;
[0011] 服務(wù)器向應(yīng)用開發(fā)用戶端推送預(yù)設(shè)日志管理信息,或應(yīng)用開發(fā)用戶端向服務(wù)器請(qǐng) 求獲取日志管理信息,服務(wù)器依所述請(qǐng)求向應(yīng)用開發(fā)用戶端發(fā)送相應(yīng)的日志管理信息。
[0012] 進(jìn)一步地,所述的通用應(yīng)用日志管理方法中,步驟"將所述操作信息記錄于瀏覽器 控制臺(tái)或虛擬控制臺(tái)"之后以及步驟"通過(guò)全雙工通信方式將所述操作信息上傳至服務(wù)器" 之前還包括步驟:
[0013] 對(duì)所述操作信息作等級(jí)排序處理,所述等級(jí)排序處理具體包括根據(jù)操作信息的優(yōu) 先級(jí)級(jí)別進(jìn)行排序并去除預(yù)設(shè)的低優(yōu)先級(jí)操作信息;
[0014] 對(duì)所述操作信息作去冗余處理;
[0015] 對(duì)所述操作信息作加密處理;
[0016] 對(duì)所述操作信息作壓縮處理。
[0017] 進(jìn)一步地,所述的通用應(yīng)用日志管理方法中,所述去冗余處理包括去除與數(shù)據(jù)相 關(guān)的說(shuō)明彳目息;
[0018] 所述加密處理算法為DES對(duì)稱加密;
[0019] 所述壓縮處理算法為哈夫曼樹算法。
[0020] 進(jìn)一步地,所述的通用應(yīng)用日志管理方法中,步驟"通過(guò)全雙工通信方式將所述操 作信息上傳至服務(wù)器"具體包括:
[0021] 根據(jù)應(yīng)用系統(tǒng)環(huán)境的判定結(jié)果,對(duì)Web應(yīng)用通過(guò)Web Socket方式將所述操作信息 上傳至服務(wù)器;
[0022] 對(duì)移動(dòng)應(yīng)用通過(guò)Mobile Socket方式將所述操作信息上傳至服務(wù)器。
[0023] 進(jìn)一步地,所述的通用應(yīng)用日志管理方法中,所述應(yīng)用為接入有日志管理服務(wù)的 應(yīng)用,日志管理服務(wù)接入于應(yīng)用開發(fā)階段,所述接入步驟具體包括:
[0024] 應(yīng)用開發(fā)用戶端向服務(wù)器發(fā)送日志管理工具接入請(qǐng)求,所述日志管理工具接入請(qǐng) 求中包括客戶端系統(tǒng)信息;
[0025] 服務(wù)器根據(jù)客戶端系統(tǒng)信息向應(yīng)用開發(fā)用戶端發(fā)送適用于客戶端系統(tǒng)環(huán)境的日 志管理工具;
[0026] 應(yīng)用開發(fā)用戶端將所述日志管理工具接入應(yīng)用程序中。
[0027] 進(jìn)一步地,所述的通用應(yīng)用日志管理方法中,所述步驟"對(duì)所述操作信息作分類處 理"具體包括:
[0028] 將所述操作信息分類于調(diào)試模式、信息模式、錯(cuò)誤模式、對(duì)象輸出模式、提不模式 或確認(rèn)模式中的一個(gè)或多個(gè)類目下。
[0029] 發(fā)明人還提供了一種通用應(yīng)用日志管理裝置,包括記錄單元、分類單元、判斷單 元、控制單元和通信單元;
[0030] 所述記錄單元用于實(shí)時(shí)記錄應(yīng)用的操作信息;
[0031] 所述分類單元用于對(duì)所述操作信息作分類處理;
[0032] 所述判斷單元用于判斷應(yīng)用的系統(tǒng)環(huán)境為Web應(yīng)用程序或移動(dòng)應(yīng)用;
[0033] 所述控制單元為瀏覽器控制臺(tái)或虛擬控制臺(tái),用于接收經(jīng)分類處理的操作信息;
[0034] 所述通信單元用于通過(guò)全雙工通信方式將所述操作信息上傳至服務(wù)器。
[0035] 進(jìn)一步地,所述的通用應(yīng)用日志管理裝置中,所述控制單元包括等級(jí)排序模塊、去 冗余模塊、加密模塊或壓縮模塊;
[0036] 所述等級(jí)排序模塊用于對(duì)所述操作信息作等級(jí)排序處理,所述等級(jí)排序處理具體 包括根據(jù)操作信息的優(yōu)先級(jí)級(jí)別進(jìn)行排序并去除預(yù)設(shè)的低優(yōu)先級(jí)操作信息;
[0037] 所述去冗余模塊用于對(duì)所述操作信息作去冗余處理;
[0038] 所述加密模塊用于對(duì)所述操作信息作加密處理;
[0039] 所述壓縮模塊用于對(duì)所述操作信息作壓縮處理。
[0040] 進(jìn)一步地,所述的通用應(yīng)用日志管理裝置中,所述去冗余模塊進(jìn)行去冗余處理包 括去除與數(shù)據(jù)相關(guān)的說(shuō)明信息;
[0041] 所述加密模塊進(jìn)行加密處理的算法為DES對(duì)稱加密;
[0042] 所述壓縮模塊進(jìn)行壓縮處理的算法為哈夫曼樹算法。
[0043] 進(jìn)一步地,所述的通用應(yīng)用日志管理裝置中,通信單元用于通過(guò)全雙工通信方式 將所述操作信息上傳至服務(wù)器具體包括:
[0044] 根據(jù)判斷單元對(duì)應(yīng)用系統(tǒng)環(huán)境的判定結(jié)果,對(duì)Web應(yīng)用通過(guò)Web Socket方式將所 述操作信息上傳至服務(wù)器;
[0045] 對(duì)移動(dòng)應(yīng)用通過(guò)Mobile Socket方式將所述操作信息上傳至服務(wù)器。
[0046] 進(jìn)一步地,所述的通用應(yīng)用日志管理裝置中,分類單元對(duì)操作信息做分類處理具 體包括:
[0047] 將所述操作信息分類于調(diào)試模式、信息模式、錯(cuò)誤模式、對(duì)象輸出模式、提不模式 或確認(rèn)模式中的一個(gè)或多個(gè)類目下。
[0048] 發(fā)明人還提供了一種通用應(yīng)用日志管理系統(tǒng),包括客戶端、服務(wù)器以及應(yīng)用開發(fā) 用戶端;
[0049] 所述客戶端為如上所述的通用應(yīng)用日志管理裝置;
[0050] 所述服務(wù)器用于接收和存儲(chǔ)來(lái)自客戶端的應(yīng)用操作信息,并主動(dòng)向所述應(yīng)用開發(fā) 用戶端發(fā)送預(yù)設(shè)日志管理信息或應(yīng)應(yīng)用開發(fā)用戶端請(qǐng)求向應(yīng)用開發(fā)用戶端發(fā)送相應(yīng)的日 志管理信息;
[0051] 所述應(yīng)用開發(fā)用戶端用于接收來(lái)自服務(wù)器的預(yù)設(shè)日志管理信息,或用于向服務(wù)器 提出日志管理信息請(qǐng)求并接收服務(wù)器應(yīng)所述請(qǐng)求發(fā)送的相應(yīng)的日志管理信息。
[0052] 進(jìn)一步地,所述的通用應(yīng)用日志管理系統(tǒng)中,所述應(yīng)用開發(fā)用戶端還用于在應(yīng)用 開發(fā)階段向服務(wù)器發(fā)送日志管理工具接入請(qǐng)求,所述日志管理工具接入請(qǐng)求中包括客戶端 系統(tǒng)信息;
[0053] 服務(wù)器用于根據(jù)客戶端系統(tǒng)信息向應(yīng)用開發(fā)用戶端發(fā)送適用于客戶端系統(tǒng)環(huán)境 的日志管理工具;
[0054] 應(yīng)用開發(fā)用戶端將所述日志管理工具接入應(yīng)用程序中。
[0055] 進(jìn)一步地,所述的通用應(yīng)用日志管理系統(tǒng)中,所述服務(wù)器包括解密單元或解壓縮 單元;
[0056] 所述解密單元用于對(duì)經(jīng)加密的操作信息作解密處理;
[0057] 所述解壓縮單元用于對(duì)經(jīng)壓縮的操作信息作解壓縮處理。
[0058] 區(qū)別于現(xiàn)有技術(shù),上述技術(shù)方案提供的日志管理服務(wù)具有通用性,可以介入任何 產(chǎn)品,便于應(yīng)用開發(fā)人員的利用;日志管理服務(wù)針對(duì)各種不同系統(tǒng)環(huán)境具有一致的程序內(nèi) 核,版本單一易于管理,且可有效降低開發(fā)成本;具有規(guī)范起草和制定的功能,可自動(dòng)對(duì)日 志進(jìn)行收集、分類、分析,無(wú)需產(chǎn)品所有者的任何操作;在操作信息同步過(guò)程中能有效節(jié)約 服務(wù)器資源和帶寬,并提高實(shí)時(shí)通信的效率。

【專利附圖】

【附圖說(shuō)明】
[0059] 圖1為本發(fā)明一實(shí)施方式所述通用應(yīng)用日志管理方法的流程圖;
[0060] 圖2為本發(fā)明一實(shí)施方式所述通用應(yīng)用日志管理裝置的結(jié)構(gòu)示意圖;
[0061] 圖3為本發(fā)明一實(shí)施方式所述通用應(yīng)用日志管理系統(tǒng)的結(jié)構(gòu)示意圖。
[0062] 附圖標(biāo)記說(shuō)明:
[0063] 1-客戶端
[0064] 11-記錄單元
[0065] 12-分類單元
[0066] 13-判斷單元
[0067] 14-控制單元
[0068] 141-等級(jí)排序模塊
[0069] 142-去冗余模塊 [0070] 143-加密模塊
[0071] 144-壓縮模塊
[0072] 15-通信單元
[0073] 2-服務(wù)器
[0074] 21-解密單元
[0075] 22-解壓縮單元
[0076] 3-應(yīng)用開發(fā)用戶端

【具體實(shí)施方式】
[0077] 為詳細(xì)說(shuō)明技術(shù)方案的技術(shù)內(nèi)容、構(gòu)造特征、所實(shí)現(xiàn)目的及效果,以下結(jié)合具體實(shí) 施例并配合附圖詳予說(shuō)明。
[0078] 請(qǐng)參閱圖1,為本發(fā)明一實(shí)施方式所述通用應(yīng)用日志管理方法的流程圖;所述方 法包括下述步驟:
[0079] S1、應(yīng)用開發(fā)用戶端向服務(wù)器發(fā)送日志管理工具接入請(qǐng)求;
[0080] 所述日志管理工具接入請(qǐng)求中包括客戶端系統(tǒng)信息。
[0081] S2、服務(wù)器根據(jù)客戶端系統(tǒng)信息向應(yīng)用開發(fā)用戶端發(fā)送適用于客戶端系統(tǒng)環(huán)境的 日志管理工具;
[0082] S3、應(yīng)用開發(fā)用戶端將所述日志管理工具接入應(yīng)用程序中。
[0083] 步驟S1-S3發(fā)生于應(yīng)用開發(fā)階段,采用寄宿的方式將日志工具寄宿在Web應(yīng)用、 Android應(yīng)用或I0S應(yīng)用的產(chǎn)品中,形成一個(gè)通用的日志管理服務(wù)。服務(wù)器在接收到應(yīng)用開 發(fā)用戶端的請(qǐng)求后,針對(duì)不同的客戶端系統(tǒng)發(fā)送不同的文件,如針對(duì)PC的Chrome發(fā)送.crx 文件,針對(duì)Android系統(tǒng)發(fā)送.apk文件,針對(duì)iOS系統(tǒng)發(fā)送.ipa文件;應(yīng)用開發(fā)用戶端在 接收到文件之后將其安裝嵌入應(yīng)用程序中。通過(guò)這樣的方式可以將日志管理服務(wù)接入任何 的產(chǎn)品。應(yīng)用開發(fā)人員只需在產(chǎn)品開發(fā)期間通過(guò)導(dǎo)入日志工具包的內(nèi)核程序,從而實(shí)現(xiàn)日 志工具的介入和寄宿。
[0084] S4、客戶端安裝應(yīng)用;
[0085] 所述應(yīng)用為經(jīng)步驟S1-S3處理、接入有日志管理工具的應(yīng)用。
[0086] S5、實(shí)時(shí)記錄應(yīng)用的操作信息;
[0087] S6、對(duì)所述操作信息作分類處理;
[0088] 所述分類處理具體包括:將所述操作信息分類于調(diào)試模式、信息模式、錯(cuò)誤模式、 對(duì)象輸出模式、提示模式或確認(rèn)模式中的一個(gè)或多個(gè)類目下。通過(guò)操作信息分類并輸出至 相應(yīng)的控制臺(tái),方便控制臺(tái)進(jìn)行操作信息的記錄和分析。
[0089] S7、判斷應(yīng)用的系統(tǒng)環(huán)境為Web應(yīng)用程序或移動(dòng)應(yīng)用,當(dāng)判斷結(jié)果為Web應(yīng)用程序 時(shí)進(jìn)入步驟S81 ;當(dāng)判斷結(jié)果為移動(dòng)應(yīng)用程序時(shí)進(jìn)入步驟S82 ;
[0090] S81、將所述操作信息輸出至瀏覽器控制臺(tái),然后進(jìn)入步驟S9 ;
[0091] S82、將所述操作信息輸出至虛擬控制臺(tái),然后進(jìn)入步驟S9 ;
[0092] 步驟S7-S81或S82所述的步驟主要是基于HTML5的Console Log和Data Log進(jìn) 行的設(shè)計(jì),通過(guò)編寫JavaScript程序來(lái)實(shí)現(xiàn)對(duì)日志的記錄和輸出。其中,Console Log作用 于瀏覽器控制臺(tái),將所述應(yīng)用操作信息輸出到瀏覽器控制臺(tái)(大部分瀏覽器都有Console 面板)中,并讀取控制臺(tái)的日志來(lái)實(shí)現(xiàn)對(duì)日志的收集和記錄。另一方面,Data Log主要作 用在移動(dòng)應(yīng)用的虛擬控制臺(tái)(Android、I0S均具有的Virtual Console)中,通過(guò)移動(dòng)端的 虛擬控制臺(tái)的日志輸出,同樣可以實(shí)現(xiàn)日志的收集和記錄。JavasSript編寫的程序可以通 用于Web、Andr 〇id和I0S的所有應(yīng)用中,在日志記錄過(guò)程中首先進(jìn)行環(huán)境判斷,分支執(zhí)行程 序,實(shí)質(zhì)上程序內(nèi)核是一致的,版本單一而容易管理,可有效降低開發(fā)成本。
[0093] S9、對(duì)所述操作信息作等級(jí)排序處理、去冗余處理、加密處理或壓縮處理,得到應(yīng) 用日志管理信息;
[0094] 所述等級(jí)排序處理具體包括根據(jù)操作信息的優(yōu)先級(jí)級(jí)別進(jìn)行排序并去除預(yù)設(shè)的 低優(yōu)先級(jí)操作信息;所述去冗余處理包括去除與數(shù)據(jù)相關(guān)的說(shuō)明信息;所述加密處理算法 為DES對(duì)稱加密;所述壓縮處理算法為哈夫曼樹算法。
[0095] 所述分類處理、等級(jí)排序處理、去冗余處理、加密處理、壓縮處理均為本發(fā)明所述 應(yīng)用日志管理所規(guī)范起草和制定的功能,可實(shí)現(xiàn)對(duì)操作信息的收集、分類、分析、上傳前處 理等工作,無(wú)需應(yīng)用開發(fā)者的任何參與,可規(guī)范化提供應(yīng)用開發(fā)者以各種所需的信息收集 和分析服務(wù),應(yīng)用開發(fā)者在應(yīng)用開發(fā)階段的日志管理服務(wù)接入過(guò)程中可選擇其所需的功能 模塊進(jìn)行接入。
[0096] 本步驟所述的等級(jí)排序處理可根據(jù)預(yù)設(shè)的操作信息等級(jí)進(jìn)行排序,去除預(yù)設(shè)的低 優(yōu)先級(jí)操作信息,或截取保留預(yù)設(shè)的高優(yōu)先級(jí)操作信息。去冗余操作可將如與數(shù)據(jù)相關(guān)的 說(shuō)明信息去除,從而達(dá)到減少后續(xù)上傳的數(shù)據(jù)量的目的。加密過(guò)程可采用如DES對(duì)稱加密 算法等算法,加密密鑰可由應(yīng)用開發(fā)者在接入日志管理服務(wù)時(shí)設(shè)置,其核心算法使用56位 密鑰及附加的8位奇偶校驗(yàn)位生成。壓縮處理可采用如哈夫曼樹算法設(shè)計(jì)核心壓縮計(jì)算, 壓縮加密之后的數(shù)據(jù)為01串?dāng)?shù)據(jù),這將極大提高傳輸速率。服務(wù)器在接收到經(jīng)上述處理后 的日志管理信息后,進(jìn)行相應(yīng)的解壓縮或解密操作,從而達(dá)到更好地節(jié)約服務(wù)器資源和帶 寬、提高實(shí)時(shí)通訊效率的效果。
[0097] S10、通過(guò)全雙工通信方式將所述日志管理信息上傳至服務(wù)器;后進(jìn)入步驟S11或 步驟S12 ;
[0098] 具體地,根據(jù)前述對(duì)應(yīng)用系統(tǒng)環(huán)境的判定結(jié)果,針對(duì)Web應(yīng)用,通過(guò)Web Socket方 式將所述操作信息上傳至服務(wù)器;針對(duì)移動(dòng)應(yīng)用則通過(guò)Mobile Socket方式將所述操作信 息上傳至服務(wù)器。
[0099] 本步驟采用HTML5的WebSocket和MobilSocket來(lái)設(shè)計(jì)數(shù)據(jù)同步上載模塊的 核心程序?,F(xiàn)有技術(shù)中大部分的Web應(yīng)用、Android應(yīng)用、I0S應(yīng)用為了實(shí)現(xiàn)實(shí)時(shí)通信 (real-time),都采用輪詢技術(shù)(polling),在特定的的時(shí)間間隔(time interval)(如每1 秒),由應(yīng)用對(duì)服務(wù)器發(fā)出HTTP Request,然后由服務(wù)器返回最新的數(shù)據(jù)給客服端應(yīng)用,請(qǐng) 求是由客戶端發(fā)起的。這種傳統(tǒng)的HTTP Request的模式帶來(lái)很明顯的缺點(diǎn):客戶端需要 不斷的向服務(wù)器發(fā)出請(qǐng)求(request),然而HTTP Request的header是長(zhǎng)數(shù)據(jù),會(huì)占用很多 的帶寬,加大客戶端應(yīng)用和服務(wù)器的負(fù)載能力。本發(fā)明技術(shù)方案基于HTML5的WebSocket 和MobilSocket采用全雙工通信(full-duplex)技術(shù),客戶端應(yīng)用和服務(wù)器只需要要做一 個(gè)握手的動(dòng)作,匹配完驗(yàn)證數(shù)據(jù)之后,形成了一條快速通道,該通道采用兩個(gè)特征來(lái)實(shí)現(xiàn) 高效數(shù)據(jù)傳輸:1. Header (互相溝通的Header是短數(shù)據(jù)-大概只有2 Bytes) ;2· Server Push (服務(wù)器可以主動(dòng)傳送數(shù)據(jù)給客戶端)。
[0100] 步驟S5-S10所述為客戶端記錄應(yīng)用操作信息、得到應(yīng)用日志管理信息并將其上 傳至服務(wù)器的過(guò)程。
[0101] 需要上傳至服務(wù)器的日志信息具體類型等要求可由應(yīng)用開發(fā)者在應(yīng)用開發(fā)階段 的日志管理服務(wù)接入過(guò)程中進(jìn)行設(shè)置。
[0102] S11、服務(wù)器向應(yīng)用開發(fā)用戶端推送預(yù)設(shè)日志管理信息,流程結(jié)束;
[0103] 所述預(yù)設(shè)日志管理信息為應(yīng)用開發(fā)者在應(yīng)用開發(fā)階段的日志管理服務(wù)接入過(guò)程 中所預(yù)設(shè)的希望定期得到的日志管理信息。
[0104] S12、應(yīng)用開發(fā)用戶端向服務(wù)器請(qǐng)求獲取日志管理信息,然后進(jìn)入步驟S13;
[0105] S13、服務(wù)器依所述請(qǐng)求向應(yīng)用開發(fā)用戶端發(fā)送相應(yīng)的日志管理信息。
[0106] 步驟S11-S13所述為應(yīng)用開發(fā)用戶端從服務(wù)器處獲取所需的日志信息的步驟。具 體而言,在應(yīng)用開發(fā)階段的日志管理服務(wù)接入過(guò)程中,應(yīng)用開發(fā)用戶端可從服務(wù)器獲取一 賬號(hào),應(yīng)用開發(fā)用戶可通過(guò)該賬號(hào)向服務(wù)器獲取其需要的日志管理信息,并進(jìn)行實(shí)時(shí)監(jiān)控 自己產(chǎn)品使用情況,或借以完成收集錯(cuò)誤、分析異常、優(yōu)化完善應(yīng)用程序的工作。
[0107] 請(qǐng)參閱圖2,為本發(fā)明一實(shí)施方式所述通用應(yīng)用日志管理裝置的結(jié)構(gòu)示意圖。所述 裝置包括記錄單元11、分類單元12、判斷單元13、控制單元14和通信單元15 ;
[0108] 所述記錄單元11用于實(shí)時(shí)記錄應(yīng)用的操作信息;
[0109] 所述分類單元12用于對(duì)所述操作信息作分類處理;所做分類處理具體包括:將所 述操作信息分類于調(diào)試模式、信息模式、錯(cuò)誤模式、對(duì)象輸出模式、提不模式或確認(rèn)模式中 的一個(gè)或多個(gè)類目下。
[0110] 所述判斷單元13用于判斷應(yīng)用的系統(tǒng)環(huán)境為Web應(yīng)用程序或移動(dòng)應(yīng)用;
[0111] 所述控制單元14為瀏覽器控制臺(tái)或虛擬控制臺(tái),用于接收經(jīng)分類處理的操作信 息;
[0112] 所述通信單元15用于通過(guò)全雙工通信方式將所述操作信息上傳至服務(wù)器。
[0113] 進(jìn)一步地,所述控制單元14包括等級(jí)排序模塊141、去冗余模塊142、加密模塊143 或壓縮模塊144 ;
[0114] 所述等級(jí)排序模塊141用于對(duì)所述操作信息作等級(jí)排序處理,所述等級(jí)排序處理 具體包括根據(jù)操作信息的優(yōu)先級(jí)級(jí)別進(jìn)行排序并去除預(yù)設(shè)的低優(yōu)先級(jí)操作信息;
[0115] 所述去冗余模塊142用于對(duì)所述操作信息作去冗余處理;所述去冗余模塊進(jìn)行去 冗余處理包括去除與數(shù)據(jù)相關(guān)的說(shuō)明信息;
[0116] 所述加密模塊143用于對(duì)所述操作信息作加密處理;進(jìn)行加密處理的算法為DES 對(duì)稱加密;
[0117] 所述壓縮模塊144用于對(duì)所述操作信息作壓縮處理,壓縮處理的算法為哈夫曼樹 算法。
[0118] 下面以一實(shí)施流程說(shuō)明本實(shí)施方式所述通用日志管理裝置實(shí)現(xiàn)日志管理的具體 方式,其中的步驟S1-S4發(fā)生于應(yīng)用開發(fā)和安裝階段,步驟S11-S13發(fā)生于應(yīng)用開發(fā)用戶端 從服務(wù)器處獲取所需的日志信息階段,本實(shí)施方式所述通用日志管理裝置不直接參與上述 兩個(gè)階段的工作,但對(duì)上述兩個(gè)階段的說(shuō)明有助于對(duì)本實(shí)施方式所述通用日志管理裝置實(shí) 現(xiàn)其相應(yīng)功能的理解,故也在此一并進(jìn)行闡述:
[0119] S1、應(yīng)用開發(fā)用戶端向服務(wù)器發(fā)送日志管理工具接入請(qǐng)求;
[0120] 所述日志管理工具接入請(qǐng)求中包括客戶端系統(tǒng)信息。
[0121] S2、服務(wù)器根據(jù)客戶端系統(tǒng)信息向應(yīng)用開發(fā)用戶端發(fā)送適用于客戶端系統(tǒng)環(huán)境的 日志管理工具;
[0122] S3、應(yīng)用開發(fā)用戶端將所述日志管理工具接入應(yīng)用程序中。
[0123] 步驟S1-S3發(fā)生于應(yīng)用開發(fā)階段,采用寄宿的方式將日志工具寄宿在Web應(yīng)用、 Android應(yīng)用或I0S應(yīng)用的產(chǎn)品中,形成一個(gè)通用的日志管理服務(wù)。服務(wù)器在接收到應(yīng)用開 發(fā)用戶端的請(qǐng)求后,針對(duì)不同的客戶端系統(tǒng)發(fā)送不同的文件,如針對(duì)PC的Chrome發(fā)送.crx 文件,針對(duì)Android系統(tǒng)發(fā)送.apk文件,針對(duì)iOS系統(tǒng)發(fā)送.ipa文件;應(yīng)用開發(fā)用戶端在 接收到文件之后將其安裝嵌入應(yīng)用程序中。通過(guò)這樣的方式可以將日志管理服務(wù)接入任何 的產(chǎn)品。應(yīng)用開發(fā)人員只需在產(chǎn)品開發(fā)期間通過(guò)導(dǎo)入日志工具包的內(nèi)核程序,從而實(shí)現(xiàn)日 志工具的介入和寄宿。
[0124] S4、客戶端安裝應(yīng)用;
[0125] 所述應(yīng)用為經(jīng)步驟S1-S3處理、接入有日志管理工具的應(yīng)用。
[0126] S5、記錄單元11實(shí)時(shí)記錄應(yīng)用的操作信息;
[0127] S6、分類單元12對(duì)所述操作信息作分類處理;
[0128] 所述分類處理具體包括:將所述操作信息分類于調(diào)試模式、信息模式、錯(cuò)誤模式、 對(duì)象輸出模式、提示模式或確認(rèn)模式中的一個(gè)或多個(gè)類目下。通過(guò)操作信息分類并輸出至 相應(yīng)的控制臺(tái),方便控制臺(tái)進(jìn)行操作信息的記錄和分析。
[0129] S7、判斷單元13判斷應(yīng)用的系統(tǒng)環(huán)境為Web應(yīng)用程序或移動(dòng)應(yīng)用,當(dāng)判斷結(jié)果為 Web應(yīng)用程序時(shí)進(jìn)入步驟S81 ;當(dāng)判斷結(jié)果為移動(dòng)應(yīng)用程序時(shí)進(jìn)入步驟S82 ;
[0130] S81、將所述操作信息輸出至控制單元14中的瀏覽器控制臺(tái),然后進(jìn)入步驟S9 ;
[0131] S82、將所述操作信息輸出至控制單元14中的虛擬控制臺(tái),然后進(jìn)入步驟S9 ;
[0132] 步驟S7-S81或S82所述的步驟主要是基于HTML5的Console Log和Data Log進(jìn) 行的設(shè)計(jì),通過(guò)編寫JavaScript程序來(lái)實(shí)現(xiàn)對(duì)日志的記錄和輸出。其中,Console Log作用 于瀏覽器控制臺(tái),將所述應(yīng)用操作信息輸出到瀏覽器控制臺(tái)(大部分瀏覽器都有Console 面板)中,并讀取控制臺(tái)的日志來(lái)實(shí)現(xiàn)對(duì)日志的收集和記錄。另一方面,Data Log主要作 用在移動(dòng)應(yīng)用的虛擬控制臺(tái)(Android、I0S均具有的Virtual Console)中,通過(guò)移動(dòng)端的 虛擬控制臺(tái)的日志輸出,同樣可以實(shí)現(xiàn)日志的收集和記錄。JavasSript編寫的程序可以通 用于Web、Andr 〇id和I0S的所有應(yīng)用中,在日志記錄過(guò)程中首先進(jìn)行環(huán)境判斷,分支執(zhí)行程 序,實(shí)質(zhì)上程序內(nèi)核是一致的,版本單一而容易管理,可有效降低開發(fā)成本。
[0133] S9、控制單元14對(duì)所述操作信息作等級(jí)排序處理、去冗余處理、加密處理或壓縮 處理,得到應(yīng)用日志管理信息;
[0134] 所述等級(jí)排序處理由等級(jí)排序模塊141進(jìn)行,具體包括根據(jù)操作信息的優(yōu)先級(jí)級(jí) 別進(jìn)行排序并去除預(yù)設(shè)的低優(yōu)先級(jí)操作信息;所述去冗余處理由去冗余模塊142進(jìn)行,包 括去除與數(shù)據(jù)相關(guān)的說(shuō)明信息;所述加密處理由加密模塊143進(jìn)行,加密算法為DES對(duì)稱加 密;所述壓縮處理由壓縮模塊144進(jìn)行,算法為哈夫曼樹算法。
[0135] 所述分類處理、等級(jí)排序處理、去冗余處理、加密處理、壓縮處理均為本發(fā)明所述 應(yīng)用日志管理所規(guī)范起草和制定的功能,可實(shí)現(xiàn)對(duì)操作信息的收集、分類、分析、上傳前處 理等工作,無(wú)需應(yīng)用開發(fā)者的任何參與,可規(guī)范化提供應(yīng)用開發(fā)者以各種所需的信息收集 和分析服務(wù),應(yīng)用開發(fā)者在應(yīng)用開發(fā)階段的日志管理服務(wù)接入過(guò)程中可選擇其所需的功能 模塊進(jìn)行接入。
[0136] 等級(jí)排序模塊141進(jìn)行的等級(jí)排序處理可根據(jù)預(yù)設(shè)的操作信息等級(jí)進(jìn)行排序,去 除預(yù)設(shè)的低優(yōu)先級(jí)操作信息,或截取保留預(yù)設(shè)的高優(yōu)先級(jí)操作信息。去冗余模塊142進(jìn)行 的去冗余操作可將如與數(shù)據(jù)相關(guān)的說(shuō)明信息去除,從而達(dá)到減少后續(xù)上傳的數(shù)據(jù)量的目 的。加密模塊143進(jìn)行的加密過(guò)程可采用如DES對(duì)稱加密算法等算法,加密密鑰可由應(yīng)用 開發(fā)者在接入日志管理服務(wù)時(shí)設(shè)置,其核心算法使用56位密鑰及附加的8位奇偶校驗(yàn)位生 成。壓縮模塊144所進(jìn)行的壓縮處理可采用如哈夫曼樹算法設(shè)計(jì)核心壓縮計(jì)算,壓縮加密 之后的數(shù)據(jù)為01串?dāng)?shù)據(jù),這將極大提高傳輸速率。服務(wù)器在接收到經(jīng)上述處理后的日志管 理信息后,進(jìn)行相應(yīng)的解壓縮或解密操作,從而達(dá)到更好地節(jié)約服務(wù)器資源和帶寬、提高實(shí) 時(shí)通訊效率的效果。
[0137] S10、通信單元15通過(guò)全雙工通信方式將所述日志管理信息上傳至服務(wù)器;后進(jìn) 入步驟S11或步驟S12 ;
[0138] 本步驟采用HTML5的WebSocket和MobilSocket來(lái)設(shè)計(jì)數(shù)據(jù)同步上載模塊的 核心程序?,F(xiàn)有技術(shù)中大部分的Web應(yīng)用、Android應(yīng)用、I0S應(yīng)用為了實(shí)現(xiàn)實(shí)時(shí)通信 (real-time),都采用輪詢技術(shù)(polling),在特定的的時(shí)間間隔(time interval)(如每1 秒),由應(yīng)用對(duì)服務(wù)器發(fā)出HTTP Request,然后由服務(wù)器返回最新的數(shù)據(jù)給客服端應(yīng)用,請(qǐng) 求是由客戶端發(fā)起的。這種傳統(tǒng)的HTTP Request的模式帶來(lái)很明顯的缺點(diǎn):客戶端需要 不斷的向服務(wù)器發(fā)出請(qǐng)求(request),然而HTTP Request的header是長(zhǎng)數(shù)據(jù),會(huì)占用很多 的帶寬,加大客戶端應(yīng)用和服務(wù)器的負(fù)載能力。本發(fā)明技術(shù)方案基于HTML5的WebSocket 和MobilSocket采用全雙工通信(full-duplex)技術(shù),客戶端應(yīng)用和服務(wù)器只需要要做一 個(gè)握手的動(dòng)作,匹配完驗(yàn)證數(shù)據(jù)之后,形成了一條快速通道,該通道采用兩個(gè)特征來(lái)實(shí)現(xiàn) 高效數(shù)據(jù)傳輸:1. Header (互相溝通的Header是短數(shù)據(jù)-大概只有2 Bytes) ;2· Server Push (服務(wù)器可以主動(dòng)傳送數(shù)據(jù)給客戶端)。
[0139] 步驟S5-S10所述為客戶端記錄應(yīng)用操作信息、得到應(yīng)用日志管理信息并將其上 傳至服務(wù)器的過(guò)程。
[0140] 需要上傳至服務(wù)器的日志信息具體類型等要求可由應(yīng)用開發(fā)者在應(yīng)用開發(fā)階段 的日志管理服務(wù)接入過(guò)程中進(jìn)行設(shè)置。
[0141] S11、服務(wù)器向應(yīng)用開發(fā)用戶端推送預(yù)設(shè)日志管理信息,流程結(jié)束;
[0142] 所述預(yù)設(shè)日志管理信息為應(yīng)用開發(fā)者在應(yīng)用開發(fā)階段的日志管理服務(wù)接入過(guò)程 中所預(yù)設(shè)的希望定期得到的日志管理信息。
[0143] S12、應(yīng)用開發(fā)用戶端向服務(wù)器請(qǐng)求獲取日志管理信息,然后進(jìn)入步驟S13;
[0144] S13、服務(wù)器依所述請(qǐng)求向應(yīng)用開發(fā)用戶端發(fā)送相應(yīng)的日志管理信息。
[0145] 步驟S11-S13所述為應(yīng)用開發(fā)用戶端從服務(wù)器處獲取所需的日志信息的步驟。具 體而言,在應(yīng)用開發(fā)階段的日志管理服務(wù)接入過(guò)程中,應(yīng)用開發(fā)用戶端可從服務(wù)器獲取一 賬號(hào),應(yīng)用開發(fā)用戶可通過(guò)該賬號(hào)向服務(wù)器獲取其需要的日志管理信息,并進(jìn)行實(shí)時(shí)監(jiān)控 自己產(chǎn)品使用情況,或借以完成收集錯(cuò)誤、分析異常、優(yōu)化完善應(yīng)用程序的工作。
[0146] 請(qǐng)參閱圖3,為本發(fā)明一實(shí)施方式所述通用應(yīng)用日志管理系統(tǒng)的結(jié)構(gòu)示意圖。所述 系統(tǒng)包括客戶端1、服務(wù)器2和應(yīng)用開發(fā)用戶端3 ;
[0147] 所述客戶端1包括記錄單元11、分類單元12、判斷單元13、控制單元14和通信單 元15 ;
[0148] 所述記錄單元11用于實(shí)時(shí)記錄應(yīng)用的操作信息;
[0149] 所述分類單元12用于對(duì)所述操作信息作分類處理;所做分類處理具體包括:將所 述操作信息分類于調(diào)試模式、信息模式、錯(cuò)誤模式、對(duì)象輸出模式、提不模式或確認(rèn)模式中 的一個(gè)或多個(gè)類目下。
[0150] 所述判斷單元13用于判斷應(yīng)用的系統(tǒng)環(huán)境為Web應(yīng)用程序或移動(dòng)應(yīng)用;
[0151] 所述控制單元14為瀏覽器控制臺(tái)或虛擬控制臺(tái),用于接收經(jīng)分類處理的操作信 息;
[0152] 所述通信單元15用于通過(guò)全雙工通信方式將所述操作信息上傳至服務(wù)器。
[0153] 進(jìn)一步地,所述控制單元14包括等級(jí)排序模塊141、去冗余模塊142、加密模塊143 或壓縮模塊144 ;
[0154] 所述等級(jí)排序模塊141用于對(duì)所述操作信息作等級(jí)排序處理,所述等級(jí)排序處理 具體包括根據(jù)操作信息的優(yōu)先級(jí)級(jí)別進(jìn)行排序并去除預(yù)設(shè)的低優(yōu)先級(jí)操作信息;
[0155] 所述去冗余模塊142用于對(duì)所述操作信息作去冗余處理;所述去冗余模塊進(jìn)行去 冗余處理包括去除與數(shù)據(jù)相關(guān)的說(shuō)明信息;
[0156] 所述加密模塊143用于對(duì)所述操作信息作加密處理;進(jìn)行加密處理的算法為DES 對(duì)稱加密;
[0157] 所述壓縮模塊144用于對(duì)所述操作信息作壓縮處理,壓縮處理的算法為哈夫曼樹 算法。
[0158] 所述服務(wù)器2用于接收和存儲(chǔ)來(lái)自客戶端的應(yīng)用操作信息,并主動(dòng)向所述應(yīng)用開 發(fā)用戶端3發(fā)送預(yù)設(shè)日志管理信息或應(yīng)應(yīng)用開發(fā)用戶端3請(qǐng)求向應(yīng)用開發(fā)用戶端3發(fā)送相 應(yīng)的日志管理信息;
[0159] 所述應(yīng)用開發(fā)用戶端3用于接收來(lái)自服務(wù)器2的預(yù)設(shè)日志管理信息,或用于向服 務(wù)器2提出日志管理信息請(qǐng)求并接收服務(wù)器2應(yīng)所述請(qǐng)求發(fā)送的相應(yīng)的日志管理信息。
[0160] 進(jìn)一步地,所述應(yīng)用開發(fā)用戶端3還用于在應(yīng)用開發(fā)階段向服務(wù)器2發(fā)送日志管 理工具接入請(qǐng)求,所述日志管理工具接入請(qǐng)求中包括客戶端系統(tǒng)信息;
[0161] 服務(wù)器2用于根據(jù)客戶端系統(tǒng)信息向應(yīng)用開發(fā)用戶端3發(fā)送適用于客戶端系統(tǒng)環(huán) 境的日志管理工具;
[0162] 應(yīng)用開發(fā)用戶端3將所述日志管理工具接入應(yīng)用程序中。
[0163] 進(jìn)一步地,所述服務(wù)器3包括解密單元31或解壓縮單元32 ;
[0164] 所述解密單元31用于對(duì)經(jīng)加密的操作信息作解密處理;
[0165] 所述解壓縮單元32用于對(duì)經(jīng)壓縮的操作信息作解壓縮處理。
[0166] 下面以一實(shí)施流程說(shuō)明本實(shí)施方式所述通用日志管理系統(tǒng)實(shí)現(xiàn)日志管理的具體 方式:
[0167] S1、應(yīng)用開發(fā)用戶端3向服務(wù)器2發(fā)送日志管理工具接入請(qǐng)求;
[0168] 所述日志管理工具接入請(qǐng)求中包括客戶端系統(tǒng)信息。
[0169] S2、服務(wù)器2根據(jù)客戶端系統(tǒng)信息3向應(yīng)用開發(fā)用戶端3發(fā)送適用于客戶端系統(tǒng) 環(huán)境的日志管理工具;
[0170] S3、應(yīng)用開發(fā)用戶端3將所述日志管理工具接入應(yīng)用程序中。
[0171] 步驟S1-S3發(fā)生于應(yīng)用開發(fā)階段,采用寄宿的方式將日志工具寄宿在Web應(yīng)用、 Android應(yīng)用或I0S應(yīng)用的產(chǎn)品中,形成一個(gè)通用的日志管理服務(wù)。服務(wù)器2在接收到應(yīng) 用開發(fā)用戶端3的請(qǐng)求后,針對(duì)不同的客戶端系統(tǒng)發(fā)送不同的文件,如針對(duì)PC的Chrome發(fā) 送.crx文件,針對(duì)Android系統(tǒng)發(fā)送.apk文件,針對(duì)iOS系統(tǒng)發(fā)送.ipa文件;應(yīng)用開發(fā)用 戶端3在接收到文件之后將其安裝嵌入應(yīng)用程序中。通過(guò)這樣的方式可以將日志管理服務(wù) 接入任何的產(chǎn)品。應(yīng)用開發(fā)人員只需在產(chǎn)品開發(fā)期間通過(guò)導(dǎo)入日志工具包的內(nèi)核程序,從 而實(shí)現(xiàn)日志工具的介入和寄宿。
[0172] S4、客戶端1安裝應(yīng)用;
[0173] 所述應(yīng)用為經(jīng)步驟S1-S3處理、接入有日志管理工具的應(yīng)用。
[0174] S5、記錄單元11實(shí)時(shí)記錄應(yīng)用的操作信息;
[0175] S6、分類單元12對(duì)所述操作信息作分類處理;
[0176] 所述分類處理具體包括:將所述操作信息分類于調(diào)試模式、信息模式、錯(cuò)誤模式、 對(duì)象輸出模式、提示模式或確認(rèn)模式中的一個(gè)或多個(gè)類目下。通過(guò)操作信息分類并輸出至 相應(yīng)的控制臺(tái),方便控制臺(tái)進(jìn)行操作信息的記錄和分析。
[0177] S7、判斷單元13判斷應(yīng)用的系統(tǒng)環(huán)境為Web應(yīng)用程序或移動(dòng)應(yīng)用,當(dāng)判斷結(jié)果為 Web應(yīng)用程序時(shí)進(jìn)入步驟S81 ;當(dāng)判斷結(jié)果為移動(dòng)應(yīng)用程序時(shí)進(jìn)入步驟S82 ;
[0178] S81、將所述操作信息輸出至控制單元14中的瀏覽器控制臺(tái),然后進(jìn)入步驟S9 ;
[0179] S82、將所述操作信息輸出至控制單元14中的虛擬控制臺(tái),然后進(jìn)入步驟S9 ;
[0180] 步驟S7-S81或S82所述的步驟主要是基于HTML5的Console Log和Data Log進(jìn) 行的設(shè)計(jì),通過(guò)編寫JavaScript程序來(lái)實(shí)現(xiàn)對(duì)日志的記錄和輸出。其中,Console Log作用 于瀏覽器控制臺(tái),將所述應(yīng)用操作信息輸出到瀏覽器控制臺(tái)(大部分瀏覽器都有Console 面板)中,并讀取控制臺(tái)的日志來(lái)實(shí)現(xiàn)對(duì)日志的收集和記錄。另一方面,Data Log主要作 用在移動(dòng)應(yīng)用的虛擬控制臺(tái)(Android、I0S均具有的Virtual Console)中,通過(guò)移動(dòng)端的 虛擬控制臺(tái)的日志輸出,同樣可以實(shí)現(xiàn)日志的收集和記錄。JavasSript編寫的程序可以通 用于Web、Andr 〇id和I0S的所有應(yīng)用中,在日志記錄過(guò)程中首先進(jìn)行環(huán)境判斷,分支執(zhí)行程 序,實(shí)質(zhì)上程序內(nèi)核是一致的,版本單一而容易管理,可有效降低開發(fā)成本。
[0181] S9、控制單元14對(duì)所述操作信息作等級(jí)排序處理、去冗余處理、加密處理或壓縮 處理,得到應(yīng)用日志管理信息;
[0182] 所述等級(jí)排序處理由等級(jí)排序模塊141進(jìn)行,具體包括根據(jù)操作信息的優(yōu)先級(jí)級(jí) 別進(jìn)行排序并去除預(yù)設(shè)的低優(yōu)先級(jí)操作信息;所述去冗余處理由去冗余模塊142進(jìn)行,包 括去除與數(shù)據(jù)相關(guān)的說(shuō)明信息;所述加密處理由加密模塊143進(jìn)行,加密算法為DES對(duì)稱加 密;所述壓縮處理由壓縮模塊144進(jìn)行,算法為哈夫曼樹算法。
[0183] 所述分類處理、等級(jí)排序處理、去冗余處理、加密處理、壓縮處理均為本發(fā)明所述 應(yīng)用日志管理所規(guī)范起草和制定的功能,可實(shí)現(xiàn)對(duì)操作信息的收集、分類、分析、上傳前處 理等工作,無(wú)需應(yīng)用開發(fā)者的任何參與,可規(guī)范化提供應(yīng)用開發(fā)者以各種所需的信息收集 和分析服務(wù),應(yīng)用開發(fā)者在應(yīng)用開發(fā)階段的日志管理服務(wù)接入過(guò)程中可選擇其所需的功能 模塊進(jìn)行接入。
[0184] 等級(jí)排序模塊141進(jìn)行的等級(jí)排序處理可根據(jù)預(yù)設(shè)的操作信息等級(jí)進(jìn)行排序,去 除預(yù)設(shè)的低優(yōu)先級(jí)操作信息,或截取保留預(yù)設(shè)的高優(yōu)先級(jí)操作信息。去冗余模塊142進(jìn)行 的去冗余操作可將如與數(shù)據(jù)相關(guān)的說(shuō)明信息去除,從而達(dá)到減少后續(xù)上傳的數(shù)據(jù)量的目 的。加密模塊143進(jìn)行的加密過(guò)程可采用如DES對(duì)稱加密算法等算法,加密密鑰可由應(yīng)用 開發(fā)者在接入日志管理服務(wù)時(shí)設(shè)置,其核心算法使用56位密鑰及附加的8位奇偶校驗(yàn)位生 成。壓縮模塊144所進(jìn)行的壓縮處理可采用如哈夫曼樹算法設(shè)計(jì)核心壓縮計(jì)算,壓縮加密 之后的數(shù)據(jù)為01串?dāng)?shù)據(jù),這將極大提高傳輸速率。服務(wù)器2在接收到經(jīng)上述處理后的日志 管理信息后,由解密單元21或解壓縮單元22進(jìn)行相應(yīng)的解壓縮或解密操作,從而達(dá)到更好 地節(jié)約服務(wù)器資源和帶寬、提高實(shí)時(shí)通訊效率的效果。
[0185] S10、通信單元15通過(guò)全雙工通信方式將所述日志管理信息上傳至服務(wù)器2 ;后進(jìn) 入步驟S11或步驟S12 ;
[0186] 具體地,根據(jù)前述判斷單元13對(duì)應(yīng)用系統(tǒng)環(huán)境的判定結(jié)果,通信單元15對(duì)Web應(yīng) 用通過(guò)Web Socket方式將所述操作信息上傳至服務(wù)器;對(duì)移動(dòng)應(yīng)用通過(guò)Mobile Socket方 式將所述操作信息上傳至服務(wù)器。
[0187] 本步驟采用HTML5的WebSocket和MobilSocket來(lái)設(shè)計(jì)數(shù)據(jù)同步上載模塊的 核心程序?,F(xiàn)有技術(shù)中大部分的Web應(yīng)用、Android應(yīng)用、I0S應(yīng)用為了實(shí)現(xiàn)實(shí)時(shí)通信 (real-time),都采用輪詢技術(shù)(polling),在特定的的時(shí)間間隔(time interval)(如每1 秒),由應(yīng)用對(duì)服務(wù)器發(fā)出HTTP Request,然后由服務(wù)器返回最新的數(shù)據(jù)給客服端應(yīng)用,請(qǐng) 求是由客戶端發(fā)起的。這種傳統(tǒng)的HTTP Request的模式帶來(lái)很明顯的缺點(diǎn):客戶端需要不 斷的向服務(wù)器發(fā)出請(qǐng)求(request),然而HTTP Request的header是長(zhǎng)數(shù)據(jù),會(huì)占用很多的 帶寬,加大客戶端應(yīng)用和服務(wù)器的負(fù)載能力。本發(fā)明技術(shù)方案基于HTML5的WebSocket和 MobilSocket采用全雙工通信(full-duplex)技術(shù),客戶端1和服務(wù)器2只需要要做一個(gè)握 手的動(dòng)作,匹配完驗(yàn)證數(shù)據(jù)之后,形成了一條快速通道,該通道采用兩個(gè)特征來(lái)實(shí)現(xiàn)高效數(shù) 據(jù)傳輸:1. Header (互相溝通的Header是短數(shù)據(jù)-大概只有2 Bytes) ;2. Server Push (月艮 務(wù)器2可以主動(dòng)傳送數(shù)據(jù)給客戶端1)。
[0188] 步驟S5-S10所述為客戶端1記錄應(yīng)用操作信息、得到應(yīng)用日志管理信息并將其上 傳至服務(wù)器2的過(guò)程。
[0189] 需要上傳至服務(wù)器2的日志信息具體類型等要求可由應(yīng)用開發(fā)者在應(yīng)用開發(fā)階 段的日志管理服務(wù)接入過(guò)程中進(jìn)行設(shè)置。
[0190] S11、服務(wù)器2向應(yīng)用開發(fā)用戶端3推送預(yù)設(shè)日志管理信息,流程結(jié)束;
[0191] 所述預(yù)設(shè)日志管理信息為應(yīng)用開發(fā)者在應(yīng)用開發(fā)階段的日志管理服務(wù)接入過(guò)程 中所預(yù)設(shè)的希望定期得到的日志管理信息。
[0192] S12、應(yīng)用開發(fā)用戶端3向服務(wù)器2請(qǐng)求獲取日志管理信息,然后進(jìn)入步驟S13 ;
[0193] S13、服務(wù)器2依所述請(qǐng)求向應(yīng)用開發(fā)用戶端3發(fā)送相應(yīng)的日志管理信息。
[0194] 步驟S11-S13所述為應(yīng)用開發(fā)用戶端3從服務(wù)器2處獲取所需的日志信息的步 驟。具體而言,在應(yīng)用開發(fā)階段的日志管理服務(wù)接入過(guò)程中,應(yīng)用開發(fā)用戶端3可從服務(wù)器 2獲取一賬號(hào),應(yīng)用開發(fā)用戶可通過(guò)該賬號(hào)向服務(wù)器2獲取其需要的日志管理信息,并進(jìn)行 實(shí)時(shí)監(jiān)控自己產(chǎn)品使用情況,或借以完成收集錯(cuò)誤、分析異常、優(yōu)化完善應(yīng)用程序的工作。
[0195] 上述技術(shù)方案實(shí)質(zhì)上提供了一種基于HTML5的跨平臺(tái)客戶端日志記錄和云同步 管理工具,針對(duì)的是在當(dāng)前基于HTML5的各種應(yīng)用、系統(tǒng)和設(shè)備發(fā)展迅速,大力推動(dòng)移動(dòng)端 應(yīng)用的發(fā)展,移動(dòng)端使用人數(shù)迅速增長(zhǎng)的情況下,Web客戶端、I0S移動(dòng)端、Android移動(dòng)端 等在使用交互上出現(xiàn)的問(wèn)題如執(zhí)行異常,錯(cuò)誤頻繁出現(xiàn),響應(yīng)效率低下,漏洞攻擊等難以得 到記錄,應(yīng)用開發(fā)者很難跟蹤和優(yōu)化自己的產(chǎn)品的現(xiàn)狀,本發(fā)明技術(shù)方案可以在客戶端記 錄下該應(yīng)用的交互數(shù)據(jù)(如錯(cuò)誤、異常、攻擊性請(qǐng)求)并分類整理高速同步到云服務(wù)器上, 開發(fā)者可以根據(jù)云同步服務(wù)器上記錄的日志信息來(lái)收集錯(cuò)誤、分析異常、優(yōu)化和完善自己 的應(yīng)用。并能夠?qū)崟r(shí)監(jiān)控自己產(chǎn)品的使用情況。
[0196] 需要說(shuō)明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí) 體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存 在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)"包括"、"包含"或者其任何其他變體意在涵蓋 非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者終端設(shè)備不僅包括那些 要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者終 端設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句"包括……"或"包含……"限定的 要素,并不排除在包括所述要素的過(guò)程、方法、物品或者終端設(shè)備中還存在另外的要素。此 夕卜,在本文中,"大于"、"小于"、"超過(guò)"等理解為不包括本數(shù);"以上"、"以下"、"以內(nèi)"等理解 為包括本數(shù)。
[0197] 本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,上述各實(shí)施例可提供為方法、裝置、或計(jì)算機(jī)程序產(chǎn) 品。這些實(shí)施例可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例 的形式。上述各實(shí)施例涉及的方法中的全部或部分步驟可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái) 完成,所述的程序可以存儲(chǔ)于計(jì)算機(jī)設(shè)備可讀取的存儲(chǔ)介質(zhì)中,用于執(zhí)行上述各實(shí)施例方 法所述的全部或部分步驟。所述計(jì)算機(jī)設(shè)備,包括但不限于:個(gè)人計(jì)算機(jī)、服務(wù)器、通用計(jì)算 機(jī)、專用計(jì)算機(jī)、網(wǎng)絡(luò)設(shè)備、嵌入式設(shè)備、可編程設(shè)備、智能移動(dòng)終端、智能家居設(shè)備、穿戴式 智能設(shè)備、車載智能設(shè)備等;所述的存儲(chǔ)介質(zhì),包括但不限于:RAM、ROM、磁碟、磁帶、光盤、 閃存、U盤、移動(dòng)硬盤、存儲(chǔ)卡、記憶棒、網(wǎng)絡(luò)服務(wù)器存儲(chǔ)、網(wǎng)絡(luò)云存儲(chǔ)等。
[0198] 上述各實(shí)施例是參照根據(jù)實(shí)施例所述的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的 流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的 每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些 計(jì)算機(jī)程序指令到計(jì)算機(jī)設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)設(shè)備的處理器執(zhí) 行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框 中指定的功能的裝置。
[0199] 這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)設(shè)備以特定方式工作的計(jì)算機(jī)設(shè) 備可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)設(shè)備可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造 品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指 定的功能。
[0200] 這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)設(shè)備上,使得在計(jì)算機(jī)設(shè)備上執(zhí)行一系列 操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程 圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
[0201] 盡管已經(jīng)對(duì)上述各實(shí)施例進(jìn)行了描述,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng) 造性概念,則可對(duì)這些實(shí)施例做出另外的變更和修改,所以以上所述僅為本發(fā)明的實(shí)施例, 并非因此限制本發(fā)明的專利保護(hù)范圍,凡是利用本發(fā)明說(shuō)明書及附圖內(nèi)容所作的等效結(jié)構(gòu) 或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的【技術(shù)領(lǐng)域】,均同理包括在本發(fā)明的專利 保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1. 一種通用應(yīng)用日志管理方法,包括步驟: 實(shí)時(shí)記錄應(yīng)用的操作信息; 對(duì)所述操作信息作分類處理; 判斷應(yīng)用的系統(tǒng)環(huán)境為Web應(yīng)用或移動(dòng)應(yīng)用,并根據(jù)判斷結(jié)果分別將所述操作信息輸 出至瀏覽器控制臺(tái)或虛擬控制臺(tái); 通過(guò)全雙工通信方式將所述操作信息上傳至服務(wù)器; 服務(wù)器向應(yīng)用開發(fā)用戶端推送預(yù)設(shè)日志管理信息,或應(yīng)用開發(fā)用戶端向服務(wù)器請(qǐng)求獲 取日志管理信息,服務(wù)器依所述請(qǐng)求向應(yīng)用開發(fā)用戶端發(fā)送相應(yīng)的日志管理信息。
2. 如權(quán)利要求1所述的通用應(yīng)用日志管理方法中,步驟"將所述操作信息記錄于瀏覽 器控制臺(tái)或虛擬控制臺(tái)"之后以及步驟"通過(guò)全雙工通信方式將所述操作信息上傳至服務(wù) 器"之前還包括步驟: 對(duì)所述操作信息作等級(jí)排序處理,所述等級(jí)排序處理具體包括根據(jù)操作信息的優(yōu)先級(jí) 級(jí)別進(jìn)行排序并去除預(yù)設(shè)的低優(yōu)先級(jí)操作信息; 對(duì)所述操作信息作去冗余處理; 對(duì)所述操作信息作加密處理; 對(duì)所述操作信息作壓縮處理。
3. 如權(quán)利要求2所述的通用應(yīng)用日志管理方法中,所述去冗余處理包括去除與數(shù)據(jù)相 關(guān)的說(shuō)明彳目息; 所述加密處理算法為DES對(duì)稱加密; 所述壓縮處理算法為哈夫曼樹算法。
4. 如權(quán)利要求1或2所述的通用應(yīng)用日志管理方法中,步驟"通過(guò)全雙工通信方式將 所述操作信息上傳至服務(wù)器"具體包括: 根據(jù)應(yīng)用系統(tǒng)環(huán)境的判定結(jié)果,對(duì)Web應(yīng)用通過(guò)Web Socket方式將所述操作信息上傳 至服務(wù)器; 對(duì)移動(dòng)應(yīng)用通過(guò)Mobile Socket方式將所述操作信息上傳至服務(wù)器。
5. 如權(quán)利要求1或2所述的通用應(yīng)用日志管理方法中,所述應(yīng)用為接入有日志管理服 務(wù)的應(yīng)用,日志管理服務(wù)接入于應(yīng)用開發(fā)階段,所述接入步驟具體包括: 應(yīng)用開發(fā)用戶端向服務(wù)器發(fā)送日志管理工具接入請(qǐng)求,所述日志管理工具接入請(qǐng)求中 包括客戶端系統(tǒng)信息; 服務(wù)器根據(jù)客戶端系統(tǒng)信息向應(yīng)用開發(fā)用戶端發(fā)送適用于客戶端系統(tǒng)環(huán)境的日志管 理工具; 應(yīng)用開發(fā)用戶端將所述日志管理工具接入應(yīng)用程序中。
6. 如權(quán)利要求1或2所述的通用應(yīng)用日志管理方法中,所述步驟"對(duì)所述操作信息作 分類處理"具體包括: 將所述操作信息分類于調(diào)試模式、信息模式、錯(cuò)誤模式、對(duì)象輸出模式、提不模式或確 認(rèn)模式中的一個(gè)或多個(gè)類目下。
7. -種通用應(yīng)用日志管理裝置,包括記錄單元、分類單元、判斷單元、控制單元和通信 單元; 所述記錄單元用于實(shí)時(shí)記錄應(yīng)用的操作信息; 所述分類單元用于對(duì)所述操作信息作分類處理; 所述判斷單元用于判斷應(yīng)用的系統(tǒng)環(huán)境為Web應(yīng)用程序或移動(dòng)應(yīng)用; 所述控制單元為瀏覽器控制臺(tái)或虛擬控制臺(tái),用于接收經(jīng)分類處理的操作信息; 所述通信單元用于通過(guò)全雙工通信方式將所述操作信息上傳至服務(wù)器。
8. 如權(quán)利要求6所述的通用應(yīng)用日志管理裝置中,所述控制單元包括等級(jí)排序模塊、 去冗余模塊、加密模塊或壓縮模塊; 所述等級(jí)排序模塊用于對(duì)所述操作信息作等級(jí)排序處理,所述等級(jí)排序處理具體包括 根據(jù)操作信息的優(yōu)先級(jí)級(jí)別進(jìn)行排序并去除預(yù)設(shè)的低優(yōu)先級(jí)操作信息; 所述去冗余模塊用于對(duì)所述操作信息作去冗余處理; 所述加密模塊用于對(duì)所述操作信息作加密處理; 所述壓縮模塊用于對(duì)所述操作信息作壓縮處理。
9. 如權(quán)利要求8所述的通用應(yīng)用日志管理裝置中,所述去冗余模塊進(jìn)行去冗余處理包 括去除與數(shù)據(jù)相關(guān)的說(shuō)明信息; 所述加密模塊進(jìn)行加密處理的算法為DES對(duì)稱加密; 所述壓縮模塊進(jìn)行壓縮處理的算法為哈夫曼樹算法。
10. 如權(quán)利要求7或8所述的通用應(yīng)用日志管理裝置中,通信單元用于通過(guò)全雙工通信 方式將所述操作信息上傳至服務(wù)器具體包括: 根據(jù)判斷單元對(duì)應(yīng)用系統(tǒng)環(huán)境的判定結(jié)果,對(duì)Web應(yīng)用通過(guò)Web Socket方式將所述操 作信息上傳至服務(wù)器; 對(duì)移動(dòng)應(yīng)用通過(guò)Mobile Socket方式將所述操作信息上傳至服務(wù)器。
11. 如權(quán)利要求7或8所述的通用應(yīng)用日志管理裝置中,分類單元對(duì)操作信息做分類處 理具體包括: 將所述操作信息分類于調(diào)試模式、信息模式、錯(cuò)誤模式、對(duì)象輸出模式、提不模式或確 認(rèn)模式中的一個(gè)或多個(gè)類目下。
12. -種通用應(yīng)用日志管理系統(tǒng),包括客戶端、服務(wù)器以及應(yīng)用開發(fā)用戶端; 所述客戶端為權(quán)利要求6-9中任一項(xiàng)所述的通用應(yīng)用日志管理裝置; 所述服務(wù)器用于接收和存儲(chǔ)來(lái)自客戶端的應(yīng)用操作信息,并主動(dòng)向所述應(yīng)用開發(fā)用戶 端發(fā)送預(yù)設(shè)日志管理信息或應(yīng)應(yīng)用開發(fā)用戶端請(qǐng)求向應(yīng)用開發(fā)用戶端發(fā)送相應(yīng)的日志管 理信息; 所述應(yīng)用開發(fā)用戶端用于接收來(lái)自服務(wù)器的預(yù)設(shè)日志管理信息,或用于向服務(wù)器提出 日志管理信息請(qǐng)求并接收服務(wù)器應(yīng)所述請(qǐng)求發(fā)送的相應(yīng)的日志管理信息。
13. 如權(quán)利要求12所述的通用應(yīng)用日志管理系統(tǒng)中,所述應(yīng)用開發(fā)用戶端還用于在應(yīng) 用開發(fā)階段向服務(wù)器發(fā)送日志管理工具接入請(qǐng)求,所述日志管理工具接入請(qǐng)求中包括客戶 端系統(tǒng)信息; 服務(wù)器用于根據(jù)客戶端系統(tǒng)信息向應(yīng)用開發(fā)用戶端發(fā)送適用于客戶端系統(tǒng)環(huán)境的日 志管理工具; 應(yīng)用開發(fā)用戶端將所述日志管理工具接入應(yīng)用程序中。
14. 如權(quán)利要求12或13所述的通用應(yīng)用日志管理系統(tǒng)中,所述服務(wù)器包括解密單元或 解壓縮單元; 所述解密單元用于對(duì)經(jīng)加密的操作信息作解密處理; 所述解壓縮單元用于對(duì)經(jīng)壓縮的操作信息作解壓縮處理。
【文檔編號(hào)】H04L29/06GK104144081SQ201410423184
【公開日】2014年11月12日 申請(qǐng)日期:2014年8月26日 優(yōu)先權(quán)日:2014年8月26日
【發(fā)明者】翁智華, 邱雄武, 孫廷歷, 李正, 劉德建, 陳宏展 申請(qǐng)人:福建天晴數(shù)碼有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
蕉岭县| 青龙| 抚州市| 襄城县| 湘阴县| 巴中市| 安庆市| 阳春市| 铜梁县| 改则县| 田东县| 泰兴市| 锦州市| 甘谷县| 鞍山市| 宿迁市| 西峡县| 墨玉县| 远安县| 新宁县| 视频| 兴安盟| 柘城县| 嘉定区| 金湖县| 阿尔山市| 杭锦旗| 敖汉旗| 奉新县| 大丰市| 湖北省| 革吉县| 长宁区| 永仁县| 海兴县| 兴和县| 阿图什市| 乌拉特后旗| 定襄县| 明水县| 宜阳县|