两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種基于云平臺的客戶端應用的信息統(tǒng)計方法和裝置與流程

文檔序號:11230449閱讀:456來源:國知局
一種基于云平臺的客戶端應用的信息統(tǒng)計方法和裝置與流程

本申請涉及云平臺技術領域,特別是涉及一種基于云平臺的客戶端應用的信息方法和一種基于云平臺的客戶端應用的信息統(tǒng)計裝置。



背景技術:

目前,對客戶端應用進行信息統(tǒng)計的技術方案,通常采用類方法的注解或者通過配置文件的方式聲明面向切面編程(aspectorientedprogramming,aop)攔截。具體流程圖如圖1所示,客戶端應用通過需要通過注解或者通過spring(一個開源框架)的aop配置文件配置代理,由代理對客戶端應用的執(zhí)行方法進行攔截,訪問到某個配置為被攔截的執(zhí)行方法后,記錄訪問到的執(zhí)行方法,將攔截到執(zhí)行方法的次數(shù)進行匯總。

現(xiàn)有的通過代理攔截的方式收集客戶端應用的信息,代理攔截的對象是預先針對某種場景定制的,無法根據(jù)實際需求進行調(diào)整。并且,代理攔截只能攔截客戶端應用的執(zhí)行方法,對于與執(zhí)行方法相關的參數(shù)或者數(shù)據(jù)無法攔截得到,這種情況下對代理攔截得到的攔截結(jié)果無法進一步利用,代理攔截結(jié)果的利用轉(zhuǎn)化率不高。



技術實現(xiàn)要素:

鑒于上述問題,提出了本申請實施例以便提供一種克服上述問題或者至少部分地解決上述問題的一種基于云平臺的客戶端應用的信息統(tǒng)計方法和相應的一種基于云平臺的客戶端應用的信息統(tǒng)計裝置。

為了解決上述問題,本申請公開了一種基于云平臺的客戶端應用的信息統(tǒng)計方法,包括:

監(jiān)聽各個客戶端應用調(diào)用埋點軟件開發(fā)工具包創(chuàng)建的埋點日志,并從所述埋點日志中提取出埋點信息,所述埋點日志根據(jù)預先定義的埋點屬性創(chuàng)建,所述客戶端應用通過調(diào)用所述埋點軟件開發(fā)工具包的應用編程接口預先定義所述埋點屬性;

按照至少一個維度對所述埋點信息進行聚合;

根據(jù)查詢請求查詢并展示聚合后的埋點信息。

優(yōu)選地,所述埋點屬性包括所述埋點信息的埋點類別和/或埋點關鍵字,所述埋點類別包括所述埋點信息所屬埋點父類別或埋點子類別。

優(yōu)選地,所述監(jiān)聽各個客戶端應用調(diào)用埋點軟件開發(fā)工具包創(chuàng)建的埋點日志包括:

監(jiān)聽所述埋點日志的目錄和/或所述埋點信息的變化狀態(tài);

若所述目錄和/或所述埋點信息發(fā)生變化,則確定所述埋點日志中新增埋點信息。

優(yōu)選地,所述從所述埋點日志中提取出埋點信息包括:

從所述埋點日志中以增量方式提取出埋點信息。

優(yōu)選地,在從所述埋點日志中提取出埋點信息之后,所述方法還包括:

將所述埋點信息發(fā)送至消息中間件,所述消息中間件用于傳輸所述埋點信息,并控制傳輸速度;

在所述按照至少一個維度對所述埋點信息進行聚合之前,所述方法還包括:

從所述消息中間件讀取出所述埋點信息。

優(yōu)選地,在所述按照至少一個維度對所述埋點信息進行聚合之前,所述方法還包括:

篩選與所述埋點屬性對應的埋點信息。

優(yōu)選地,所述按照至少一個維度對所述埋點信息進行聚合包括:

按照應用維度和/或時間維度對所述埋點信息進行聚合。

優(yōu)選地,所述查詢請求攜帶通過查詢接口輸入的查詢參數(shù);

所述根據(jù)查詢請求查詢并展示聚合后的埋點信息包括:

根據(jù)所述查詢參數(shù)查詢并展示聚合后的埋點信息;所述查詢參數(shù)包括時間段、所述埋點屬性和所述客戶端應用的應用標識中至少一種。

