全链路日志的生成方法及相关系统技术方案

技术编号:20824837 阅读:25 留言:0更新日期:2019-04-10 07:14
本申请提供了一种全链路日志的生成方法及相关系统,其中,全链路日志的生成方法中,在接收到调用请求后,先判断所述调用请求对应的服务是否属于被监控的服务;在判断出所述调用请求对应的服务属于所述被监控的服务,才在所述调用请求对应的服务被调用后,生成链路日志,解决了针对任意一种请求而调用服务时,均生成链路日志导致增加了不必要的链路日志的问题。

【技术实现步骤摘要】
全链路日志的生成方法及相关系统
本申请涉及数据处理
,尤其涉及一种全链路日志的生成方法及相关系统。
技术介绍
针对请求方发送的请求,一般需要通过多个节点执行多个服务的调用。由请求方开始直至多个节点之间所构成的调用链路则可称之为全链路。全链路日志则用于记录每一个服务被节点所调用的状态。目前,实现全链路日志的生成过程,一般是通过修改调用服务的程序,让服务在被调用后生成并传递对应的链路日志。然而,修改调用服务的程序,意味着针对任意一种请求而调用该服务时,均需要生成链路日志,这会增加许多不必要的链路日志。
技术实现思路
基于上述现有技术的不足,本申请提出一种全链路日志的生成方法及相关系统,以解决针对任意一种请求而调用服务时,均生成链路日志导致增加了不必要的链路日志的问题。为解决上述问题,现提出的方案如下:一种全链路日志的生成方法,包括:接收调用请求,其中,所述调用请求用于调用服务;判断所述调用请求对应的服务是否属于被监控的服务;若判断出所述调用请求对应的服务属于所述被监控的服务,则在所述调用请求对应的服务被调用后,生成链路日志。可选地,在上述方法中,所述判断所述调用请求对应的服务,是否属于被监控的服务,包括:获取预设构建的名单,其中,所述名单包括黑名单和白名单的至少一个;其中,所述黑名单用于存储无需监控的服务信息,所述白名单用于存储需要监控的服务信息;将所述调用请求对应的服务与所述名单中的服务信息进行匹配;若所述调用请求对应的服务与所述黑名单中的服务信息不匹配,和/或,所述调用请求对应的服务与所述白名单中的服务信息相匹配,则判断出所述调用请求对应的服务属于所述被监控的服务。可选地,在上述方法中,所述名单包括黑名单,且所述黑名单包括容器级名单和程序级名单;其中,所述容器级名单包括多种服务类型信息,所述程序级名单包括服务的调用方法;所述将所述调用请求对应的服务与所述名单中的服务信息进行匹配,包括:确定出所述调用请求对应的服务的类型信息和调用的方法名;将所述确定出的服务的类型信息与所述黑名单中的容器级名单进行匹配,且将所述确定出的服务调用的方法名与所述黑名单中程序级名单进行匹配;若所述确定出的服务的类型信息不属于所述黑名单中的容器级名单,且所述确定出的类型信息不属于所述黑名单中程序级名单,则判断出所述调用请求对应的服务属于所述被监控的服务。可选地,在上述方法中,所述名单包括白名单,且所述白名单包括容器级名单和程序级名单;其中,所述容器级名单包括多种服务类型信息,所述程序级名单包括服务的调用方法;所述将所述调用请求对应的服务与所述名单中的服务信息进行匹配,包括:确定出所述调用请求对应的服务的类型信息和调用的方法名;将所述确定出的服务的类型信息与所述白名单中的容器级名单进行匹配,且将所述确定出的服务调用的方法名与所述白名单中程序级名单进行匹配;其中,若所述确定出的服务的类型信息属于所述白名单中的容器级名单,且所述确定出的类型信息属于所述白名单中程序级名单,则判断出所述调用请求对应的服务属于所述被监控的服务。可选地,在上述方法中,所述名单包括黑名单和白名单,且所述白名单包括容器级名单和程序级名单,所述黑名单包括容器级名单和程序级名单;其中,所述容器级名单包括多种服务类型信息,所述程序级名单包括服务的调用方法;所述将所述调用请求对应的服务与所述名单中的服务信息进行匹配,包括:确定出所述调用请求对应的服务的类型信息和调用的方法名;将所述确定出的服务的类型信息,分别与所述白名单的容器级名单和所述黑名单的容器级名单进行匹配,且将所述确定出的服务调用的方法名,分别与所述白名单的程序级名单和所述黑名单的程序级名单进行匹配;其中,若所述确定出的服务的类型信息属于所述白名单的容器级名单、且不属于所述黑名单的容器级名单,所述确定出的服务调用的方法名属于所述白名单的程序级名单,且不属于所述黑名单的容器级名单,则判断出所述调用请求对应的服务属于所述被监控的服务。可选地,在上述方法中,生成链路日志后,还包括:获取所述调用请求中的事务ID以及服务调用链序号;更新所述服务调用链序号;依据所述事务ID和所述更新后的服务调用链序号生成调用请求,并向下一服务传输。可选地,在上述方法中,还包括:判断出获取不到所述调用请求中的事务ID以及服务调用链序号,则创建唯一的事务ID并设置服务调用链序号为初始值。一种全链路日志的生成装置,包括:接收单元,用于接收调用请求,其中,所述调用请求用于调用服务;判断单元,用于判断所述调用请求对应的服务是否属于被监控的服务;生成单元,用于所述判断单元若判断出所述调用请求对应的服务属于所述被监控的服务,则在所述调用请求对应的服务被调用后,生成链路日志。可选地,在上述装置中,所述判断单元,包括:第一获取单元,用于获取预设构建的名单,其中,所述名单包括黑名单和白名单的至少一个;其中,所述黑名单用于存储无需监控的服务信息,所述白名单用于存储需要监控的服务信息;匹配单元,用于将所述调用请求对应的服务与所述名单中的服务信息进行匹配;若所述调用请求对应的服务与所述黑名单中的服务信息不匹配,和/或,所述调用请求对应的服务与所述白名单中的服务信息相匹配,则判断出所述调用请求对应的服务属于所述被监控的服务。可选地,在上述装置中,所述名单包括黑名单和白名单,且所述白名单包括容器级名单和程序级名单,所述黑名单包括容器级名单和程序级名单;其中,所述容器级名单包括多种服务类型信息,所述程序级名单包括服务的调用方法;所述匹配单元,包括:确定单元,用于确定出所述调用请求对应的服务的类型信息和调用的方法名;匹配子单元,用于将所述确定出的服务的类型信息,分别与所述白名单的容器级名单和所述黑名单的容器级名单进行匹配,且将所述确定出的服务调用的方法名,分别与所述白名单的程序级名单和所述黑名单的程序级名单进行匹配;其中,若所述确定出的服务的类型信息属于所述白名单的容器级名单、且不属于所述黑名单的容器级名单,所述确定出的服务调用的方法名属于所述白名单的程序级名单,且不属于所述黑名单的容器级名单,则判断出所述调用请求对应的服务属于所述被监控的服务。一种电子设备,包括:存储器和处理器;其中,所述存储器同于存储计算机指令;所述处理器用于执行所述存储器存储的计算机指令,具体执行上述中任意一项所述的全链路日志的生成方法。一种存储介质,用于存储程序,所述程序被执行时,用于实现上述任意一项所述的全链路日志的生成方法。本申请提供的全链路日志的生成方法中,在接收到调用请求后,先判断所述调用请求对应的服务是否属于被监控的服务;在判断出所述调用请求对应的服务属于所述被监控的服务,才在所述调用请求对应的服务被调用后,生成链路日志,解决了针对任意一种请求而调用服务时,均生成链路日志导致增加了不必要的链路日志的问题。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请实施例公开的一种全链路日志的生成方法的流程图;图2为本申请另一实施例公开的步骤S102的一种实施方式本文档来自技高网...

