具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
应用程序供应商制作好一个应用程序后,需要了解应用程序在各用户终端中的使用情况。为了获取与使用情况相关联的统计数据,应用程序供应商需要借助应用程序统计服务商(例如,百度)提供的统计平台或者统计工具(例如,百度统计平台),对待发布的应用程序进行一定的处理。
为了便于统一说明,在本发明各实施例的介绍过程中,将应用程序供应商端或者可以完成应用程序供应商端功能的硬件设备统称为供应商平台;将应用程序统计服务商端或者可以完成应用程序统计服务商端功能的硬件设备统称为统计平台。其中,所述供应商平台和所述统计平台可以为单个服务器,也可以为多个服务器构成的服务器集群。也可以由同一服务器或服务器集群兼具应用程序开发功能和统计服务功能,则该服务器或服务器集群既可作为供应商平台,也可作为统计平台。
第一实施例
图1是本发明第一实施例的一种应用程序日志统计策略配置方法的流程图,本实施例的方法可以由应用程序日志统计策略配置装置来执行,该装置可通过硬件和/或软件的方式实现。本实施例的方法具体包括如下操作:
110、供应商平台确定用于进行日志统计的自定义参数。
在本实施例中,供应商平台可以根据实际需求,确定想要统计的自定义参数,而不再受现有的统计工具对统计参数的限制。
在本实施例中,所述自定义参数可以包括下述至少一项:
至少一个自定义层级事件、与所述自定义层级事件对应的至少一个事件参数、与所述应用程序运行环境对应的至少一个自定义统计维度以及日志统计的时间规律。
在本实施例中,所述自定义层级事件可以包括下述至少一项:满足预定执行顺序的子事件的集合和完成预定功能的子事件的集合。
其中,上述子事件可以包括:按钮子事件、鼠标子事件、文本子事件、下拉菜单子事件和滚动条子事件等,对比并不限定。典型的,上述子事件可以具体为:应用程序被开启,应用程序中的某一按钮被按下或者应用程序中推送的某个推广信息被点击查看等。
举例而言,终端用户下载安装一个浏览器的客户端后,如果终端用户想要访问一个特定的网站(例如:百度),终端用户可以在该浏览器的网址输入框中直接输入该网站的网址名来访问该网站,也可以预先使用浏览器的收藏功能收藏该网站后,通过简单的点击操作访问该网站,也可以在导航网站中查找到该网站后,点击访问该网站等。如果该浏览器供应商平台想要对采用不同方式访问网站的用户行为进行统计时,可以通过定义一系列满足执行顺序的子事件的集合来代表某一项特定的用户行为。例如:可以定义一个层级事件为:顺序执行的“打开导航网站的子事件→在网址推荐栏中点击百度网站的子事件”来代表用户在浏览器中通过导航网站的网址推荐,打开百度网站的用户行为。也即,通过设置满足预定执行顺序的子事件的集合作为自定义的层级事件。
在另一个例子中,一个应用程序为了在终端用户之间进行推广,可以在应用程序中内置有各种推广渠道。例如:在主菜单中直接提供“推荐给好友”或者“给好评”等按键;或者在终端用户使用过程中推送相应的推广信息供终端用户点击;或者在终端用户退出软件之前提供评分或者评价链接供用户点击等。因此,可以将上述可完成应用程序推广功能的子事件的集合,作为自定义层级事件,以统计终端用户对应用程序的推广情况。
当然,可以理解的是,本领域技术人员可以根据实际需要,自定义的设置上述层级事件,对此并不限定。
在本实施例中,作为示例而非限定,所述事件参数可以包括下述至少一项:事件值、事件持续时长和事件的时间戳。
在本实施例中,作为示例而非限定,所述自定义统计维度可以包括下述至少一项:应用程序版本、渠道标志、用户等级、用户分类、推广类型、设备型号、分辨率、操作系统、运营商、联网方式、地域和操作语言。
在本实施例中,所述日志统计的时间规律可以具体包括日志统计的时间间隔(精度可以为时、分或秒等)、日志统计的截止时间以及日志统计的开始时间等,对比并不限定。
120、供应商平台获取采用日志自定义策略配置接口添加有所述自定义参数的应用程序。
在本实施例中,所述日志自定义策略配置接口由统计平台提供。
为了使得供应商平台能够在应用程序中,自定义的设置期望统计的各种参数,统计平台在现有的应用程序统计工具的基础上,开发了面向自定义统计的功能,并将面向自定义统计的日志自定义策略配置接口提供给供应商平台。对于一个待发布的应用程序,如果供应商平台通过上述接口添加期望统计的自定义参数后,终端用户下载运行该应用程序后,应用程序统计工具可以根据上述自定义参数采集应用程序关联的日志数据,并上报至统计平台。
其中,所述日志自定义策略配置接口可以为代码段形式的、可执行应用程序形式的或者人机交互界面形式等,对此并不限定。
相应的,供应商平台可以通过下载统计平台提供的应用程序统计工具的方式获取上述自定义策略配置接口,也可以通过访问统计平台特定页面的方式获取上述自定义策略配置接口。
在本实施例中,供应商平台获取采用日志自定义策略配置接口添加有所述自定义参数的应用程序具体可以为:
供应商平台获取所述日志自定义策略配置接口;
供应商平台采用所述日志自定义策略配置接口在应用程序中添加所述自定义参数;
也可以为:
供应商平台向统计平台提供的人机交互界面形式的日志自定义策略配置接口中提交所述自定义参数,其中,所述人机交互界面中包括至少一个用于写入自定义参数的输入框;
供应商平台向统计平台提供应用程序;
供应商平台接收所述统计平台使用集成工具添加有所述自定义参数的应用程序。
当然,可以理解的是,供应商平台还可以采取其他的形式获取采用日志自定义策略配置接口添加有所述自定义参数的应用程序,对此并不限定。
130、供应商平台向终端用户发布所述应用程序。
在本实施例中,供应商平台可以通过各种渠道(例如,发布到公共平台)向终端用户发布添加有所述自定义参数的应用程序。
本发明实施例的供应商平台通过获取统计平台提供的日志自定义策略配置接口,获取采用日志自定义策略配置接口添加有所述自定义参数的应用程序,使得供应商平台在应用程序的统计过程中,可以灵活自由的定义各种自定义参数,进而使得应用程序的自定义统计更加灵活,最大程度的满足了供应商平台的自定义的应用程序统计需求。
第二实施例
图2为本发明第二实施例的一种应用程序日志统计策略配置方法的流程图,本实施例以上述实施例为基础进行优化,在本实施例中,优选的将步骤供应商平台获取采用日志自定义策略配置接口添加有所述自定义参数的应用程序优化为:供应商平台获取所述日志自定义策略配置接口;供应商平台将代码段形式的所述日志自定义策略配置接口添加到应用程序中,其中,所述代码段中预留至少一个用于写入自定义参数的空白字段;供应商平台向所述空白字段写入用于日志统计的所述自定义参数。相应地,本实施例的方法具体包括如下操作:
210、供应商平台确定用于进行日志统计的自定义参数。
220、供应商平台获取日志自定义策略配置接口。
在本实施例中,供应商平台获取的日志自定义策略配置接口具体为代码段形式的接口。
举例而言,供应商平台可以通过下载统计平台提供的特定SDK(SoftwareDevelopment Kit,软件开发工具包),以获取代码段形式的日志自定义策略配置接口。
230、供应商平台将代码段形式的所述日志自定义策略配置接口添加到应用程序中,其中,所述代码段中预留至少一个用于写入自定义参数的空白字段。
举例而言,供应商平台将下载的SDK解压缩后,解压文件中包括一个作为所述日志自定义策略配置接口的配置文件,在该文件中包括下述字段:
evt:[],//自定义层级事件
该中括号中的空白字段预留给供应商平台写入自定义层级事件。
在本实施例中,可以将所述日志自定义策略配置接口作为单独的配置文件添加至应用程序的安装包文件中,当该应用程序被安装于移动终端后,该配置文件可以在应用程序的执行过程中被调用;相应的,所述日志自定义策略配置接口还可以以代码的形式加入到应用程序中的某个文件中,该段代码可以在应用程序的执行过程中被调用。
240、供应商平台向所述空白字段写入用于日志统计的所述自定义参数。
举例而言,供应商平台可以在evt:[]中的空白字段中写入自定义层级事件:navi,sites,hotrecommend,baidu,构造新的字段:
evt:[navi,sites,hotrecommend,baidu]。
当终端用户下载运行了添加该自定义层级事件的应用程序后,如果在终端用户在使用该应用程序过程中发生该自定义层级事件,应用程序统计工具会记录关联的日志数据,并上报至统计平台进行统计分析。
本发明实施例的供应商平台通过获取统计平台提供的日志自定义策略配置接口,获取采用日志自定义策略配置接口添加有所述自定义参数的应用程序,使得供应商平台在应用程序的统计过程中,可以灵活自由的定义各种自定义参数,进而使得应用程序的自定义统计更加灵活,最大程度的满足了供应商平台的自定义的应用程序统计需求。
第三实施例
图3为本发明第三实施例的一种应用程序日志统计策略配置方法的流程图,本实施例以上述实施例为基础进行优化,在本实施例中,优选的将步骤供应商平台获取采用日志自定义策略配置接口添加有所述自定义参数的应用程序优化为:供应商平台向统计平台提供的人机交互界面形式的日志自定义策略配置接口中提交所述自定义参数,其中,所述人机交互界面中包括至少一个用于写入自定义参数的输入框;供应商平台向统计平台提供应用程序;供应商平台接收所述统计平台使用集成工具添加有所述自定义参数的应用程序。相应地,本实施例的方法具体包括如下操作:
310、供应商平台确定用于进行日志统计的自定义参数。
320、供应商平台向统计平台提供的人机交互界面形式的日志自定义策略配置接口中提交所述自定义参数,其中,所述人机交互界面中包括至少一个用于写入自定义参数的输入框。
在本实施例中,日志自定义策略配置接口具体为:统计平台提供的人机交互界面形式的日志自定义策略配置接口。
在图4中示出了一种人机交互形式的日志自定义策略配置接口示意图。如图4所示,供应商平台可以通过在人机交互界面中的特定输入框中写入自定义参数的方式向统计平台提交自定义参数。
330、供应商平台向统计平台提供应用程序。
在本实施例中,供应商平台可以通过特定的上传渠道,向统计平台提供需要添加所述自定义参数的应用程序。
340、供应商平台接收所述统计平台使用集成工具添加有所述自定义参数的应用程序。
在本实施例中,统计平台使用内部的集成工具将自定义参数添加至应用程序中,并将添加有所述自定义参数的应用程序回传至供应商平台。
本发明实施例的供应商平台通过获取统计平台提供的日志自定义策略配置接口,获取采用日志自定义策略配置接口添加有所述自定义参数的应用程序,使得供应商平台在应用程序的统计过程中,可以灵活自由的定义各种自定义参数,进而使得应用程序的自定义统计更加灵活,最大程度的满足了供应商平台的自定义的应用程序统计需求。
第四实施例
图5是本发明第四实施例的一种应用程序日志统计方法的流程图,本实施例的方法可以由应用程序日志统计装置来执行,该装置可通过硬件和/或软件的方式实现。本实施例的方法具体包括如下操作:
510、统计平台向供应商平台提供日志自定义策略配置接口,其中,所述日志自定义策略配置接口用于在应用程序中添加用于日志统计的自定义参数。
在本实施例中,所述日志自定义策略配置接口可以为代码段形式,且所述代码段中预留至少一个用于写入自定义参数的空白字段。
所述日志自定义策略配置接口也可以为人机交互界面形式的。进一步地,所述方法还包括:统计平台从供应商平台获取应用程序,并通过人机交互界面形式的日志自定义策略配置接口,从供应商平台获取自定义参数;所述统计平台采用集成工具,将所述自定义参数添加至应用程序,并返回给所述供应商平台。
在本实施例中,统计平台向供应商平台提供的日志自定义策略配置接口还可以为其他形式的,例如:可执行应用程序形式等,对此并不限定。
在本实施例中,可以通过日志自定义策略配置接口在应用程序中添加用于日志统计的自定义参数可以为下述至少一项:
至少一个自定义层级事件、与所述自定义层级事件对应的至少一个事件参数、与所述应用程序运行环境对应的至少一个自定义统计维度以及日志统计的时间规律。
在本实施例中,所述自定义层级事件可以包括下述至少一项:满足预定执行顺序的子事件的集合和完成预定功能的子事件的集合。
当然,可以理解的是,本领域技术人员可以根据实际需要,自定义的设置上述层级事件,对此并不限定。
在本实施例中,作为示例而非限定,所述事件参数可以包括下述至少一项:事件值、事件持续时长和事件的时间戳。
在本实施例中,作为示例而非限定,所述自定义统计维度可以包括下述至少一项:应用程序版本、渠道标志、用户等级、用户分类、推广类型、设备型号、分辨率、操作系统、运营商、联网方式、地域和操作语言。
在本实施例中,所述日志统计的时间规律可以具体包括日志统计的时间间隔(精度可以为时、分或秒等)、日志统计的截止时间以及日志统计的开始时间等,对比并不限定。
520、统计平台接收终端发送的所述应用程序的日志数据。
在本实施例中,在终端用户运行应用程序的过程中,嵌入的应用程序统计工具可以根据在应用程序中添加的自定义参数来采集相关联的日志数据,将该日志数据发送至统计平台。
530、统计平台根据所述日志数据对所述应用程序进行统计分析。
在本实施例中,统计平台根据所述日志数据对所述应用程序进行统计分析可以具体为:统计平台根据所述日志信息中自定义参数的不同层级,对所述应用程序进行分级统计。
在一个具体例子中,供应商平台在应用程序中添加的自定义参数具体为:一个自定义层级事件“navi,sites,hotrecommend,baidu”;三个与该自定义层级事件对应的事件参数:事件值、事件持续时长和事件时间戳;以及三个自定义统计维度:ul,ut,type。
其中,上述自定义层级事件代表满足预定执行顺序的子事件:“navi,sites,hotrecommend,baidu”,即:在浏览器客户端中顺序执行的“打开导航网站的子事件,打开站点搜索页面的子事件,打开推荐网站页面的子事件和打开百度页面的子事件”的合集。
其中,自定义的统计维度“u1”、“ut”和“type”,为“用户等级”、“用户分类”和“推广活动”。
在应用程序的运行过程中,应用程序中的应用程序统计工具对上述自定义层级事件进行事件统计。如果监测到发生上述自定义层级事件,将上述三个事件参数的参数值写入监控日志;将上述三个自定义统计维度的维度值写入所述监控日志,将所述监控日志发送至统计平台以进行分级统计。
例如:统计平台接收到的监控日志信息如下:
其中,在body{}部分中包括了应用程序统计工具统计的,供应商平台添加的自定义层级事件的事件参数值以及自定义统计维度的维度值;Header{}部分中包括了应用程序统计工具统计的固定统计维度的维度值。
在现有的固定事件的统计技术中,统计平台的统计指标不够丰富,缺少最大值、最小值、平均值和比率等相关指标的统计,另外,统计结果的呈现不够友好,不支持正常的下钻、上卷等操作。其中,上卷是沿着维的层次向上聚集汇总数据,而下钻是上卷的逆操作。
针对上述技术问题,在本实施例中,统计平台根据确定的格式对每一条监控日志进行解析。例如,以应用版本、渠道标志、附加维度为一级维度,以设备型号、分辨率、操作系统、运营商、联网方式、地域、语言为二级维度,计算出每个自定义层级事件的总次数、独立事件数、值、最大值、最小值、持续时长等。输出中间结果如下所示:
通过将某些维度值置空输出汇总统计的中间结果,可以实现上卷功能。例如:可以将appv置空输出所有版本的汇总中间结果,将sec中的v置空输出某个二级维度的汇总中间结果;将事件向上依次置空输出事件汇总的中间结果,例如将上面示例中第四级事件baidu置空,得到所有hotrecommend的汇总中间结果,也即,得到了上卷后的统计结果。
然后,去除用户标识后对中间结果进一步计算,得到最终统计结果如下所示:
根据上述统计结果,可以得到平均值指标,例如:vs/tc可以得到事件平均值,ds/tc可以得到平均时长;另外,还可以得到比率等指标,例如:可以获取某个事件所有版本下的总次数,进而可以算出每个版本所占的比例。
另外,如果根据应用程序的启动日志得到了启动用户数、启动次数,进而也能计算出事件次数和启动用户数、启动次数的比例等。
在图6中示出了本发明第四实施例的统计结果的显示示意图。应用程序的供应商可以通过登录统计平台的方式查看统计结果。如图6所示,在统计平台提供的显示界面中点击列表中的自定义层级事件可以逐级向下查看后一层级子事件的统计结果,点击列表上的事件链接可以上卷查看前一层级子事件的统计结果;
点击选择不同的统计维度可以查看相应的独立事件数、事件总数、事件数/启动次数、事件数/启动用户数、事件值、事件平均值、最大值、最小值、事件时长、平均时长、最大时长、最小时长等所有指标。通过将二级维度置空可以上卷查看一级维度的事件统计结果。
需要说明的是,图6仅仅是事件统计结果查看的示例,本领域技术人员还可以增加趋势图,用于显示各个指标的每时、每日、每周或每月的趋势等。
本发明实施例的统计平台通过向供应商平台提供日志自定义策略配置接口;接收终端发送的所述应用程序的日志数据并根据所述日志数据对所述应用程序进行统计分析,使得供应商平台在应用程序的统计过程中,可以灵活自由的定义各种自定义参数,进而使得应用程序的自定义统计更加灵活,最大程度的满足了供应商平台的自定义的应用程序统计需求。
在上述技术方案的基础上,针对已经发布的应用程序,供应商平台还可以采用日志自定义策略配置接口来修改添加于应用程序中的自定义参数。举例而言,供应商平台可以通过日志自定义策略配置接口将修改后的自定义参数提交至统计平台。统计平台根据修改后的自定义参数生成相应的自定义配置文件。移动终端内的应用程序统计工具与统计平台进行定时同步,例如,每15分钟、30分钟或1小时等同步一次,通过获取统计平台提供的自定义配置文件,以确定哪些自定义层级事件不需要继续追踪,对于不需要追踪的事件,应用程序统计工具将不再进行监控。
这样设置的好处是:一个应用程序在发布后,应用程序的开发者对自定义层级事件的关注度也会随之改变,如果应用程序开发者对一个自定义层级事件不再关注后,可以通过在统计平台上更新自定义配置文件,以停止对该自定义层级事件的监测,减轻了移动终端内部的处理压力,节约了数据传输的流量。
第五实施例
在图7中示出了一种应用程序日志统计策略配置装置的结构图。如图7所示,所述装置包括:
自定义参数确定单元71,用于供应商平台确定用于进行日志统计的自定义参数。
自定义参数添加单元72,用于供应商平台获取采用日志自定义策略配置接口添加有所述自定义参数的应用程序。
应用程序发布单元73,用于供应商平台向终端用户发布所述应用程序。
本发明实施例的供应商平台通过获取统计平台提供的日志自定义策略配置接口,获取采用日志自定义策略配置接口添加有所述自定义参数的应用程序,使得供应商平台在应用程序的统计过程中,可以灵活自由的定义各种自定义参数,进而使得应用程序的自定义统计更加灵活,最大程度的满足了供应商平台的自定义的应用程序统计需求。
在上述各实施例的基础上,所述自定义参数添加单元可以具体包括:
接口获取子单元,用于供应商平台获取所述日志自定义策略配置接口。
参数添加子单元,用于供应商平台采用所述日志自定义策略配置接口在应用程序中添加所述自定义参数。
在上述各实施例的基础上,所述参数添加子单元可以具体用于:
供应商平台将代码段形式的所述日志自定义策略配置接口添加到应用程序中,其中,所述代码段中预留至少一个用于写入自定义参数的空白字段。
供应商平台向所述空白字段写入用于日志统计的所述自定义参数。
本发明实施例所提供的应用程序日志统计策略配置装置可用于执行本发明任意实施例提供的应用程序日志统计策略配置方法,具备相应的功能模块,实现相同的有益效果。
第六实施例
在图8中示出了一种应用程序日志统计装置的结构图。如图8所示,所述装置包括:
接口提供单元81,用于统计平台向供应商平台提供日志自定义策略配置接口,其中,所述日志自定义策略配置接口用于在应用程序中添加用于日志统计的自定义参数。
日志数据接收单元82,用于统计平台接收终端发送的所述应用程序的日志数据。
统计分析单元83,用于统计平台根据所述日志数据对所述应用程序进行统计分析。
本发明实施例的统计平台通过向供应商平台提供日志自定义策略配置接口;接收终端发送的所述应用程序的日志数据并根据所述日志数据对所述应用程序进行统计分析,使得供应商平台在应用程序的统计过程中,可以灵活自由的定义各种自定义参数,进而使得应用程序的自定义统计更加灵活,最大程度的满足了供应商平台的自定义的应用程序统计需求。
在上述各实施例的基础上,所述日志自定义策略配置接口为代码段形式,且所述代码段中预留至少一个用于写入自定义参数的空白字段。
本发明实施例所提供的应用程序日志统计装置可用于执行本发明任意实施例提供的应用程序日志统计方法,具备相应的功能模块,实现相同的有益效果。
显然,本领域技术人员应该明白,上述的本发明的各模块或各步骤可以通过如上所述的服务器实施。可选地,本发明实施例可以用计算机装置可执行的程序来实现,从而可以将它们存储在存储装置中由处理器来执行,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等;或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。