本申請還公開了一種基于云平臺的客戶端應用的信息統(tǒng)計裝置,包括:

埋點日志監(jiān)聽模塊,用于監(jiān)聽各個客戶端應用調(diào)用埋點軟件開發(fā)工具 包創(chuàng)建的埋點日志;

埋點信息提取模塊,用于從所述埋點日志中提取出埋點信息,所述埋點日志根據(jù)預先定義的埋點屬性創(chuàng)建,所述客戶端應用通過調(diào)用所述埋點軟件開發(fā)工具包的應用編程接口預先定義所述埋點屬性;

埋點信息聚合模塊,用于按照至少一個維度對所述埋點信息進行聚合;

埋點信息展示模塊,用于根據(jù)查詢請求查詢并展示聚合后的埋點信息。

優(yōu)選地,所述埋點屬性包括所述埋點信息的埋點類別和/或埋點關鍵字,所述埋點類別包括所述埋點信息所屬埋點父類別或埋點子類別。

優(yōu)選地,所述埋點日志監(jiān)聽模塊,具體用于監(jiān)聽所述埋點日志的目錄和/或所述埋點信息的變化狀態(tài);若所述目錄和/或所述埋點信息發(fā)生變化,則確定所述埋點日志中新增埋點信息。

優(yōu)選地,所述埋點信息讀取模塊,具體用于從所述埋點日志中以增量方式讀取出埋點信息。

優(yōu)選地,所述裝置還包括:

埋點信息發(fā)送模塊,用于在所述從所述埋點日志中提取出埋點信息之后,將所述埋點信息發(fā)送至消息中間件,所述消息中間件用于傳輸所述埋點信息,并控制傳輸速度;

所述裝置還包括:

埋點信息提取模塊,用于在所述按照至少一個維度對所述埋點信息進行聚合之前,從所述消息中間件讀取出所述埋點信息。

優(yōu)選地,所述裝置還包括:

埋點信息篩選模塊,用于在所述按照至少一個維度對所述埋點信息進行聚合之前,篩選與所述埋點屬性對應的埋點信息。

優(yōu)選地,所述埋點信息聚合模塊,具體用于按照應用維度和/或時間維度對所述埋點信息進行聚合。

優(yōu)選地,所述查詢請求攜帶通過查詢接口輸入的查詢參數(shù);

所述埋點信息展示模塊,具體用于根據(jù)所述查詢參數(shù)查詢并聚合后的埋點信息;所述查詢參數(shù)包括時間段、所述埋點屬性和所述客戶端應用的應用 標識中至少一種。

本申請實施例包括以下優(yōu)點:

本申請實施例基于云平臺,對客戶端應用調(diào)用埋點軟件開發(fā)工具包(softwaredevelopmentkit,sdk)中的應用編程接口(applicationprogramminginterface,api)所創(chuàng)建的埋點日志進行監(jiān)聽,從埋點日志中讀取出埋點信息,并針對用戶的查詢請求查詢并展示按照不同的維度聚合后的埋點信息進行查詢并展示。本申請實施例可以通過sdk埋點中的api自定義埋點,由于支持不同應用場景下根據(jù)用戶需求自定義收集客戶端應用相關數(shù)據(jù),擴大了針對客戶端應用的信息收集范圍,并提高了收集結(jié)果的利用轉(zhuǎn)化率;而且,對從埋點日志中讀取出的埋點信息按不同維度進行聚合,實現(xiàn)了對客戶端應用的收集結(jié)果進行分類統(tǒng)計。

附圖說明

圖1是背景技術中客戶端應用的信息統(tǒng)計流程示意圖;

圖2是本申請的一種基于云平臺的客戶端應用的信息統(tǒng)計方法實施例的步驟流程圖;

圖3是本申請的一種基于云平臺的客戶端應用的信息統(tǒng)計方法實施例中l(wèi)ogagent的結(jié)構示意圖;

圖4是本申請的一種基于云平臺的客戶端應用的信息統(tǒng)計方法實施例中聚合系統(tǒng)的結(jié)構示意圖;

圖5是本申請的一種基于云平臺的客戶端應用的信息統(tǒng)計方法實施例中消息中間件、jstorm和聚合系統(tǒng)之間的關系示意圖;

