一种性能数据发送方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:21140736 阅读:26 留言:0更新日期:2019-05-18 05:03
本申请公开了一种性能数据发送方法、装置、计算机设备及存储介质,方法部分包括:根据用户指令运行目标应用,所述目标应用的组件生命周期的方法中预设有数据埋点,所述目标应用的组件为所述目标应用对应的程序的基本构建块,所述数据埋点为在所述组件的生命周期的方法中嵌入的代码或脚本;当所述目标应用运行过程中触发到所述数据埋点时,通过第一线程确定所述数据埋点对应的性能数据收集项目,并通过所述第一线程获取所述性能数据收集项目对应的性能数据,其中,所述第一线程为运行所述目标应用所用的线程;创建第二线程,所述第一线程与所述第二线程为不同的线程;通过所述第二线程将所述性能数据发送至所述服务器。

【技术实现步骤摘要】
一种性能数据发送方法、装置、计算机设备及存储介质
本申请涉及埋点追踪领域,尤其涉及一种性能数据发送方法、装置、计算机设备及存储介质。
技术介绍
随着安卓(android)智能操作系统的发展,装载于终端设备上的应用(如游戏、视频等应用)越来越多,终端设备包括智能手机、平板电脑等。由于应用的开发问题,应用与终端设备的兼容问题等,应用在终端上运行时,往往会存在性能缺陷。为利于应用的改进、提升应用的运行流畅度,应用在终端上运行时,往往需要收集应用运行时相应的等性能数据,如应用程序的冷/热启动时间,应用程序某个页面的打开时间等,通过收集的性能数据为应用的性能缺陷分析和应用改进提供数据支持。传统的性能数据收集方式中,是通过私有云的方式进行收集,然而,由于用户的终端设备在运行某个应用时可能同时并行使用其它多个应用,在私有云上收集的终端使用的某个应用的性能数据并不能反映终端使用该某应用时的真实性能。因此可得,传统方案获取的性能数据,并不全面,使得数据分析的准确性较低。
技术实现思路
基于此,本申请提供一种性能数据发送方法、装置、计算机设备及存储介质,用于解决获取的性能数据并不全面,使得数据分析的准确性较低的问题。一种性能数据发送方法,包括:根据用户指令运行目标应用,目标应用的组件生命周期的方法中预设有数据埋点,组件为目标应用对应的程序的基本构建块,数据埋点为在组件的生命周期的方法中嵌入的代码或脚本;当目标应用运行过程中触发到数据埋点时,通过第一线程确定数据埋点对应的性能数据收集项目;通过第一线程获取性能数据收集项目对应的性能数据,其中,第一线程为运行目标应用所用的线程;创建第二线程,第一线程与第二线程为不同的线程;通过第二线程将性能数据发送至服务器。一种性能数据发送装置,包括:运行模块,用于根据用户指令运行目标应用,目标应用的组件生命周期的方法中预设有数据埋点,目标应用的组件为目标应用对应的程序的基本构建块,数据埋点为在组件的生命周期的方法中嵌入的代码或脚本;确定模块,用于当目标应用运行过程中触发到数据埋点时,通过第一线程确定数据埋点对应的性能数据收集项目;获取模块,用于通过第一线程获取性能数据收集项目对应的性能数据,其中,第一线程为运行目标应用所用的线程;创建模块,用于创建第二线程,第一线程与第二线程为不同的线程;发送模块,用于通过第二线程将性能数据发送至服务器。一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述性能数据发送方法的步骤。一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述性能数据发送方法的步骤。由此可得,在上述性能数据发送方法、装置、计算机设备及存储介质所提供的方案中,在应用执行过程中,触发到上述预设的数据埋点即可获取数据埋点对应的性能数据并反馈给服务器。由于是嵌入在组件生命周期中的数据埋点,不会占用到额外的运算资源并且收集过程中,用户几乎是无感知的,另一方面可自定义获取所需的性能数据,有效地获取到所需的性能数据,获取的性能数据比较全面,从而分析的准确性得以提高。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本申请中性能数据发送方法一个系统框架示意图;图2是本申请中性能数据发送方法一个实施例流程示意图;图3是本申请中性能数据发送方法另一实施例流程示意图;图4是本申请中性能数据发送方法另一实施例流程示意图;图5是本申请中性能数据发送方法另一实施例流程示意图;图6是本申请中性能数据发送装置一个实施例结构示意图;图7是本申请中性能数据处理系统一个实施例结构示意图;图8是本申请中计算机设备的一个实施例结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请提供了一种性能数据发送方法,应用于如图1所示的系统框架图中,该系统框架中包括终端设备以及服务器,其中,终端设备通过网络与服务器进行通信。上述性能数据发送方法包括如下步骤:根据用户指令运行目标应用,目标应用的组件生命周期的方法中预设有数据埋点;当目标应用运行过程中触发到数据埋点时,根据数据埋点确定性能数据收集项目;获取性能数据收集项目对应的性能数据;将性能数据发送至服务器,以使服务器对性能数据进行分析处理。这样,在应用执行过程中,触发到上述数据埋点即可获取数据埋点对应的性能数据并反馈给服务器。由于是嵌入在组件生命周期中的数据埋点,不会占用到额外的运算资源并且收集过程中,用户几乎是无感知的,另一方面可自定义获取所需的性能数据,有效地获取到所需的性能数据,最后分析所用的应用性能数据比较全面,使得分析的准确性得以提高。其中,终端设备可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等,具体不做限定,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现,在一些应用场景中,服务器具体指的是具有大数据分析能力的大数据平台。下面对本申请提供的性能数据发送方法进行详细描述,包括如下步骤:S10、根据用户指令运行目标应用,目标应用的组件生命周期的方法中预设有数据埋点;可以理解,当用户通过终端设备需要使用某个应用(application,app)时,可以根据用户的操作开启并允许该应用,例如用户通过点击应用的图标进入该应用从而使得终端设备运行该应用,也就是终端设备可以接收用户预设操作产生的指令运行应用。而目标应用指的是本申请中需进行性能数据获取并分析的应用。需要说明的是,本申请中所指的目标应用,是指基于安卓(android)所开发的应用程序,其中,目标应用的组件是一个安卓应用程序的基本构建块。目标应用中的每个组件都是一个终端设备的操作系统可以进入该目标应用的不同的入口。每一个目标应用的组件都是一个独特的构建块,可以帮助定义应用程序的整体行为。通常,目标应用有不同类型的组件,每种类型都有不同的用途,并且有一个独立的生命周期,组件的生命周期定义了组件是如何创建和销毁的。通常目标应用的组件包括用户界面(UI),也称为activity组件、还包括服务(service)组件、广播接收器(broadcastreceiver)组件、内容提供者(contentprovider)组件。在本申请中,目标应用的组件生命周期的方法中预设有数据埋点,其中,数据埋点指的是在上述目标应用的组件生命周期的方法中嵌入的一段脚本或代码。为了便于理解上述目标应用的组件以及组件的生命周期的含义,这里以activity组件为例展开进一步的描述:一个activity组件可以表示带有用户界面的单个页面。例如,一个电子邮件应用程序可能有一个activity组件用来显示一个新邮件列表,一个写电子邮件的activity组件,以本文档来自技高网...

