一種日志收集和上報的方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明涉及計算機技術(shù)領(lǐng)域,特別地涉及一種日志收集和上報的方法和裝置。
【背景技術(shù)】
[0002]在移動互聯(lián)網(wǎng)高速發(fā)展的今天,移動客戶端已經(jīng)成為各個行業(yè)服務提供商面向用戶的重要窗口。移動客戶端一旦發(fā)版后,經(jīng)常會遇到客戶的一些投訴建議和問題反饋,通過客戶的簡單描述,開發(fā)人員很難復現(xiàn)客戶所提出的問題,也就很難解決某些客戶提出的問題。
[0003]日志是開發(fā)人員復現(xiàn)問題和解決問題最重要的手段之一,但是因為流量及安全等方面的問題,線上的日志(log)都是關(guān)閉的。目前,廣泛被使用的是異常上報系統(tǒng),當客戶端出現(xiàn)異常時,把異常棧信息保存并上報到服務器端,開發(fā)人員通過異常棧信息來分析解決問題,但是這種方式僅能解決程序異常方面的問題,并不能解決正常的用戶業(yè)務問題。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明提供一種日志收集和上報的方法和裝置,能夠簡單方便的解決客戶端用戶反饋的問題,可以針對用戶所提出的問題模塊打開日志,回溯用戶的行為,重現(xiàn)問題發(fā)生時的場景,使研發(fā)人員快速定位問題和解決問題,之后再關(guān)閉該用戶該模塊的日志,這樣既解決了客戶問題,又把影響降到最低,提高客戶端用戶體驗和客戶端版本質(zhì)量,提高用戶滿意度和用戶體驗。
[0005]為實現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種日志收集和上報的方法。
[0006]—種日志收集和上報的方法,包括:接收服務器發(fā)來的日志屬性的配置信息,并根據(jù)所述配置信息更新系統(tǒng)配置,其中,所述配置信息包含日志收集規(guī)則和日志上報規(guī)則;按照所述日志收集規(guī)則記錄日志;按照所述日志上報規(guī)則將所述記錄的日志上報給所述服務器。
[0007]可選地,所述配置信息還包括:需要收集和上報日志的設(shè)備標識、收集和上報日志的文件大小和文件數(shù)量、收集和上報日志的級別,以及條件控制參數(shù)。
[0008]可選地,根據(jù)所述配置信息更新系統(tǒng)配置之前,還包括:判斷所述客戶端標識與所述配置信息中的需要收集和上報日志的設(shè)備標識是否匹配;如果匹配,則更新系統(tǒng)配置;否貝IJ,關(guān)閉日志管理系統(tǒng),不進行日志收集和上報。
[0009]可選地,按照所述日志收集規(guī)則記錄日志的步驟包括:多線程收集預定級別的日志并根據(jù)日志收集的順序生成索引號,其中,所述預定級別為所述配置信息中的收集和上報日志的級別;將所述收集的日志循環(huán)存儲在文件池中,所述文件池中存儲的文件大小和文件數(shù)量為所述配置信息中收集和上報日志的文件大小和文件數(shù)量,且所述文件池中存儲的日志格式為時間_索引號_日志內(nèi)容;使用單獨的線程讀取所述文件池中的日志并保存為日志文件。
[0010]可選地,所述日志上報規(guī)則包括:在日志管理系統(tǒng)啟動時,若系統(tǒng)所處的網(wǎng)絡(luò)環(huán)境為無線局域網(wǎng),則將累積的日志全部上傳到服務器;在日志記錄過程中,若系統(tǒng)所處的網(wǎng)絡(luò)環(huán)境為無線局域網(wǎng),則當所記錄的日志達到預定文件大小時,立即將所述日志上報到服務器,否則,當滿足所述配置信息中的條件控制參數(shù)所限定的條件時,將達到所述預定文件大小的日志上傳到服務器;其中,所述預定文件大小為所述配置信息中收集和上報日志的文件大小,所述配置信息中的條件控制參數(shù)為非無線局域網(wǎng)環(huán)境下日志上報所需要滿足的條件。
[0011]根據(jù)本發(fā)明的另一方面,提供了一種日志收集和上報的裝置。
[0012]—種日志收集和上報的裝置,包括:系統(tǒng)更新模塊,用于接收服務器發(fā)來的日志屬性的配置信息,并根據(jù)所述配置信息更新系統(tǒng)配置,其中,所述配置信息包含日志收集規(guī)則和日志上報規(guī)則;日志收集模塊,用于按照所述日志收集規(guī)則記錄日志;日志上報模塊,用于按照所述日志上報規(guī)則將所述記錄的日志上報給所述服務器。
[0013]可選地,所述配置信息還包括:需要收集和上報日志的設(shè)備標識、收集和上報日志的文件大小和文件數(shù)量、收集和上報日志的級別,以及條件控制參數(shù)。
[0014]可選地,所述裝置還包括更新判斷模塊,用于判斷所述客戶端標識與所述配置信息中的需要收集和上報日志的設(shè)備標識是否匹配;如果匹配,則更新系統(tǒng)配置;否則,關(guān)閉日志管理系統(tǒng),不進行日志收集和上報。
[0015]可選地,所述日志收集模塊還用于:多線程收集預定級別的日志并根據(jù)日志收集的順序生成索引號,其中,所述預定級別為所述配置信息中的收集和上報日志的級別;將所述收集的日志循環(huán)存儲在文件池中,所述文件池中存儲的文件大小和文件數(shù)量為所述配置信息中收集和上報日志的文件大小和文件數(shù)量,且所述文件池中存儲的日志格式為時間_索引號_日志內(nèi)容;使用單獨的線程讀取所述文件池中的日志并保存為日志文件。
[0016]可選地,所述日志上報規(guī)則包括:在日志管理系統(tǒng)啟動時,若系統(tǒng)所處的網(wǎng)絡(luò)環(huán)境為無線局域網(wǎng),則將累積的日志全部上傳到服務器;在日志記錄過程中,若系統(tǒng)所處的網(wǎng)絡(luò)環(huán)境為無線局域網(wǎng),則當所記錄的日志達到預定文件大小時,立即將所述日志上報到服務器,否則,當滿足所述配置信息中的條件控制參數(shù)所限定的條件時,將達到所述預定文件大小的日志上傳到服務器;其中,所述預定文件大小為所述配置信息中收集和上報日志的文件大小,所述配置信息中的條件控制參數(shù)為非無線局域網(wǎng)環(huán)境下日志上報所需要滿足的條件。
[0017]根據(jù)本發(fā)明的技術(shù)方案,根據(jù)服務器發(fā)來的配置信息,并按照配置信息中的日志收集規(guī)則記錄日志,及按照配置信息中的日志上報規(guī)則將所述記錄的日志上報給服務器,可以準確找到發(fā)生問題的客戶端的對應模塊,安全高效地將日志上報給服務器端,開發(fā)人員從服務器端獲取日志信息來定位用戶問題,克服目前開發(fā)人員很難復現(xiàn)客戶所提出的問題從而很難解決客戶所提出問題的缺陷,快速定位問題和解決問題,提高客戶端用戶體驗和客戶端版本質(zhì)量,并提高用戶滿意度和用戶體驗。
【附圖說明】
[0018]附圖用于更好地理解本發(fā)明,不構(gòu)成對本發(fā)明的不當限定。其中:
[0019]圖1是根據(jù)本發(fā)明實施例的日志收集和上報的方法的主要步驟示意圖;
[0020]圖2是根據(jù)本發(fā)明實施例的日志收集和上報的裝置的主要模塊示意圖;
[0021]圖3是根據(jù)本發(fā)明實施例的日志系統(tǒng)的架構(gòu)示意圖;
[0022]圖4是根據(jù)本發(fā)明實施例的收集和上報日志過程的流程圖。
【具體實施方式】
[0023]以下結(jié)合附圖對本發(fā)明的示范性實施例做出說明,其中包括本發(fā)明實施例的各種細節(jié)以助于理解,應當將它們認為僅僅是示范性的。因此,本領(lǐng)域普通技術(shù)人員應當認識至IJ,可以對這里描述的實施例做出各種改變和修改,而不會背離本發(fā)明的范圍和精神。同樣,為了清楚和簡明,以下的描述中省略了對公知功能和結(jié)構(gòu)的描述。
[0024]圖1是根據(jù)本發(fā)明實施例的日志收集和上報的方法的主要步驟示意圖。如圖1所示,本發(fā)明的日志收集和上報的方法主要包括如下步驟Sll至步驟S13。
[0025]步驟SI1:接收服務器發(fā)來的日志屬性的配置信息,并根據(jù)配置信息更新系統(tǒng)配置。其中,配置信息包含日志收集規(guī)則和日志上報規(guī)則。
[0026]另外,配置信息還可以包括:需要收集和上報日志的設(shè)備標識、收集和上報日志的文件大小和文件數(shù)量、收集和上報日志的級別,以及條件控制參數(shù)等。
[0027]在步驟S11中,在配置信息更新系統(tǒng)配置之前,還可以包括如下的步驟:判斷所述客戶端標識與所述配置信息中的需要收集和上報日志的設(shè)備標識是否匹配;如果匹配,則更新系統(tǒng)配置;否則,關(guān)閉日志管理系統(tǒng),不進行日志收集和上報。
[0028]步驟SI2:按照所述日志收集規(guī)則記錄日志。
[0029]該步驟S12具體可以包括:
[0030]步驟S120:多線程收集預定級別的日志并根據(jù)日志收集的順序生成索引號,其中,所述預定級別為所述配置信息中的收集和上報日志的級別;
[0031]步驟S121:將所述收集的日志循環(huán)存儲在文件池中,所述文件池中存儲的文件大小和文件數(shù)量為所述配置信息中收集和上報日志的文件大小和文件數(shù)量,且所述文件池中存儲的日志格式為時間_索弓I號_日志內(nèi)容;
[0032]步驟S122:使用單獨的線程讀取所述文件池中的日志并保存為日志文件。
[0033]步驟S13:按照日志上報規(guī)則將記錄的日志上報給服務器。
[0034]另外,在按照所述日志上報規(guī)則將所述記錄的日志上報給所述服務器之前,還可以將所述記錄的日志中的關(guān)鍵