圖6是本申請的另一種基于云平臺的客戶端應用的信息統(tǒng)計方法實施例的步驟流程圖;

圖7是本申請的一種基于云平臺的客戶端應用的信息統(tǒng)計方法實施例的系統(tǒng)結(jié)構邏輯示意圖;

圖8是本申請的一種基于云平臺的客戶端應用的信息統(tǒng)計裝置實施例的結(jié)構框圖。

具體實施方式

為使本申請的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式對本申請作進一步詳細的說明。

本申請實施例的核心構思之一在于,提供一種基于云平臺的客戶端應用的信息統(tǒng)計方法,可以應用于服務器端,服務器端提供埋點sdk,客戶端應用調(diào)用埋點sdk中的api自定義埋點,服務器端對埋點日志進行系統(tǒng)化監(jiān)聽,通過智能代理收集并自動、實時的聚合埋點日志中的消息,并對聚合結(jié)果進行查詢和展示,實現(xiàn)對客戶端應用的信息收集和統(tǒng)計。

參照圖2,示出了本申請的一種基于云平臺的客戶端應用的信息統(tǒng)計方法實施例的步驟流程圖,具體可以包括如下步驟:

步驟100,監(jiān)聽各個客戶端應用調(diào)用埋點軟件開發(fā)工具包創(chuàng)建的埋點日志,并從所述埋點日志中提取出埋點信息,所述埋點日志根據(jù)預先定義的埋點屬性創(chuàng)建,所述客戶端應用通過調(diào)用所述埋點軟件開發(fā)工具包的應用編程接口預先定義所述埋點屬性。

埋點軟件開發(fā)工具包sdk由服務器端提供給客戶端應用,由埋點軟件開發(fā)工具包生成埋點日志,埋點日志是一種特定的日志文件,用于記錄采集的埋點信息。具體而言,在埋點軟件開發(fā)工具包自定義埋點屬性,通過自定義埋點屬性,由埋點軟件開發(fā)工具包將客戶端應用運行過程中的每一條與上述自定義的埋點屬性相關的埋點消息存儲到埋點日志中。

其中,埋點屬性可以在埋點軟件開發(fā)工具包預先定義或是通過客戶端應用自定義。例如,埋點sdk可以以jar包的方式提供給客戶端應用使用,對于java客戶端應用,java客戶端應用需要依賴埋點sdk的jar包自定義埋點。具體的,客戶端應用可以通過訪問埋點sdk中提供的應用編程接口api,配置用于創(chuàng)建埋點日志的埋點屬性,以根據(jù)埋點屬性采集的埋點信息,由于支持不同應用場景下根據(jù)用戶需求自定義收集客戶端應用相關數(shù)據(jù),擴大了針對客戶端應用的信息收集范圍,并提高了收集結(jié)果的利用轉(zhuǎn)化率。

具體實現(xiàn)中,還可以預先通過sdk定義埋點日志的名稱、存儲路徑等信息。

其中,所述埋點屬性可以包括所述埋點類別、埋點關鍵字中至少一種。

所述埋點屬性可以包括埋點類別,例如在云平臺中部署的客戶端應用如果想進行壓力測試,用戶想知道在應用維度下整個云平臺系統(tǒng)的壓力情況,可以通過自定義埋點類別為用戶查詢,可以根據(jù)埋點類別獲取記錄的各次用戶查詢,以進一步根據(jù)各次用戶查詢統(tǒng)計出云平臺系統(tǒng)的最大qps(每秒查詢率)。

對所述埋點類別還可以進行分級,包括將所述埋點類別分為所述埋點信息所屬埋點父類別(category)或埋點子類別(subcategory),也就是通過對埋點類別定義父與子的關系,實現(xiàn)對獲取的埋點信息的分類統(tǒng)計。例如,需要對一個客戶端應用的對數(shù)據(jù)庫調(diào)用的多種執(zhí)行方法進行分析,則可以對該數(shù)據(jù)庫調(diào)用定義埋點父類別,對具體的各種執(zhí)行方法定義埋點子類別。

