数据监测及针对应用程序的处理方法、装置及设备制造方法及图纸

技术编号:24572850 阅读:31 留言:0更新日期:2020-06-20 23:58
本申请公开了一种数据监测方法,包括:获取针对应用程序调用的预设类的第一加载指令;获取针对代理程序的第二加载指令;其中,所述代理程序包含被所述应用程序调用的代理类;按照所述第二加载指令,缓存所述代理类的类数据;根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象;使用所述预设类的类对象提供的功能,对所述待监测数据进行监测。降低了应用程序中既使用代理程序的通用组件进行数据监测,又调用开发包的代码实现数据监测,可能导致类冲突的风险。

Data monitoring and application specific processing methods, devices and equipment

【技术实现步骤摘要】
数据监测及针对应用程序的处理方法、装置及设备
本申请涉及互联网
,具体涉及一种数据监测方法、装置、电子设备及存储设备。本申请同时涉及针对应用程序的处理方法及装置。
技术介绍
随着互联网的应用越来越多,数据监测对于各行业都非常重要,例如,数据监测是维护网站及应用程序的可用性的重要手段。数据监测技术也称为埋点,是指针对特定事件或者数据进行监测的技术。现有的数据监测技术,一般通过代理程序(Agent)提供的通用组件进行数据监测,或者,通过监测工具提供的开发包(以下简称开发包,即SoftwareDevelopmentKit,英文缩写为SDK)来实现监测代码进行数据监测。但是,如果同时使用代理程序的通用组件以及调用开发包的代码实现数据监测,由于同为实现数据监测功能,因此容易出现在代理程序中和开发包中包含相同类的风险,从而导致类冲突。因此,如何降低同时使用代理程序的通用组件以及调用开发包的代码实现数据监测带来的类冲突风险是需要解决的问题。
技术实现思路
本申请提供一种数据监测方法,以降低应用程序中既使用代理程序的通用组件进行数据监测,又调用开发包的代码实现数据监测,可能导致类冲突的风险。本申请提供一种数据监测方法,包括:获取针对应用程序调用的预设类的第一加载指令;其中,所述应用程序用于提供待监测数据;获取针对代理程序的第二加载指令;其中,所述代理程序包含被所述应用程序调用的代理类;按照所述第二加载指令,缓存所述代理类的类数据;根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象;使用所述预设类的类对象提供的功能,对所述待监测数据进行监测。可选的,所述根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象,包括:根据所述第一加载指令,获取所述预设类的类名和所述缓存的代理类的类名;如果所述缓存的代理类的类名与所述预设类的类名相同,则使用所述缓存的代理类的类数据,生成所述预设类的类对象。可选的,所述使用所述预设类的类对象提供的功能,对所述待监测数据进行监测,包括:使用所述预设类的类对象提供的功能,监测由所述应用程序处理的业务逻辑的数据,或者,监测所述应用程序的运行时信息。可选的,所述代理程序包含用于对所述待监测数据进行监测的通用监测类;所述预设类的类名与所述通用监测类的类名相同;所述使用所述预设类的类对象提供的功能,对所述待监测数据进行监测,包括:通过所述通用监测类的功能对所述待监测数据进行监测。可选的,所述预设类,为不包含业务功能实现代码的空实现类。可选的,所述代理程序,还包括功能类,所述功能类包含用于提供预定功能的实现代码;所述代理类用于关联所述开发包的空实现类和所述代理程序的功能类;所述根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象,包括:根据所述第一加载指令,获取到所述空实现类的类名;根据所述空实现类的类名,确定缓存的代理类的类数据;根据所述代理类的类数据,关联到所述功能类,生成用于提供预定功能的类对象;将所述提供预定功能的类对象,作为所述预设类的类对象。可选的,所述按照所述第二加载指令,缓存所述代理类的类数据,包括:按照所述第二加载指令,利用Java虚拟机字节码管理机制缓存所述代理类的类数据。可选的,所述方法还包括:接收针对所述应用程序的启动指令;所述获取针对代理程序的第二加载指令,包括:根据所述启动指令确定所述代理程序的加载路径;按照所述加载路径生成所述第二加载指令。可选的,所述获取针对代理程序的第二加载指令,包括:在所述应用程序运行过程中,接收用于加载所述代理程序的第二加载指令;所述按照所述第二加载指令,缓存所述代理类的类数据,包括:根据第二加载指令,加载所述代理程序,缓存所述代理程序的代理类的类数据。本申请还提供一种数据监测装置,包括:第一加载指令获取单元,用于获取针对应用程序调用的预设类的第一加载指令;其中,所述应用程序用于提供待监测数据;第二加载指令确定单元,用于获取针对代理程序的第二加载指令;其中,所述代理程序包含被所述应用程序调用的代理类;缓存单元,用于按照所述第二加载指令,缓存所述代理类的类数据;类对象生成单元,用于根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象;监测单元,用于使用所述预设类的类对象提供的功能,对所述待监测数据进行监测。本申请还提供一种电子设备,包括:存储器,以及处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:获取针对应用程序调用的预设类的第一加载指令;其中,所述应用程序用于提供待监测数据;获取针对代理程序的第二加载指令;其中,所述代理程序包含被所述应用程序调用的代理类;按照所述第二加载指令,缓存所述代理类的类数据;根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象;使用所述预设类的类对象提供的功能,对所述待监测数据进行监测。本申请还提供一种存储设备,存储有指令,所述指令能够被处理器加载并执行以下步骤:获取针对应用程序调用的预设类的第一加载指令;其中,所述应用程序用于提供待监测数据;获取针对代理程序的第二加载指令;其中,所述代理程序包含被所述应用程序调用的代理类;按照所述第二加载指令,缓存所述代理类的类数据;根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象;使用所述预设类的类对象提供的功能,对所述待监测数据进行监测。本申请还提供一种针对应用程序的处理方法,包括:获取针对应用程序调用的预设类的第一加载指令;获取针对代理程序的第二加载指令;其中,所述代理程序包含被所述应用程序调用的代理类;按照所述第二加载指令,缓存所述代理类;根据所述第一加载指令,获取缓存的代理类的信息,使用所述缓存的代理类的信息,生成所述预设类的类对象;使用所述类对象,获得所述应用程序的业务功能。本申请还提供一种针对应用程序的处理方法,包括:接收针对开发包的导入触发;其中,所述开发包包含空实现类,所述空实现类为不包含业务功能实现代码的类;接收针对代理程序的导入触发;其中,所述代理程序包含功能类,所述功能类包含预定功能实现代码;根据所述开发包的空实现类和所述代理程序的功能类,生成用于提供业务功能的应用程序。可选的,所述代理程序,还包括:用于关联所述开发包和所述代理程序的代理类,其中,所述代理类的类名与所述空实现类的类名相同;所述根据所述开发包的空实现类和所述代理程序的功能类,生成用于提供业务功能的应用程序,包括:接收调用所述空实现类的触发;通过与所述空实现类的类名相同的代理类,关联到所述功能类,生成用本文档来自技高网...

