1.一种确定服务间依赖关系的方法,其特征在于,应用于业务系统,所述业务系统部署了全链路监控系统jaeger,所述方法包括:通过全链路监控系统jaeger获取调用接口时的追踪信息span;
将所述追踪信息span传入分布式消息队列kafka中;
消费所述分布式消息队列kafka中的每个追踪信息span,得到每个span对应的服务和父span,以及确定所述父span对应的服务;
根据所述每个span对应的服务和所述父span对应的服务得到每个span所代表的服务间调用依赖关系。
2.根据权利要求1所述的方法,其特征在于,所述业务系统部署了辅助系统,所述辅助系统包括所述分布式消息队列kafka和计算组件;所述消费所述分布式消息队列kafka中的每个追踪信息span,得到每个span对应的服务和父span,以及确定所述父span对应的服务,包括:通过所述计算组件消费所述分布式消息队列kafka中的每个追踪信息span,得到每个span对应的服务和父span,以及确定所述父span对应的服务。
3.根据权利要求2所述的方法,其特征在于,还包括:
通过所述jaeger基于所述span生成每个span所代表的服务间调用依赖关系。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述每个span对应的服务和所述父span对应的服务,得到每个span所代表的服务间调用依赖关系,包括:判断第一span中是否存在跟踪类别spanKind字段,其中,所述第一span为消费的所述分布式消息队列kafka中的任意一个span;
根据判断结果基于所述第一span对应的服务和所述父span对应的服务生成所述第一span代表的服务间调用依赖关系。
5.根据权利要求4所述的方法,其特征在于,所述根据判断结果基于所述第一span对应的服务和所述父span对应的服务生成所述第一span代表的服务间调用依赖关系,包括:若第一span中不存在spanKind字段,则更新所有以第一span的spanID为上一次请求的追踪标识parentID的span依赖关系信息;
若第一span中存在spanKind字段,并且spanKind字段为客户client,则更新与第一span的spanID相同、且spanKind为主机server的span依赖关系信息;
若第一span中存在spanKind字段,并且spanKind字段为server,则更新所有以第一span的spanID为parentID的span依赖关系信息。
6.根据权利要求5所述的方法,其特征在于,所述根据判断结果基于所述第一span对应的服务和所述父span对应的服务生成所述第一span代表的服务间调用依赖关系之后,还包括:将第一span的spanID放入最近最最少使用LRU淘汰算法的循环队列中,并且将该第一span放入固定淘汰时间的缓存中;
定时从所述循环队列中取出spanID,当取到所述第一span的spanID时,判断所述第一span在所述固定淘汰时间的缓存中是否过期;
若过期,则结束对所述第一span的依赖关系的计算处理。
7.根据权利要求1-3任一项所述的方法,其特征在于,调用接口时的追踪信息包括接口调用请求的全局追踪标识traceID、当前的追踪标识spanID、服务名、接口名、调用耗时中的一项或多项。
8.一种确定服务间依赖关系的装置,其特征在于,应用于业务系统,所述业务系统部署了全链路监控系统jaeger,所述装置包括:获取模块,用于通过全链路监控系统jaeger获取调用接口时的追踪信息span;
传输模块,用于将所述追踪信息span传入分布式消息队列kafka中;
消费模块,用于消费所述分布式消息队列kafka中的每个追踪信息span,得到每个span对应的服务和父span,以及确定所述父span对应的服务;
生成模块,用于根据所述每个span对应的服务和所述父span对应的服务得到每个span所代表的服务间调用依赖关系。
9.一种电子设备,其特征在于,所述电子设备包括处理器、存储器、通信接口以及一个或多个计算机程序,其中,所述一个或多个计算机程序被存储在所述存储器中,并且被配置由所述处理器执行,所述计算机程序被所述处理器执行时,实现权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,其在处理器上运行时,实现权利要求1-7任意一项所述的方法。