埋點屬性可以包括埋點關鍵字,通過客戶端應用定義所需收集的埋點關鍵字,進一步獲取與埋點關鍵字相關的埋點信息。例如,對客戶端應用的多個運行參數(shù)進行分析,則可以通過分別定義sdk埋點的埋點關鍵字,以區(qū)分各個運行參數(shù)。埋點關鍵字可以與埋點類別結(jié)合定義,例如,一個客戶端應用部署在云環(huán)境中的10臺虛擬機上,可以通過定義sdk埋點的埋點關鍵字,區(qū)分出每臺虛擬機的cpu(中央處理器)、memory(內(nèi)存)、disk(硬盤)等運行參數(shù)。具體的,對每臺虛擬機定義埋點類別,對各臺虛擬機的運行參數(shù)定義在該埋點類別下的埋點關鍵字。

所述埋點屬性還可以包括對目標對象的調(diào)用耗時和調(diào)用成功標識等,分別用于表示客戶端應用的某個目標對象(例如某個執(zhí)行方法)的調(diào)用耗時,,以及該目標對象是否成功調(diào)用。以將調(diào)用耗時和調(diào)用是否成功等信息記錄入埋點日志中,供分析使用。

具體而言,api接口的名稱為logstat,可以對埋點類別、埋點子類別、埋點關鍵字、調(diào)用耗時、調(diào)用是否成功中至少一種進行定義。當對埋點類別和埋點子類別進行定義時,埋點sdk記錄本次結(jié)果為logstat(stringcategory,subcategory);當對埋點類別、埋點子類別和調(diào)用耗時進行定義時,埋點sdk 記錄本次結(jié)果為logstat(stringcategory,subcategory,longresponsetime);當對埋點類別、埋點關鍵字、調(diào)用耗時和調(diào)用是否成功進行定義時,埋點sdk記錄本次結(jié)果為logstat(stringcategory,stringkeyword,longresponsetime,booleansuccess)。

以對執(zhí)行方法的相關參數(shù)進行收集為例進行具體說明。假設sdk提供的api接口的具體類為monitorservice,api接口的名稱為monitorservicelogstat,客戶端應用中存在對mysql數(shù)據(jù)庫的操作,方法名分別為insertmethod方法和updatemethod方法?,F(xiàn)需要統(tǒng)計這兩個方法在應用運行中每分鐘調(diào)用的次數(shù),那么在使用埋點sdk記錄方法被調(diào)用一次時,假設父類別(category)設為mysql,子類別(subcategory)分別定義為insert和update。對于insertmethod方法的埋點,舉例如下:

在不需要記錄方法調(diào)用耗時的情況下,埋點sdk記錄本次結(jié)果為monitorservice.logstat(”mysql”,”insert”)。

如需要記錄insertmethod方法執(zhí)行耗時,則用記錄的insertmethod方法的結(jié)束時間減去開始時間就是insertmethod方法的執(zhí)行時間,假設為10毫秒,則埋點sdk記錄的結(jié)果為monitorservice.logstat(”mysql”,”insert”,”10”)。

如需記錄調(diào)用是否成功,則記錄結(jié)果為monitorservice.logstat(”mysql”,”insert”,”10”,”true”)表示調(diào)用成功,monitorservice.logstat(”mysql”,”insert”,”10”,”false”)表示調(diào)用失敗。對于updatemethod的埋點同理使用。

監(jiān)聽埋點日志可以是監(jiān)聽埋點日志的變化,以發(fā)現(xiàn)新增的埋點信息。針對具備日志目錄的埋點日志,可以監(jiān)聽埋點日志目錄的變化,當目錄發(fā)生變化時確定新增了埋點信息,或是監(jiān)聽埋點信息的變化,當埋點信息發(fā)生變化時確定新增了埋點信息,或是結(jié)合兩種方式進行監(jiān)聽。

