本发明涉及网络信息技术领域,具体是一种针对在线分布式系统的跟踪查错方法。
背景技术:
现有技术通常会传输大量日志,这会对在线分布式系统尤其是性能延迟要求高的场景会造成不少的性能损耗。在线分布式系统对外提供各种业务服务,由于具有请求流量大,内部处理流程复杂等特征,使得软件开发人员在排查软件错误,调试程序时有很大的麻烦。
现有技术通常基于应用程序的日志多级别输出以及依赖一些大数据传输和处理分析系统如elasticsearch。
技术实现要素:
本发明的目的在于提供一种针对在线分布式系统的跟踪查错方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种针对在线分布式系统的跟踪查错方法,包含以下步骤:
a、定义跟踪流量的特征;
b、业务端跟踪管理模块进行业务跟踪;
c、业务调试日志输出;
d、跟踪管理系统对日志进行处理。
作为本发明的进一步技术方案:所述步骤a定义的特征用来标识满足何种条件的流量系统需要跟踪,例如:业务id集合、某业务指标超过设定阈值、采样率。
作为本发明的进一步技术方案:所述步骤b具体是:1)业务端跟踪管理模块接收外部设置的特征实例,将特征实例添加到特征实例集合中;2)业务端跟踪管理模块基于提供的特征和指标,对已经设置好的特征实例集合进行逐一匹配,匹配成功即标识流量为需要跟踪的流量。
作为本发明的进一步技术方案:所述步骤c具体是:对打上标识的流量,输出详细处理逻辑到缓冲区,并发送到外部日志队列系统。
作为本发明的进一步技术方案:所述步骤d具体是:1)实现接收webclient进行配置或修改特征实例,并调用业务系统的跟踪管理接口进行添加或修改;2)实现日志队列消费和处理,将日志从队列中消费并整理;3)实现日志推送到web端的订阅客户。
作为本发明的进一步技术方案:所述业务端跟踪模块对内提供接口1允许外部系统注册要跟踪的流量特征描述,同时将这些流量特征描述的集合进行管理。
作为本发明的进一步技术方案:所述业务端跟踪模块对内提供接口2用于判断一个流量是否匹配已经注册好的特征描述。
作为本发明的进一步技术方案:所述业务端跟踪模块对内提供接口3用于收集不同业务模块想要输出的详细调试日志信息。
作为本发明的进一步技术方案:所述业务端跟踪模块会将这些调试日志信息输出到外部的日志队列中。
作为本发明的进一步技术方案:所述跟踪管理系统提供接口5用于获取相对应特征描述的实时产生的调试日志信息。
与现有技术相比,本发明的有益效果是:本发明针对在线分布式系统的跟踪查错方法由于提供特征注册和匹配机制,按实际需要进行输出,解决了传统方法上传输量大的缺点。
附图说明
图1是本发明的原理图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:请参阅图1,一种针对在线分布式系统的跟踪查错方法,包括:
步骤a.定义跟踪流量的特征,用来标识满足何种条件的流量系统需要跟踪。举例:业务id集合,某业务指标超过设定阈值,采样率等。
步骤b.实现业务端跟踪管理模块。
步骤b1.业务端跟踪管理模块接收外部设置的特征实例,将特征实例添加到特征实例集合中。
步骤b2.业务端跟踪管理模块基于提供的特征和指标,对已经设置好的特征实例集合进行逐一匹配,匹配成功即标识流量为需要跟踪的流量。
步骤c.实现业务调试日志输出。对打上标识的流量,输出详细处理逻辑到缓冲区,并发送到外部日志队列系统。
步骤d.实现跟踪管理系统。
步骤d1.实现接收webclient进行配置或修改特征实例,并调用业务系统的跟踪管理接口进行添加或修改。
步骤d2.实现日志队列消费和处理,将日志从队列中消费并整理。
步骤d3.实现日志推送到web端的订阅客户。
实施例2:在实施例1的基础上:本发明系统如图1所示,其中:
业务端跟踪模块对内提供接口1允许外部系统注册要跟踪的流量特征描述,同时将这些流量特征描述的集合进行管理;
业务端跟踪模块对内提供接口2用于判断一个流量是否匹配已经注册好的特征描述;
业务端跟踪模块对内提供接口3用于收集不同业务模块想要输出的详细调试日志信息;
业务端跟踪模块会将这些调试日志信息输出到外部的日志队列中;
跟踪管理系统对外提供接口4用于组合管理特征描述的集合,并将这些特征描述通过接口1注册到业务端系统;
跟踪管理系统提供接口5用于获取相对应特征描述的实时产生的调试日志信息。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
1.一种针对在线分布式系统的跟踪查错方法,其特征在于,包含以下步骤:
a、定义跟踪流量的特征;
b、业务端跟踪模块进行业务跟踪;
c、业务调试日志输出;
d、跟踪管理系统对日志进行处理。
2.根据权利要求1所述的一种针对在线分布式系统的跟踪查错方法,其特征在于,所述步骤a定义的特征用来标识满足何种条件的流量系统需要跟踪,例如:业务id集合、某业务指标超过设定阈值、采样率。
3.根据权利要求1所述的一种针对在线分布式系统的跟踪查错方法,其特征在于,所述步骤b具体是:1)业务端跟踪管理模块接收外部设置的特征实例,将特征实例添加到特征实例集合中;2)业务端跟踪管理模块基于提供的特征和指标,对已经设置好的特征实例集合进行逐一匹配,匹配成功即标识流量为需要跟踪的流量。
4.根据权利要求1所述的一种针对在线分布式系统的跟踪查错方法,其特征在于,所述步骤c具体是:对打上标识的流量,输出详细处理逻辑到缓冲区,并发送到外部日志队列系统。
5.根据权利要求1所述的一种针对在线分布式系统的跟踪查错方法,其特征在于,所述步骤d具体是:1)实现接收webclient进行配置或修改特征实例,并调用业务系统的跟踪管理接口进行添加或修改;2)实现日志队列消费和处理,将日志从队列中消费并整理;3)实现日志推送到web端的订阅客户。
6.根据权利要求1所述的一种针对在线分布式系统的跟踪查错方法,其特征在于,所述业务端跟踪模块对内提供接口1允许外部系统注册要跟踪的流量特征描述,同时将这些流量特征描述的集合进行管理。
7.根据权利要求1所述的一种针对在线分布式系统的跟踪查错方法,其特征在于,所述业务端跟踪模块对内提供接口2用于判断一个流量是否匹配已经注册好的特征描述。
8.根据权利要求1所述的一种针对在线分布式系统的跟踪查错方法,其特征在于,所述业务端跟踪模块对内提供接口3用于收集不同业务模块想要输出的详细调试日志信息。
9.根据权利要求1所述的一种针对在线分布式系统的跟踪查错方法,其特征在于,所述业务端跟踪模块会将这些调试日志信息输出到外部的日志队列中。
10.根据权利要求1所述的一种针对在线分布式系统的跟踪查错方法,其特征在于,所述跟踪管理系统提供接口5用于获取相对应特征描述的实时产生的调试日志信息。