【技术保护点】
1.一种数据监测方法,其特征在于,包括:/n获取针对应用程序调用的预设类的第一加载指令;其中,所述应用程序用于提供待监测数据;/n获取针对代理程序的第二加载指令;其中,所述代理程序包含被所述应用程序调用的代理类;/n按照所述第二加载指令,缓存所述代理类的类数据;/n根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象;/n使用所述预设类的类对象提供的功能,对所述待监测数据进行监测。/n

【技术特征摘要】
1.一种数据监测方法,其特征在于,包括:
获取针对应用程序调用的预设类的第一加载指令;其中,所述应用程序用于提供待监测数据;
获取针对代理程序的第二加载指令;其中,所述代理程序包含被所述应用程序调用的代理类;
按照所述第二加载指令,缓存所述代理类的类数据;
根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象;
使用所述预设类的类对象提供的功能,对所述待监测数据进行监测。


2.根据权利要求1所述的方法,其特征在于,所述根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象,包括:
根据所述第一加载指令,获取所述预设类的类名和所述缓存的代理类的类名;
如果所述缓存的代理类的类名与所述预设类的类名相同,则使用所述缓存的代理类的类数据,生成所述预设类的类对象。


3.根据权利要求2所述的方法,其特征在于,所述使用所述预设类的类对象提供的功能,对所述待监测数据进行监测,包括:
使用所述预设类的类对象提供的功能,监测由所述应用程序处理的业务逻辑的数据,或者,监测所述应用程序的运行时信息。


4.根据权利要求2所述的方法,其特征在于,所述代理程序包含用于对所述待监测数据进行监测的通用监测类;所述预设类的类名与所述通用监测类的类名相同;所述使用所述预设类的类对象提供的功能,对所述待监测数据进行监测,包括:通过所述通用监测类的功能对所述待监测数据进行监测。


5.根据权利要求1所述的方法,其特征在于,所述预设类,为不包含业务功能实现代码的空实现类。


6.根据权利要求5所述的方法,其特征在于,所述代理程序,还包括功能类,所述功能类包含用于提供预定功能的实现代码;所述代理类用于关联所述开发包的空实现类和所述代理程序的功能类;
所述根据所述第一加载指令,使用缓存的代理类的类数据,生成所述预设类的类对象,包括:
根据所述第一加载指令,获取到所述空实现类的类名;
根据所述空实现类的类名,确定缓存的代理类的类数据;
根据所述代理类的类数据,关联到所述功能类,生成用于提供预定功能的类对象;
将所述提供预定功能的类对象,作为所述预设类的类对象。


7.根据权利要求1所述的方法,其特征在于,所述按照所述第二加载指令,缓存所述代理类的类数据,包括:
按照所述第二加载指令,利用Java虚拟机字节码管理机制缓存所述代理类的类数据。


8.根据权利要求7所述的方法,其特征在于,还包括:
接收针对所述应用程序的启动指令;
所述获取针对代理程序的第二加载指令,包括:
根据所述启动指令确定所述代理程序的加载路径;
按照所述加载路径生成所述第二加载指令。


9.根据权利要求1所述的方法,其特征在于,所述获取针对代理程序的第二加载指令,包括:在所述应用程序运行过程中,接收用于加载所述代理程序的第二加载指令;
所述按照所述第二加载指令,缓存所述代理类的类数据,包括:
根据第二加载指令,加载所述代理程序,缓存所述代理程序的代理类的类数据。


10.一种数据监测装置,其特征在于,包括:
第一加载指令获取单元,用于获取针对应用程序调用的预设类的第一加载指令;其中,所述应用程序用于提供待监测数据;
第二加载指令确定单元,用于获取针对代理程序的第二加载...

【专利技术属性】
技术研发人员:肖长军
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

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

1