所述步驟100可以利用logagent(日志代理)對埋點日志進行監(jiān)聽,logagent用于監(jiān)聽埋點日志,具體可以劃分為如下幾個模塊:pathwatch(目錄監(jiān)聽),用于監(jiān)聽埋點日志的目錄變化;filewatch(文件監(jiān)聽),用于監(jiān)聽 埋點日志的埋點信息變化;watchchecker(監(jiān)聽限制),用于對監(jiān)聽埋點日志中的埋點信息的數(shù)量做限制;logseeker(日志探索),用于實現(xiàn)增量讀取埋點日志中的埋點信息。應用到本申請,利用logagent對埋點日志進行監(jiān)聽,具體可以通過pathwatch監(jiān)聽埋點日志的目錄變化狀態(tài),若目錄變化,則表示埋點日志中新增埋點信息。對埋點日志的監(jiān)聽,不僅包括對埋點日志的目錄的監(jiān)聽,還包括在pathwatch監(jiān)聽埋點日志的目錄變化狀態(tài)的基礎上,進一步通過filewatch對埋點日志中埋點信息的監(jiān)聽,并且,監(jiān)聽過程中還可以利用watchchecker對監(jiān)聽的埋點信息的數(shù)量進行限制,在通過filewatch監(jiān)聽到埋點日志中的埋點信息變化后,利用logseeker實現(xiàn)增量的方式讀取埋點信息,logagent的結(jié)構示意圖如圖3所示。

所述步驟100中從埋點日志中讀取出埋點信息,具體可以從埋點日志中以增量方式讀取出埋點信息。例如,埋點日志為xx.log文件,其中的每條埋點信息以段為單位順序排列,埋點日志中每增加一段內(nèi)容,則認為增加一條埋點信息,在讀取埋點信息時,忽略已讀取的埋點信息,僅讀取新增的埋點信息,由于無需讀取整個埋點日志,可以減少處理的數(shù)據(jù)量。

在本申請的一個優(yōu)選的實施例中,在所述步驟100從埋點日志讀取埋點信息之后,還可以將讀取出的埋點信息發(fā)送至消息中間件。所述消息中間件可以為metaq(隊列模型消息中間件)或者kafka(分布式發(fā)布訂閱消息系統(tǒng)),所述消息中間件用于傳輸埋點信息,同時利用消息中間件的消息堆積功能,控制埋點信息的傳輸速度。相應的,在對埋點信息進行處理之前,需要先從消息中間件提取出埋點信息。

步驟102,按照至少一個維度對所述埋點信息進行聚合。

在得到埋點信息之后,可以按照從至少一個維度分別對埋點信息進行聚合,實現(xiàn)了對客戶端應用的收集結(jié)果進行分類統(tǒng)計。例如,從應用維度和時間維度進行聚合,最終提供最小粒度為1分鐘的某客戶端應用的聚合信息,即屬于某客戶端應用的時間維度的最小單位為1分鐘的聚合信息。

可以預先在服務器端部署的一套用于聚合埋點日志中的埋點信息的聚合系統(tǒng),對埋點信息的聚合操作可以在聚合系統(tǒng)中執(zhí)行,聚合系統(tǒng)的結(jié)構如 圖4所示。在聚合系統(tǒng)中可以利用數(shù)據(jù)接收器接收聚合信息;利用數(shù)據(jù)分析器分析聚合信息,并存入數(shù)據(jù)庫;數(shù)據(jù)庫用于存儲經(jīng)過分析的聚合信息據(jù),還可以提供數(shù)據(jù)查詢接口,用于查詢聚合信息。采用聚合系統(tǒng)進行數(shù)據(jù)聚合處理可以保證數(shù)據(jù)處理的實時性和準確性。

其中,按照時間維度對埋點信息進行聚合,具體可以根據(jù)埋點信息對應的時間點或時間段,將屬于相同時間點或者相同時間段的多條埋點信息聚合在一起,作為該相同時間點或相同時間段內(nèi)的聚合信息;按照應用維度對埋點信息進行聚合,具體可以根據(jù)埋點信息對應的客戶端應用的標識,將屬于相同客戶端應用的多條埋點信息聚合在一起,作為該相同客戶端應用的聚合信息。其中,多條埋點信息可以為同一客戶端應用的埋點信息,也可以為不同客戶端應用的埋點信息。

由于埋點日志中除了實際有用的埋點信息之外,還包括一些冗余的信息。因此,在本申請的一個優(yōu)選的實施例中,在所述步驟102之前,還可以對讀取出的埋點信息進行清洗和過濾。通過清洗刪除一些無意義的字符或是標記,例如分隔符等,通過過濾可以從剩余的信息中提取出有用的埋點信息,具體的,可以根據(jù)埋點屬性中的埋點類別和埋點關鍵字中至少一種進行篩選。

