The invention discloses a method for collecting service data, a device for collecting service data, and a system for collecting service data. The method comprises the following steps: acquiring updated business data acquisition function code; according to the updated business data acquisition function code, the corresponding code update is running a business process, in order to achieve the business data acquisition function. This method can not interrupt business system services, at any time in accordance with the needs of the business, free data relevant to the business of collecting and monitoring, not only can increase the search business system fault point means to solve the problems and improve the efficiency of business system, and to further enhance the user experience effect.
【技术实现步骤摘要】
本申请涉及数据采集领域,具体涉及一种用于采集业务数据的方法和装置。本申请还涉及一种用于采集业务数据的系统。
技术介绍
业务数据采集和监控是对业务系统进行性能优化、或故障查找时普遍需要用到的技术手段。当由于故障或设计缺陷导致业务失败或性能低下时,业务数据的采集和监控能够帮助业务人员快速定位问题的位置,从而尽快解决问题,提高业务系统性能,改善用户体验。现有的业务数据的采集监控通常依赖于业务系统开始运行前预先设计的业务数据采集监控方案,业务数据采集监控的数据源通常是采用硬编码方式预先设定的输出数据或数据库数据等。采用上述数据采集监控方案的业务系统投入运行后,如果由于运行前设计时无法预知的原因导致业务的故障甚至失败、或性能不能达到预期时,则无法设置新的数据采集位置,也无法对没有包含在现有业务数据采集方案内的其他数据进行采集,也就无从发现导致故障、失败或性能达不到预期的原因。在这种情况下,如果想要对数据采集位置进行变更或对采集的数据进行变更,则需要中断业务、并对业务系统的代码进行修改,例如,调整采集业务数据的位置或调整采集的业务数据,修改完毕再重新启动整个系统的运行。显然,现有的业务数据采集方式,在数据采集需求发生变更时,处理效率低下,而且通常无法保证业务的连续性,影响用户的使用体验。申请内容本申请提供一种用于采集业务数据的方法,以解决现有技术在数据采集需求发生变更时,处理效率低下、无法保证业务的连续性、影响用户的使用体验的问题。此外,本申请还提供一种用于采集业务数据的装置、以及一种用于采集业务数据的系统。本申请提供的一种用于采集业务数据的方法,包括以下步骤:获取 ...
【技术保护点】
一种用于采集业务数据的方法,其特征在于,包括以下步骤:获取更新了业务数据采集功能的代码;根据所述更新了业务数据采集功能的代码,更新正在运行的业务程序的相应代码,以实现所述业务数据采集功能。
【技术特征摘要】
1.一种用于采集业务数据的方法,其特征在于,包括以下步骤:获取更新了业务数据采集功能的代码;根据所述更新了业务数据采集功能的代码,更新正在运行的业务程序的相应代码,以实现所述业务数据采集功能。2.根据权利要求1所述的用于采集业务数据的方法,其特征在于,所述获取更新了业务数据采集功能的代码,包括:按照设定的时间间隔从配置服务器下载所述代码;或者,接收配置服务器推送的所述代码。3.根据权利要求1所述的用于采集业务数据的方法,其特征在于,所述业务数据采集功能包括,采集所述业务程序中的预设方法的以下原始业务数据之一或者任意组合:入口参数值、返回值、抛出的异常。4.根据权利要求3所述的用于采集业务数据的方法,其特征在于,所述业务数据采集功能还包括:根据采集到的原始业务数据采用预设算法生成数据采集结果。5.根据权利要求1所述的用于采集业务数据的方法,其特征在于,所述根据所述更新了业务数据采集功能的代码,更新正在运行的业务程序的相应代码,以实现所述业务数据采集功能包括:与所述正在运行的业务程序建立通信通道;通过所述通信通道执行所述更新操作。6.根据权利要求5所述的用于采集业务数据的方法,其特征在于,所述正在运行的业务程序是采用Java编写的;所述与所述正在运行的业务程序建立通信通道包括:利用JVM提供的attach功能,建立所述通信通道;所述通过所述通信通道执行所述更新操作,包括:利用JVMTI提供的instrument机制,执行所述更新操作。7.根据权利要求5所述的用于采集业务数据的方法,其特征在于,所述正在运行的业务程序是采用Java编写的,所述更新了业务数据采集功能的代码包括:更新了业务数据采集功能的Java类文件;所述通过所述通信通道执行所述更新操作,包括:用所述Java类文件所包
\t含的类替换所述正在运行的业务程序的相应Java类。8.根据权利要求5所述的用于采集业务数据的方法,其特征在于,所述正在运行的业务程序是采用Java编写的,所述更新了业务数据采集功能的代码包括:更新了业务数据采集功能的Java源代码;所述根据所述更新了业务数据采集功能的代码,更新正在运行的业务程序的相应代码以实现所述业务数据采集功能还包括:根据所述Java源代码生成Java类文件;所述通过所述通信通道执行所述更新操作,包括:用所述生成的Java类文件所包含的类替换所述正在运行的业务程序的相应Java类。9.根据权利要求8所述的用于采集业务数据的方法,其特征在于,所述根据所述Java源代码生成Java类文件包括:利用groovy脚本将所述Java源代码编译成Java类文件。10.根据权利要求1所述的用于采集业务数据的方法,其特征在于,还包括以下步骤:获取更新指令;所述根据所述更新了业务数据采集功能的代码,更新正在运行的业务程序的相应代码,以实现所述业务数据采集功能包括:按照更新指令的指示,根据所述更新了业务数据采集功能的代码,更新正在运行的业务程序的相应代码,以实现所述业务数据采集功能。11.根据权利要求10所述的用于采集业务数据的方法,其特征在于,所述更新指令包括:待更新的正在运行的业务程序的相应代码的标识。12.根据权利要求10所述的用于采集业务数据的方法,其特征在于,所述更新指令包括:预设的更新时间。13.根据权利要求1-12任一项所述的用于采集业务数据的方法,其特征在于,所述方法在提供物流服务的节点上实施,所述提供物流服务的节点包括:创建订单节点、发货节点、揽收节点、或者签收节点。...
【专利技术属性】
技术研发人员:钟豪,王维,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛;KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。