【技术保护点】
1.一种全链路日志的生成方法,其特征在于,包括:接收调用请求,其中,所述调用请求用于调用服务;判断所述调用请求对应的服务是否属于被监控的服务;若判断出所述调用请求对应的服务属于所述被监控的服务,则在所述调用请求对应的服务被调用后,生成链路日志。

【技术特征摘要】
1.一种全链路日志的生成方法,其特征在于,包括:接收调用请求,其中,所述调用请求用于调用服务;判断所述调用请求对应的服务是否属于被监控的服务;若判断出所述调用请求对应的服务属于所述被监控的服务,则在所述调用请求对应的服务被调用后,生成链路日志。2.根据权利要求1所述的方法,其特征在于,所述判断所述调用请求对应的服务,是否属于被监控的服务,包括:获取预设构建的名单,其中,所述名单包括黑名单和白名单的至少一个;其中,所述黑名单用于存储无需监控的服务信息,所述白名单用于存储需要监控的服务信息;将所述调用请求对应的服务与所述名单中的服务信息进行匹配;若所述调用请求对应的服务与所述黑名单中的服务信息不匹配,和/或,所述调用请求对应的服务与所述白名单中的服务信息相匹配,则判断出所述调用请求对应的服务属于所述被监控的服务。3.根据权利要求2所述的方法,其特征在于,所述名单包括黑名单,且所述黑名单包括容器级名单和程序级名单;其中,所述容器级名单包括多种服务类型信息,所述程序级名单包括服务的调用方法;所述将所述调用请求对应的服务与所述名单中的服务信息进行匹配,包括:确定出所述调用请求对应的服务的类型信息和调用的方法名;将所述确定出的服务的类型信息与所述黑名单中的容器级名单进行匹配,且将所述确定出的服务调用的方法名与所述黑名单中程序级名单进行匹配;若所述确定出的服务的类型信息不属于所述黑名单中的容器级名单,且所述确定出的类型信息不属于所述黑名单中程序级名单,则判断出所述调用请求对应的服务属于所述被监控的服务。4.根据权利要求2所述的方法,其特征在于,所述名单包括白名单,且所述白名单包括容器级名单和程序级名单;其中,所述容器级名单包括多种服务类型信息,所述程序级名单包括服务的调用方法;所述将所述调用请求对应的服务与所述名单中的服务信息进行匹配,包括:确定出所述调用请求对应的服务的类型信息和调用的方法名;将所述确定出的服务的类型信息与所述白名单中的容器级名单进行匹配,且将所述确定出的服务调用的方法名与所述白名单中程序级名单进行匹配;其中,若所述确定出的服务的类型信息属于所述白名单中的容器级名单,且所述确定出的类型信息属于所述...

【专利技术属性】
技术研发人员:陈哲林金曙金基东卢长松陈华华蒋志伟张奇明
申请(专利权)人:恒生电子股份有限公司
类型:发明
国别省市:浙江,33

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

1