具體的,可以利用實時計算框架讀取出埋點信息以及對埋點信息的清洗和過濾。例如可以采用jstorm實時計算框架,利用jstorm提取出與埋點屬性對應的埋點信息。jstorm是參考storm的實時流式計算框架,在網(wǎng)絡輸入輸出、線程模型、資源調(diào)度、可用性及穩(wěn)定性上做了持續(xù)改進,相比于storm具有運行更穩(wěn)定、調(diào)度功能更強大、執(zhí)行效率更高等優(yōu)點。如圖5所示,示出了消息中間件、jstorm和聚合系統(tǒng)之間的關系示意圖,jstorm從消息中間件獲取埋點信息,在jstorm中經(jīng)過spout(噴射)進行清洗,通過bolt(篩選)進行過濾,將清洗和過濾后的與埋點關鍵字對應的埋點信息發(fā)送至聚合系統(tǒng)。

步驟104,根據(jù)查詢請求查詢并展示聚合后的埋點信息。

執(zhí)行本申請的服務端可以提供給用戶查詢埋點信息的接口,具體的可以 由上述聚合系統(tǒng)提供接口。用戶可以通過訪問該接口發(fā)送對埋點信息的查詢請求,服務端接收到該查詢請求后,查詢所需的埋點信息并展示給用戶。

具體而言,用戶可以通過訪問該接口輸入表征所需信息的查詢參數(shù),服務端接收到的查詢請求攜帶查詢參數(shù),進一步根據(jù)查詢參數(shù)查詢對應的埋點信息。查詢參數(shù)可以包括時間段、所述埋點屬性和所述客戶端應用的應用標識中至少一種,以查詢參數(shù)包括時間段、埋點屬性和應用標識為例,根據(jù)查詢參數(shù)在聚合系統(tǒng)中可以查詢到某個時間段內(nèi)某個應用的某個關鍵字的埋點信息。查詢結(jié)果可以以圖表、文檔、走勢圖等各種形式進行展示。例如,針對按照時間維度聚合的埋點信息,可以生成可視化曲線圖,并根據(jù)實時獲取的新的埋點數(shù)據(jù)對曲線圖進行更新。

綜上所述,本申請實施例中的技術方案,對客戶端應用調(diào)用埋點sdk中的api所創(chuàng)建的埋點日志進行監(jiān)聽,從埋點日志中讀取出埋點信息,并針對用戶的查詢請求查詢并展示按照不同的維度聚合后的埋點信息進行查詢并展示。本申請實施例可以通過sdk埋點中的api自定義埋點,由于支持不同應用場景下根據(jù)用戶需求自定義收集客戶端應用相關數(shù)據(jù),擴大了針對客戶端應用的信息收集范圍,并提高了收集結(jié)果的利用轉(zhuǎn)化率;而且,對從埋點日志中讀取出的埋點信息按不同維度進行聚合,實現(xiàn)了對客戶端應用的收集結(jié)果進行分類統(tǒng)計。同時,利用消息中間件傳輸埋點信息,并控制傳輸速度,可以緩解聚合系統(tǒng)的壓力。

參照圖6,示出了本申請的另一種基于云平臺的客戶端應用的信息統(tǒng)計方法實施例的步驟流程圖,具體可以包括如下步驟:

步驟200,客戶端應用調(diào)用服務器端提供的埋點sdk自定義埋點。

步驟202,埋點sdk創(chuàng)建埋點日志。

步驟204,logagent監(jiān)聽埋點日志,并以增量方式讀取埋點日志中的埋點信息,并將埋點信息發(fā)送至消息中間件。

步驟206,jstorm從消息中間件中讀取出埋點信息,并對埋點信息進行實時計算,將計算后的埋點信息發(fā)送給至聚合系統(tǒng)。

步驟208,聚合系統(tǒng)按照應用維度和/或時間維度對埋點信息進行聚合。

步驟210,服務端根據(jù)查詢請求查詢并展示聚合后的埋點信息。

綜上所述,本申請實施例中的客戶端應用可以通過sdk埋點中的api自定義埋點,由于支持不同應用場景下根據(jù)用戶需求自定義收集客戶端應用相關數(shù)據(jù),擴大了針對客戶端應用的信息收集范圍,并提高了收集結(jié)果的利用轉(zhuǎn)化率;而且,對從埋點日志中讀取出的埋點信息按不同維度進行聚合,實現(xiàn)了對客戶端應用的收集結(jié)果進行分類統(tǒng)計。

