【技术实现步骤摘要】
一种服务链路追踪虚拟机的方法
本专利技术涉及服务链路开发
,特别涉及一种服务链路追踪虚拟机的方法。
技术介绍
微服务、分布式和异步消息通讯是云计算发展的技术特征。近几年来,云计算整合的资源种类、服务分化逐渐增多,一个请求往往需要多个服务、多个组件协作完成。请求所产生的消息经过多个节点,监控并追踪一个请求的详细情况,需要花费不少的人力和时间;并且对运维人员的技能有一定的要求。将服务链路应用到云平台上,能知道请求经过的各个组件,适合快速定位问题,不仅有利于大规模请求下的根因定位,也方便了云平台请求的统计和监控。在云平台中,虚拟机是主要的、基本的资源。将服务链路应用到云平台上,只能追踪到节点agent等应用程序,不能追踪到实际的目标对象——虚拟机。运维人员仍需要根据请求内容、节点agent日志、libvirt日志等进行定位,服务链路的统计也无法将虚拟机归纳在内。
技术实现思路
本专利技术解决的技术问题在于提供一种服务链路追踪虚拟机的方法,实现通过服务链路追踪虚拟机。本专利技术解决上 ...
【技术保护点】
1.一种服务链路追踪虚拟机的方法,其特征在于:所述的方法是对libvirt操作的前后进行切入,将应用程序对虚拟机的操作及应用程序与虚拟机之间的串口通信纳入服务链路的监控范围,统一采集数据。/n
【技术特征摘要】
1.一种服务链路追踪虚拟机的方法,其特征在于:所述的方法是对libvirt操作的前后进行切入,将应用程序对虚拟机的操作及应用程序与虚拟机之间的串口通信纳入服务链路的监控范围,统一采集数据。
2.根据权利要求1所述的方法,其特征在于:所述的方法包括如下步骤:
S1、对节点agent调用libvirt操作的方法,在方法执行前进行切入,解析得到虚拟机标识、执行命令和执行参数;
S2、根据服务链路信息、虚拟机标识、执行命令和执行参数,创建span信息;
S3、对节点agent调用libvirt操作的方法,在方法执行后进行切入,获取操作的返回信息;
S4、判断操作是同步还是异步,若为异步操作,则定时查询操作结果;否则将返回信息作为执行结果;
S5、根据执行结果,对span信息进行补充,然后将span信息发送给服务链路系统。
3.根据权利要求2所述的方法,其特征在于:所述的解析得到虚拟机标识、执行命令和执行参数,具体包括:
1)对调用libvirt操作的参数进行解析,得到虚拟机标识、执行命令和执行参数;
2)若虚拟机标识为空,则不进行后续步骤;
3)若执行命令为qemu-agent-command,则对执行参数进行进一步解析,得到属性execute和arguments;
4)将执行命令替换为属性execute的值,将执行参数替换为属性arguments的值;
5)若执行命令为guest-exec-status,则不进行后续步骤。
4.根据权利要求2所述的方法,其特征在于:所述的服务链路信息从服务链路上下文中获取;若服务链路上下文为空,则创建一个新的服务链路上下文,再从新创建的服务链路上下文中获取服务链路信息。
5.根据权利要求2所述的方法,其特征在于:所述的创建span信息包括:
1)从服务链路信息中获取traceId,设置为...
【专利技术属性】
技术研发人员:陈海钊,季统凯,
申请(专利权)人:国云科技股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。