【技术保护点】
1.一种性能数据发送方法,应用于终端设备,其特征在于,包括:根据用户指令运行目标应用,所述目标应用的组件生命周期的方法中预设有数据埋点,所述组件为所述目标应用对应的程序的基本构建块,所述数据埋点为在所述组件的生命周期的方法中嵌入的代码或脚本;当所述目标应用运行过程中触发到所述数据埋点时,通过第一线程确定所述数据埋点对应的性能数据收集项目;通过所述第一线程获取所述性能数据收集项目对应的性能数据,其中,所述第一线程为运行所述目标应用所用的线程;创建第二线程,所述第一线程与所述第二线程为不同的线程;通过所述第二线程将所述性能数据发送至服务器。

【技术特征摘要】
1.一种性能数据发送方法,应用于终端设备,其特征在于,包括:根据用户指令运行目标应用,所述目标应用的组件生命周期的方法中预设有数据埋点,所述组件为所述目标应用对应的程序的基本构建块,所述数据埋点为在所述组件的生命周期的方法中嵌入的代码或脚本;当所述目标应用运行过程中触发到所述数据埋点时,通过第一线程确定所述数据埋点对应的性能数据收集项目;通过所述第一线程获取所述性能数据收集项目对应的性能数据,其中,所述第一线程为运行所述目标应用所用的线程;创建第二线程,所述第一线程与所述第二线程为不同的线程;通过所述第二线程将所述性能数据发送至服务器。2.如权利要求1所述的性能数据发送方法,其特征在于,所述通过所述第一线程获取所述性能数据收集项目对应的性能数据之后,所述方法还包括:通过所述第一线程确定所述性能数据的数据类型;通过所述第一线程,将所述性能数据分配至所述数据类型对应的数据对象集合中,其中,不同的数据类型的性能数据分配在不同的数据对象集合中,不同的数据对象集合具有不同的优先级等级;所述通过所述第二线程将所述性能数据发送至服务器,包括:通过所述第二线程确定所述数据对象集合的优先级等级;通过所述第二线程,按照所述优先级等级从大到小的顺序确定所述不同的数据对象集合的发送顺序;通过所述第二线程,依据所述发送顺序依次将所述不同的数据对象集合的性能数据发送至所述服务器。3.如权利要求2所述的性能数据发送方法,其特征在于,不同数据类型对应的所述数据对象集合预设有不同的发送间隔;在将所述数据对象集合的性能数据发送至所述服务器时,按照所述数据对象集合预设的发送间隔进行发送。4.如权利要求1所述的性能数据发送方法,其特征在于,所述通过所述第二线程,依据所述发送顺序依次将所述不同的数据对象集合的性能数据发送至服务器,包括:通过所述第二线程对所述数据对象集合中的数据进行压缩并加密;通过所述第二线程,依据所述发送顺序依次将所述不同的数据对象集合经过所述压缩并加密的所述性能数据发送至所述服务器。5.如权利要求1所述的性能数据发送方法,其特征在于,所述通过所述第一线程获取所述性能数据收集项目对应的性能数据之前,所述方法还包括:创建性能数据获取对象以及应用程序运行对象,所述性能数据获取对象以及所述应用程序发送对象装载在所述终端设备中,所述性能数据获取对象与所述应用程序运行对象在第一线程的不同进程中,所述性能数据...

【专利技术属性】
技术研发人员:卢裕如刘淼魏晓娟刘婷甄坡
申请(专利权)人:平安证券股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1