參照圖7,示出了本申請的一種基于云平臺的客戶端應用的信息統(tǒng)計方法實施例的系統(tǒng)結(jié)構邏輯示意圖,客戶端應用調(diào)用埋點sdk中的api自定義埋點,創(chuàng)建埋點日志;logagent讀取出埋點日志中的埋點信息,并發(fā)送至消息中間件,jstorm實時從消息中間件讀取出埋點信息,并進行清洗和過濾,將清洗和過濾后的埋點信息發(fā)送至聚合系統(tǒng);聚合系統(tǒng)對接收到的埋點信息按照至少一個維度進行聚合,并對外提供數(shù)據(jù)查詢功能和數(shù)據(jù)展示功能。

綜上所述,本申請實施例中的技術方案,對客戶端應用調(diào)用埋點sdk中的api所創(chuàng)建的埋點日志進行監(jiān)聽,從埋點日志中讀取出埋點信息,并針對用戶的查詢請求查詢并展示按照不同的維度聚合后的埋點信息進行查詢并展示。本申請實施例可以通過sdk埋點中的api自定義埋點,由于支持不同應用場景下根據(jù)用戶需求自定義收集客戶端應用相關數(shù)據(jù),擴大了針對客戶端應用的信息收集范圍,并提高了收集結(jié)果的利用轉(zhuǎn)化率;而且,對從埋點日志中讀取出的埋點信息按不同維度進行聚合,實現(xiàn)了對客戶端應用的收集結(jié)果進行分類統(tǒng)計。

需要說明的是,對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本申請實施例并不受所描述的動作順序的限制,因為依據(jù)本申請實施例,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作并不一定是本申請實施例所必須的。

參照圖8,示出了本申請的一種基于云平臺的客戶端應用的信息統(tǒng)計裝置實施例的結(jié)構框圖,具體可以包括如下模塊:

埋點日志監(jiān)聽模塊800,用于監(jiān)聽各個客戶端應用調(diào)用埋點軟件開發(fā)工具包創(chuàng)建的埋點日志;

埋點信息提取模塊802,用于從所述埋點日志中提取出埋點信息,所述埋點日志根據(jù)預先定義的埋點屬性創(chuàng)建,所述客戶端應用通過調(diào)用所述埋點軟件開發(fā)工具包的應用編程接口預先定義所述埋點屬性;

埋點信息聚合模塊804,用于按照至少一個維度對所述埋點信息進行聚合;

埋點信息展示模塊806,用于根據(jù)查詢請求查詢并展示聚合后的埋點信息。

本申請實施例中,優(yōu)選地,所述埋點屬性包括所述埋點信息的埋點類別和/或埋點關鍵字,所述埋點類別包括所述埋點信息所屬埋點父類別或埋點子類別。

本申請實施例中,優(yōu)選地,所述埋點日志監(jiān)聽模塊,具體用于監(jiān)聽所述埋點日志的目錄和/或所述埋點信息的變化狀態(tài);若所述目錄和/或所述埋點信息發(fā)生變化,則確定所述埋點日志中新增埋點信息。

本申請實施例中,優(yōu)選地,所述埋點信息讀取模塊,具體用于從所述埋點日志中以增量方式讀取出埋點信息。

本申請實施例中,優(yōu)選地,所述裝置還包括:

埋點信息發(fā)送模塊,用于在所述從所述埋點日志中提取出埋點信息之后,將所述埋點信息發(fā)送至消息中間件,所述消息中間件用于傳輸所述埋點信息,并控制傳輸速度;

所述裝置還包括:

埋點信息提取模塊,用于在所述按照至少一個維度對所述埋點信息進行聚合之前,從所述消息中間件讀取出所述埋點信息。

本申請實施例中,優(yōu)選地,所述裝置還包括:

埋點信息篩選模塊,用于在所述按照至少一個維度對所述埋點信息進行 聚合之前,篩選與所述埋點屬性對應的埋點信息。

本申請實施例中,優(yōu)選地,所述埋點信息聚合模塊,具體用于按照應用維度和/或時間維度對所述埋點信息進行聚合。

本申請實施例中,優(yōu)選地,所述查詢請求攜帶通過查詢接口輸入的查詢參數(shù);

所述埋點信息展示模塊,具體用于根據(jù)所述查詢參數(shù)查詢并聚合后的埋點信息;所述查詢參數(shù)包括時間段、所述埋點屬性和所述客戶端應用的應用標識中至少一種。

綜上所述,本申請實施例中的技術方案,對客戶端應用調(diào)用埋點sdk中的api所創(chuàng)建的埋點日志進行監(jiān)聽,從埋點日志中讀取出埋點信息,并針對用戶的查詢請求查詢并展示按照不同的維度聚合后的埋點信息進行查詢并展示。本申請實施例可以通過sdk埋點中的api自定義埋點,由于支持不同應用場景下根據(jù)用戶需求自定義收集客戶端應用相關數(shù)據(jù),擴大了針對客戶端應用的信息收集范圍,并提高了收集結(jié)果的利用轉(zhuǎn)化率;而且,對從埋點日志中讀取出的埋點信息按不同維度進行聚合,實現(xiàn)了對客戶端應用的收集結(jié)果進行分類統(tǒng)計。

對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。

本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。

本領域內(nèi)的技術人員應明白,本申請實施例的實施例可提供為方法、裝置、或計算機程序產(chǎn)品。因此,本申請實施例可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本申請實施例可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、cd-rom、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。

在一個典型的配置中,所述計算機設備包括一個或多個處理器(cpu)、輸入/輸出接口、網(wǎng)絡接口和內(nèi)存。內(nèi)存可能包括計算機可讀介質(zhì)中的非永久性存儲器,隨機存取存儲器(ram)和/或非易失性內(nèi)存等形式,如只讀存儲器(rom)或閃存(flashram)。內(nèi)存是計算機可讀介質(zhì)的示例。計算機可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現(xiàn)信息存儲。信息可以是計算機可讀指令、數(shù)據(jù)結(jié)構、程序的模塊或其他數(shù)據(jù)。計算機的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(pram)、靜態(tài)隨機存取存儲器(sram)、動態(tài)隨機存取存儲器(dram)、其他類型的隨機存取存儲器(ram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、快閃記憶體或其他內(nèi)存技術、只讀光盤只讀存儲器(cd-rom)、數(shù)字多功能光盤(dvd)或其他光學存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設備或任何其他非傳輸介質(zhì),可用于存儲可以被計算設備訪問的信息。按照本文中的界定,計算機可讀介質(zhì)不包括非持續(xù)性的電腦可讀媒體(transitorymedia),如調(diào)制的數(shù)據(jù)信號和載波。

本申請實施例是參照根據(jù)本申請實施例的方法、終端設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理終端設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理終端設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。

這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理終端設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。

這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理終端設 備上,使得在計算機或其他可編程終端設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程終端設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。

盡管已描述了本申請實施例的優(yōu)選實施例,但本領域內(nèi)的技術人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權利要求意欲解釋為包括優(yōu)選實施例以及落入本申請實施例范圍的所有變更和修改。

最后,還需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者終端設備中還存在另外的相同要素。

以上對本申請所提供的一種基于云平臺的客戶端應用的信息統(tǒng)計方法和一種基于云平臺的客戶端應用的信息統(tǒng)計裝置,進行了詳細介紹,本文中應用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本申請的方法及其核心思想;同時,對于本領域的一般技術人員,依據(jù)本申請的思想,在具體實施方式及應用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應理解為對本申請的限制。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
阳泉市| 浙江省| 顺平县| 黔江区| 祥云县| 宝清县| 资兴市| 安阳县| 泽库县| 大荔县| 凌海市| 沾化县| 眉山市| 衡阳市| 灵璧县| 禹城市| 自治县| 波密县| 嘉义市| 青龙| 尼玛县| 楚雄市| 普定县| 沐川县| 濮阳市| 广平县| 遂川县| 浏阳市| 柳林县| SHOW| 昌宁县| 年辖:市辖区| 田林县| 潜山县| 阿克| 宾阳县| 宜丰县| 叶城县| 昌乐县| 平安县| 丰城市|