CN113132143B - 服务调用追踪方法及相关产品 - Google Patents

服务调用追踪方法及相关产品 Download PDF

Info

Publication number
CN113132143B
CN113132143B CN201911418649.4A CN201911418649A CN113132143B CN 113132143 B CN113132143 B CN 113132143B CN 201911418649 A CN201911418649 A CN 201911418649A CN 113132143 B CN113132143 B CN 113132143B
Authority
CN
China
Prior art keywords
service
call
application running
information
calling
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911418649.4A
Other languages
English (en)
Other versions
CN113132143A (zh
Inventor
莫中平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Intellifusion Technologies Co Ltd
Original Assignee
Shenzhen Intellifusion Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Intellifusion Technologies Co Ltd filed Critical Shenzhen Intellifusion Technologies Co Ltd
Priority to CN201911418649.4A priority Critical patent/CN113132143B/zh
Publication of CN113132143A publication Critical patent/CN113132143A/zh
Application granted granted Critical
Publication of CN113132143B publication Critical patent/CN113132143B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例提供了一种服务调用追踪方法及相关产品,该方法包括:存储服务器接收应用服务器发送的调用链路信息和应用运行日志,将调用链路信息和应用运行日志进行持久化保存;将应用运行日志传输至数据库服务器,指示数据库服务器将应用运行日志进行持久化保存;通过展示平台对应用运行日志进行展示;通过调用链监控进程对调用链路信息进行分析,得到目标业务请求的服务调用信息,并将服务调用信息传输至数据库服务器,通过展示平台对服务调用信息进行展示,如此,可能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。

Description

服务调用追踪方法及相关产品
技术领域
本申请涉及通信技术领域,具体涉及一种服务调用追踪方法及相关产品。
背景技术
随着微服务体系的越来越大,服务之间的调用关系非常复杂,当出现性能问题时无法确定该次异常发生在哪个服务调用,也无法确定该次调用是哪个服务调用耗时较多。而在我们定位到故障或者耗时的服务或组件之后,我们也无法很便捷的将日志和对应服务关联起来,因此,如何能够快速的定位服务调用过程中的故障、性能和日志的问题需要解决。
发明内容
本申请实施例提供了一种服务调用追踪方法及相关产品,能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。
本申请实施例第一方面提供了一种服务调用追踪方法,应用于服务调用追踪系统中的存储服务器,所述服务调用追踪系统还包括应用服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述方法包括:
接收所述应用服务器发送的调用链路信息和应用运行日志,所述调用链路信息为所述应用服务器进行服务调用产生的调用链路信息,所述应用运行日志为所述应用服务器在运行过程中产生的运行记录;
将所述调用链路信息和所述应用运行日志进行持久化保存;
通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示;
通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示。
本申请实施例第二方面提供了一种服务调用追踪方法,应用于服务调用追踪系统中的应用服务器,所述服务调用追踪系统还包括存储服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述方法包括:
向所述存储服务器发送调用链路信息和应用运行日志,所述调用链路信息为所述应用集群进行服务调用产生的调用链路信息,所述应用运行日志为所述应用集群在运行过程中产生的运行记录,以指示所述存储服务器执行以下操作:将所述调用链路信息和所述应用运行日志进行持久化保存;通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示;通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示。
本申请实施例第三方面提供了一种服务调用追踪方法,应用于服务调用追踪系统中的展示平台,所述服务调用追踪系统还包括存储服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述方法包括:
接收所述数据库服务器发送的服务调用信息和应用运行日志;其中,所述应用运行日志和所述服务调用信息是由所述应用服务器向所述存储服务器发送调用链路信息和应用运行日志,并由所述存储服务器所述调用链路信息和所述应用运行日志进行持久化保存;通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器进行持久化保存的应用运行日志;通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器进行持久化保存的服务调用信息;
将所述服务调用信息和所述应用运行日志进行展示。
本申请实施例第四方面提供了一种存储服务器,应用于服务调用追踪系统,所述服务调用追踪系统还包括应用服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,其中,所述存储服务器包括:
接收单元,用于接收所述应用服务器发送的调用链路信息和应用运行日志,所述调用链路信息为所述应用服务器进行服务调用产生的调用链路信息,所述应用运行日志为所述应用服务器在运行过程中产生的运行记录;
保存单元,用于将所述调用链路信息和所述应用运行日志进行持久化保存;
传输单元,用于通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示;
分析单元,用于通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息;
所述传输单元,还用于将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示。
本申请实施例第五方面提供了一种应用服务器,应用于服务调用追踪系统中的应用服务器,所述服务调用追踪系统还包括存储服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述应用服务器包括:
存储单元,用于存储调用链路信息和应用运行日志;
发送单元,用于向所述存储服务器发送调用链路信息和应用运行日志,所述调用链路信息为所述应用集群进行服务调用产生的调用链路信息,所述应用运行日志为所述应用集群在运行过程中产生的运行记录,以指示所述存储服务器执行以下操作:将所述调用链路信息和所述应用运行日志进行持久化保存;通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示;通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示。
本申请实施例第六方面提供了一种展示平台,应用于服务调用追踪系统中的展示平台,所述服务调用追踪系统还包括存储服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述展示平台包括:
接收单元,用于接收所述数据库服务器发送的服务调用信息和应用运行日志;其中,所述应用运行日志和所述服务调用信息是由所述应用服务器向所述存储服务器发送调用链路信息和应用运行日志,并由所述存储服务器所述调用链路信息和所述应用运行日志进行持久化保存;通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器进行持久化保存的应用运行日志;通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器进行持久化保存的服务调用信息;
展示单元,将所述服务调用信息和所述应用运行日志进行展示。
本申请第七方面提供了一种计算机可读存储介质,其中,所述计算机可读存储介质用于存储计算机程序,其中,所述计算机程序使得计算机执行如本申请实施例第一方面、第二方面或第三方面中所描述的部分或全部步骤的指令。
本申请第八方面提供了一种计算机程序产品,其中,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如本申请实施例第一方面、第二方面或第三方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请实施例,具有如下有益效果:
可以看出,通过本申请实施例所描述的服务调用追踪方法及相关产品,应用于服务调用追踪系统中的存储服务器,服务调用追踪系统还包括应用服务器、数据库服务器和展示平台,应用服务器、数据库服务器和展示平台与存储服务器进行连接,通过存储服务器接收应用服务器发送的调用链路信息和应用运行日志,将调用链路信息和应用运行日志进行持久化保存;通过日志管理进程将应用运行日志传输至数据库服务器,并指示数据库服务器将应用运行日志进行持久化保存;并由数据库服务器将应用运行日志发送至展示平台,以指示展示平台对应用运行日志进行展示;通过调用链监控进程对调用链路信息进行分析,得到目标业务请求的服务调用信息,并将服务调用信息传输至数据库服务器,并指示数据库服务器将服务调用信息进行持久化保存;并由数据库服务器将服务调用信息发送至展示平台,以指示展示平台对服务调用信息进行展示,如此,可能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A是本申请实施例提供的一种服务调用追踪系统的系统架构图;
图1B是本申请实施例提供的另一种服务调用追踪系统的系统架构图;
图2是本申请实施例提供的一种服务调用追踪方法的实施例流程示意图;
图3是本申请实施例提供的另一种服务调用追踪方法的实施例流程示意图;
图4是本申请实施例提供的又一种服务调用追踪方法的实施例流程示意图;
图5是本申请实施例提供的又一种服务调用追踪方法的实施例流程示意图;
图6是本申请实施例提供的一种存储服务器600的结构示意图;
图7是本申请实施例提供的一种应用服务器700的结构示意图;
图8是本申请实施例提供的一种展示平台800的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了便于更好的理解本申请所描述的技术方案,下面对本申请实施例所涉及的技术术语进行解释:
集群,是指同一个业务,部署在多个服务器上,不同的服务器运行同样的代码。
应用集群,指定由并行应用程序的节点或成员节点组成的应用程序集群。
Kafka集群,Kafka是一种高吞吐量的分布式发布订阅消息系统,用于处理消费者在网站中的所有动作流数据。
日志搜集进程:是对本地文件的日志数据进行采集的进程。
Logstash进程,是一个开源的日志收集管理工具,本方案中,用于对上述日志搜集进程手机的日志数据进行管理。
Zipkin Server进程,是开源的应用性能管理工具,可以用于微服务的调用链监控。
ES集群,是指ElasticSearch数据库集群,ElasticSearch是一个基于Lucene引擎的搜索服务器,提供一个分布式多用户能力的全文搜索引擎。
Span数据结构,是描述服务间调用关系的一种数据结构,它包含一次调用过程中的起始时间,结束时间,调用接口,服务名称等信息。
请参阅图1A,为本申请实施例提供的一种服务调用追踪系统的系统架构图。本实施例中所描述的服务调用追踪系统,可包括多个服务器,如图1A所示,具体可包括多个存储服务器100、多个应用服务器200、多个数据库服务器300和展示平台400;其中,多个存储服务器100可构成存储服务器集群,多个应用服务器200可构成应用集群,多个数据库服务器300可构成数据库集群。
其中,存储服务器集群可以是Kafka集群,通过Kafka集群中的多个存储服务器完成相同的任务,应用集群中的多个应用服务器可完成相同的任务,数据库集群可以是ElasticSearch数据库集群,ElasticSearch数据库集群中的多个数据库服务器可完成相同的任务。
请参阅图1B,为本申请实施例提供的另一种服务调用追踪系统的系统架构图。本实施例中所描述的服务调用追踪系统,可包括应用集群、Kafka集群、ES集群和分析展示平台,Kafka集群可包括Logstash进程和Zipkin Server进程;其中,
所述应用集群,用于向所述Kafka集群发送调用链路信息和应用运行日志,所述调用链路信息为所述应用集群进行服务调用产生的调用链路信息,所述应用运行日志为所述应用集群在运行过程中产生的运行记录;
所述Kafka集群,用于将所述调用链路信息和所述应用运行日志进行持久化保存;
所述Logstash进程,用于将所述应用运行日志从所述Kafka集群传输至所述ES集群,并指示所述ES集群将所述应用运行日志进行持久化保存;
所述Zipkin Server进程,用于从所述Kafka集群获取所述调用链路信息,对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述ES集群,并指示所述ES集群将所述服务调用信息持久化保存至所述ES集群;
所述展示平台,用于接收所述ES集群发送的所述服务调用信息和所述应用运行日志,将所述服务调用信息和所述应用运行日志进行展示。
其中,上述应用集群可包括以下多个应用:java服务器、大数据服务器、搜索服务器、数据库服务器以及日志搜集进程等等。
其中,多个应用,用于向所述Kafka集群发送所述调用链路信息;
所述日志搜集进程,用于收集所述应用集群的应用运行日志,并向所述Kafka集群发送所述应用运行日志。
可选地,在所述向所述Kafka集群发送所述调用链路信息方面,所述多个应用具体用于以Span数据结构方式发送所述调用链路信息至所述Kafka集群。
可选地,在所述对所述调用链路信息进行分析,得到目标业务请求的服务调用信息方面,所述Zipkin Server进程具体用于:
通过调用服务的服务身份信息ID将所述调用链路信息中属于一个调用服务的调用链的多个Span数据结构进行关联,得到所述目标业务请求的多个调用服务对应的多个调用关系,每一所述调用关系对应一个所述调用服务;
确定所述多个调用服务的调用次数;
确定所述多个调用服务中每一调用服务的调用耗时,得到多个调用耗时。
可选地,在所述通过所述展示平台将所述服务调用关系和所述应用运行日志进行展示方面,展示平台具体用于:
将所述服务调用关系展示在第一网页,以及将所述应用运行日志展示在第二网页,所述第一网页和所述第二网页均包括所述目标业务请求的目标链路身份信息ID。
可选地,展示平台还用于:
接收针对所述第一网页中关于所述目标业务请求的查看请求;
若所述服务调用信息存在异常信息,根据所述第一页面中的所述目标链路ID查找所述第二网页中的所述应用运行日志;并跳转至展示所述应用运行日志的所述第二网页。
可选地,在所述将所述应用运行日志展示在第二网页方面,展示平台还具体用于:
获取展示条件参数;
根据所述展示条件参数确定所述应用运行日志中的目标应用运行日志,所述目标应用运行日志为所述应用运行日志中的全部或部分运行日志;
将所述目标应用运行日志展示在所述第二网页。
可以看出,通过本申请实施例所描述的服务调用追踪系统,通过应用集群向Kafka集群发送调用链路信息和应用运行日志,Kafka集群将调用链路信息和应用运行日志进行持久化保存;Logstash进程将应用运行日志从Kafka集群传输至ES集群,并指示ES集群将应用运行日志进行持久化保存,Zipkin Server进程从Kafka集群获取调用链路信息,对调用链路信息进行分析,得到目标业务请求的服务调用信息,并将服务调用信息传输至ES集群,并指示ES集群将服务调用信息持久化保存至ES集群;展示平台将服务调用信息和应用运行日志进行展示,如此,可能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。
请参阅图2,为本申请实施例提供的一种服务调用追踪方法的实施例的流程示意图。本实施例中所描述的服务调用追踪方法,应用于服务调用追踪系统中的存储服务器,所述服务调用追踪系统还包括应用服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,该方法包括以下步骤:
201、接收所述应用服务器发送的调用链路信息和应用运行日志,所述调用链路信息为所述应用服务器进行服务调用产生的调用链路信息,所述应用运行日志为所述应用服务器在运行过程中产生的运行记录。
其中,上述应用服务器可包括以下任意一种:java应用服务器、大数据服务器、搜索服务器、数据库服务器、日志搜集进程器等等,此处不做限制。
其中,调用链路信息至少可包括以下信息:每一次调用过程中的起始时间,结束时间,调用接口,服务名称等信息。
具体地,当用户需要实现目标业务请求时,需要调用不同的多个应用服务器上的多个应用的服务,进行多个服务调用。被调用的服务还可能需要调用其他服务,因此,完成目标业务请求需要进行多次服务调用。服务之间通过协议进行调用访问,过程中还会访问数据库,服务调用的过程中会产生很多调用链路信息。另外应用服务器在运行过程中会产生许多应用运行日志,因此,可将调用链路信息和应用运行日志发送至存储服务器,由存储服务器对调用链路信息和应用运行日志发送进行管理,因此,存储服务器可接收应用服务器发送的调用链路信息和应用运行日志,其中,目标业务请求可以是任一业务请求,例如,目标业务请求可以是登录某一账号的业务请求,搜索某一关键词的业务请求,此处不作限定。
202、将所述调用链路信息和所述应用运行日志进行持久化保存。
本申请实施例中,存储服务器可用于将调用链路信息和应用运行日志进行持久化保存,从而能够对数据量庞大的调用链路信息和应用运行日志进行管理。具体地,存储服务器可包括Kafka系统,Kafka系统是一种高吞吐量的分布式发布订阅消息系统,用于处理消费者在网站中的所有动作流数据,从而,可通过Kafka系统将调用链路信息和应用运行日志进行持久化保存。
203、通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示。
其中,上述日志管理进程用于对上述日志搜集进程手机的日志数据进行管理,具体地,日志管理进程可将应用运行日志从存储服务器传输至数据库服务器,并指示数据库服务器将应用运行日志进行持久化保存。
其中,上述日志管理进程可以是Logstash进程,Logstash进程是一个开源的日志收集管理工具,本方案中,Logstash进程用于对上述日志搜集进程手机的日志数据进行管理,具体地,Logstash进程可将应用运行日志从存储服务器传输至数据库服务器,并指示数据库服务器将应用运行日志进行持久化保存。
204、通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示。
其中,调用链监控进程可用于从存储服务器获取调用链路信息,对调用链路信息进行分析,得到目标业务请求的服务调用信息,并将服务调用信息传输至数据库服务器,并指示数据库服务器将服务调用信息持久化保存至数据库服务器。
其中,服务调用信息可包括以下至少一种:目标业务请求的多个调用服务中每一调用服务的调用关系、多个调用服务的调用次数、每一调用服务的调用耗时等等。
其中,对调用链路信息进行分析,得到目标业务请求的服务调用信息,可确定获取的调用链路信息中,各个服务之间的调用关系,从而将属于同一次服务调用的调用链路信息进行关联,以及,将属于同一业务请求的多个服务调用的调用链路信息进行关联。
其中,上述调用链监控进程可以是Zipkin Server进程,Zipkin Server进程是开源的应用性能管理工具,可以用于微服务的调用链监控。在本申请实施例中,ZipkinServer进程可用于从存储服务器获取调用链路信息,对调用链路信息进行分析,得到目标业务请求的服务调用信息,并将服务调用信息传输至数据库服务器,并指示数据库服务器将服务调用信息持久化保存至数据库服务器。
可选地,上述步骤204中,所述通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,可包括以下步骤:
41、通过所述调用链监控进程调用服务的服务身份信息ID将所述调用链路信息中属于一个调用服务的调用链的多个预设数据结构进行关联,得到所述目标业务请求的多个调用服务对应的多个调用关系,每一所述调用关系对应一个所述调用服务;
42、确定所述多个调用服务的调用次数;
43、确定所述多个调用服务中每一调用服务的调用耗时,得到多个调用耗时。
其中,上述预设数据结构可以是Span数据结构,Span数据结构,是描述服务间调用关系的一种数据结构,可用于描述服务间调用关系,上述获取的调用链路信息中,每一调用链路信息均包括该调用链路信息所属的调用服务的服务身份信息ID,因此,可将属于同一次调用服务的多个调用链路信息通过该服务身份信息ID进行关联,得到该次服务调用的调用关系。
其中,可根据调用链路信息中每一次调用服务的起始时间和结束时间确定每一次调用服务的调用耗时。
其中,每一调用链路信息还包括该调用链路信息所属的目标业务请求的目标链路ID,从而,可通过目标链路ID将属于同一业务请求的多个调用服务进行关联。进而,可确定多个调用服务对应的多个调用关系,以及确定所述多个调用服务的调用次数。
其中,展示平台可包括第一网页和第二网页,其中,第一网页可用于对服务调用信息进行展示,第二网页可用于对应用运行日志进行展示。从而,可使开发人员能够根据展示的服务调用信息查看服务间的调用关系,确定存在调用故障的调用服务,以及,确定耗时较长的调用服务等等,以及根据应用运行日志对异常的链路调用进行分析。
可以看出,通过本申请实施例所描述的服务调用追踪方法,通过存储服务器接收应用服务器发送的调用链路信息和应用运行日志,将调用链路信息和应用运行日志进行持久化保存;通过日志管理进程将应用运行日志传输至数据库服务器,并指示数据库服务器将应用运行日志进行持久化保存;并由数据库服务器将应用运行日志发送至展示平台,以指示展示平台对应用运行日志进行展示;通过调用链监控进程对调用链路信息进行分析,得到目标业务请求的服务调用信息,并将服务调用信息传输至数据库服务器,并指示数据库服务器将服务调用信息进行持久化保存;并由数据库服务器将服务调用信息发送至展示平台,以指示展示平台对服务调用信息进行展示,如此,可能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。
与上述一致地,请参阅图3,为本申请实施例提供的一种服务调用追踪方法的实施例流程示意图。本实施例中所描述的服务调用追踪方法,应用于服务调用追踪系统中的应用服务器,所述服务调用追踪系统还包括存储服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,该方法包括以下步骤:
301、向存储服务器发送调用链路信息和应用运行日志,所述调用链路信息为所述应用集群进行服务调用产生的调用链路信息,所述应用运行日志为所述应用集群在运行过程中产生的运行记录,以指示所述存储服务器执行以下操作:将所述调用链路信息和所述应用运行日志进行持久化保存;通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示;通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示。
其中,上述应用服务器可包括以下任意一种:java应用服务器、大数据服务器、搜索服务器、数据库服务器、日志搜集进程器等等,此处不做限制。
其中,调用链路信息至少可包括以下信息:每一次调用过程中的起始时间,结束时间,调用接口,服务名称等信息。
具体地,当用户需要实现目标业务请求时,需要调用不同的多个应用服务器上的多个应用的服务,进行多个服务调用。被调用的服务还可能需要调用其他服务,因此,完成目标业务请求需要进行多次服务调用。服务之间通过协议进行调用访问,过程中还会访问数据库,服务调用的过程中会产生很多调用链路信息。另外应用服务器在运行过程中会产生许多应用运行日志,因此,可将调用链路信息和应用运行日志发送至存储服务器,由存储服务器对调用链路信息和应用运行日志发送进行管理。
可选地,所述应用服务器用于运行多个应用和日志搜集进程,上述步骤301中,向所述存储服务器发送调用链路信息和应用运行日志,可包括以下步骤:
11、通过所述多个应用向所述存储服务器发送所述调用链路信息;
12、通过所述日志搜集进程收集所述多个应用的应用运行日志,并向所述存储服务器发送所述应用运行日志。
其中,可通过日志搜集进程收集应用服务器的应用运行日志,然后,将收集的应用运行日志发送至存储服务器。具体地,日志搜集进程收集应用服务器的应用运行日志,可根据每一次调用服务的服务身份信息ID将属于同一次调用服务的应用运行日志进行收集,此外,可通过目标业务请求的目标链路ID将属于同一目标业务请求的多个调用服务的应用运行日志进行收集,其中,每一次调用产生的不同应用运行日志中均携带目标业务请求的目标链路ID和该次调用服务的服务身份信息ID,进而,可通过目标业务请求的目标链路ID和该次调用服务的服务身份信息ID将属于同一目标业务请求的多个调用服务的应用运行日志都进行收集,得到目标业务请求的所有应用运行日志。
其中,日志搜集进程可以是Filebeat进程,Filebeat进程是对本地文件的日志数据进行采集的进程,因此,可通过Filebeat进程收集应用集群的应用运行日志,然后,将收集的应用运行日志发送至存储服务器。具体地,Filebeat进程收集应用服务器的应用运行日志,可根据每一次调用服务的服务身份信息ID将属于同一次调用服务的应用运行日志进行收集,此外,可通过目标业务请求的目标链路ID将属于同一目标业务请求的多个调用服务的应用运行日志进行收集,其中,每一次调用产生的不同应用运行日志中均携带目标业务请求的目标链路ID和该次调用服务的服务身份信息ID,进而,可通过目标业务请求的目标链路ID和该次调用服务的服务身份信息ID将属于同一目标业务请求的多个调用服务的应用运行日志都进行收集,得到目标业务请求的所有应用运行日志。
可选地,上述步骤11中,通过所述多个应用向所述存储服务器发送所述调用链路信息,可包括以下步骤:
通过所述多个应用以预设数据结构的方式发送所述调用链路信息至所述存储服务器。
其中,上述预设数据结构用于描述服务间调用关系,预设数据结构可以是Span数据结构,Span数据结构是描述服务间调用关系的一种数据结构,它包含一次调用过程中的起始时间,结束时间,调用接口,服务名称等信息。例如,服务A调用服务B,可记录服务A调用服务B的起始时间,结束时间,调用接口和服务A、服务B的服务名称等信息,在一次服务调用过程中,可生成该次服务调用的服务身份信息ID,该服务身份信息ID会随着该次服务调用流程记录在每一调用环节,进而,可通过服务身份信息ID知道每一环节所属的调用服务。从而可产生进行多个服务调用的所有调用链路信息。进而,可将产生的包括服务身份信息ID的调用链路信息发送至存储服务器。
可以看出,本申请实施例所提供的服务调用追踪方法,通过向存储服务器发送调用链路信息和应用运行日志,以指示存储服务器执行以下操作:将调用链路信息和应用运行日志进行持久化保存;通过日志管理进程将应用运行日志传输至数据库服务器,并指示数据库服务器将应用运行日志进行持久化保存;并由数据库服务器将应用运行日志发送至展示平台,以指示展示平台对应用运行日志进行展示;通过调用链监控进程对调用链路信息进行分析,得到目标业务请求的服务调用信息,并将服务调用信息传输至所述数据库服务器,并指示数据库服务器将服务调用信息进行持久化保存;并由数据库服务器将服务调用信息发送至展示平台,以指示展示平台对服务调用信息进行展示,如此,可能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。
与上述一致地,请参阅图4,为本申请实施例提供的一种服务调用追踪方法的实施例流程示意图。本实施例中所描述的服务调用追踪方法,应用于服务调用追踪系统中的展示平台,所述服务调用追踪系统还包括存储服务器、数据库服务器和应用服务器,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,该方法包括以下步骤:
401、接收所述数据库服务器发送的服务调用信息和应用运行日志;其中,所述应用运行日志和所述服务调用信息是由所述应用服务器向所述存储服务器发送调用链路信息和应用运行日志,并由所述存储服务器所述调用链路信息和所述应用运行日志进行持久化保存;通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器进行持久化保存的应用运行日志;通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器进行持久化保存的服务调用信息。
402、将所述服务调用信息和所述应用运行日志进行展示。
其中,展示平台可包括第一网页和第二网页,其中,第一网页可用于对服务调用信息进行展示,第二网页可用于对应用运行日志进行展示。从而,可使开发人员能够根据展示的服务调用信息查看服务间的调用关系,确定存在调用故障的调用服务,以及,确定耗时较长的调用服务等等,以及根据应用运行日志对异常的链路调用进行分析。
可选地,上述步骤402中,将所述服务调用信息和所述应用运行日志进行展示,可包括以下步骤:
将所述服务调用关系展示在第一网页,以及将所述应用运行日志展示在第二网页,所述第一网页和所述第二网页均包括所述目标业务请求的目标链路身份信息ID。
其中,在第一网页对服务调用信息进行展示时,还可通过目标链路身份信息ID将第一网页与第二网页进行相互关联,即在查看第一网页时,可通过服务调用信息所属的目标业务请求的目标链路ID找到第二网页中与目标业务请求对应的应用运行日志。
可选地,上述步骤402之后,还可包括以下步骤:
A1、展示平台接收针对所述第一网页中关于所述目标业务请求的查看请求;
A2、若所述服务调用信息存在异常信息,根据所述第一页面中的所述目标链路ID查找所述第二网页中的所述应用运行日志;并跳转至展示所述应用运行日志的所述第二网页。
其中,上述异常信息可包括:目标业务请求的多个调用服务中存在的调用故障、调用耗时超过预设时长的调用服务等。
具体地,开发人员在查看第一网页时,可查看目标业务请求的服务调用信息中哪一调用服务存在调用故障,或者,查看哪一调用服务的调用耗时超过预设时长,若存在故障信息,可根据第一页面中服务调用信息对应的目标链路ID查找第二网页中与目标链路ID的业务请求对应的应用运行日志,跳转至展示应用运行日志的第二网页。从而,开发人员可快速查看目标业务请求的应用运行日志。
可选地,所述将所述应用运行日志展示在第二网页,可包括以下步骤:
B1、获取展示条件参数;
B2、根据所述展示条件参数确定所述应用运行日志中的目标应用运行日志,所述目标应用运行日志为所述应用运行日志中的全部或部分运行日志;
B3、将所述目标应用运行日志展示在所述第二网页。
其中,上述展示条件参数可包括以下任意一种:调用服务、时间范围、关键字等等,具体地,可根据调用服务展示该指定的调用服务有关的部分应用运行日志,可根据时间范围展示该指定时间范围内的目标业务请求的全部或部分应用运行日志,还可根据关键字展示包含该关键字的目标业务请求的全部或部分应用运行日志。
可以看出,通过本申请实施例所提供的服务调用追踪方法,通过接收数据库服务器发送的服务调用信息和应用运行日志;将所述服务调用信息和所述应用运行日志进行展示,如此,可能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。
与上述一致地,请参阅图5,为本申请实施例提供的一种服务调用追踪方法的实施例流程示意图。本实施例中所描述的服务调用追踪方法,应用于服务调用追踪系统,所述服务调用追踪系统包括应用服务器、存储服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,该方法包括以下步骤:
501、所述应用服务器向所述存储服务器发送调用链路信息和应用运行日志,所述调用链路信息为所述应用集群进行服务调用产生的调用链路信息,所述应用运行日志为所述应用集群在运行过程中产生的运行记录;
502、所述存储服务器将所述调用链路信息和所述应用运行日志进行持久化保存;
503、所述存储服务器通过日志管理进程将所述应用运行日志从所述存储服务器传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;
504、所述存储服务器通过调用链监控进程从所述存储服务器获取所述调用链路信息,对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息持久化保存至所述数据库服务器;
505、所述展示平台将所述服务调用信息和所述应用运行日志进行展示。
可以看出,本申请实施例所提供的服务调用追踪方法,通过应用服务器向存储服务器发送调用链路信息和应用运行日志,存储服务器将调用链路信息和应用运行日志进行持久化保存;存储服务器通过日志管理进程将应用运行日志从存储服务器传输至数据库服务器,并指示数据库服务器将应用运行日志进行持久化保存;存储服务器通过调用链监控进程从存储服务器获取调用链路信息,对调用链路信息进行分析,得到目标业务请求的服务调用信息,并将服务调用信息传输至数据库服务器,并指示数据库服务器将服务调用信息持久化保存至所述数据库服务器;展示平台将服务调用信息和应用运行日志进行展示,如此,可能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。
进一步的,请参见图6,是本申请实施例提供的一种存储服务器600的结构示意图。如图6所示,所述存储服务器600应用于服务调用追踪系统,所述服务调用追踪系统还包括应用服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述存储服务器600可以包括:第一接收单元601、保存单元602、传输单元603和分析单元604;其中,
所述第一接收单元601,用于接收所述应用服务器发送的调用链路信息和应用运行日志,所述调用链路信息为所述应用服务器进行服务调用产生的调用链路信息,所述应用运行日志为所述应用服务器在运行过程中产生的运行记录;所述保存单元602,用于将所述调用链路信息和所述应用运行日志进行持久化保存;所述传输单元603,用于通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示;所述分析单元604,用于通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息;所述传输单元603,还用于将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示。
可选地,所述分析单元604具体用于:通过所述调用链监控进程调用服务的服务身份信息ID将所述调用链路信息中属于一个调用服务的调用链的多个预设数据结构进行关联,得到所述目标业务请求的多个调用服务对应的多个调用关系,每一所述调用关系对应一个所述调用服务;确定所述多个调用服务的调用次数;确定所述多个调用服务中每一调用服务的调用耗时,得到多个调用耗时。
可以看出,通过本申请实施例所描述的存储服务器,通过存储服务器接收应用服务器发送的调用链路信息和应用运行日志,将调用链路信息和应用运行日志进行持久化保存;通过日志管理进程将应用运行日志传输至数据库服务器,并指示数据库服务器将应用运行日志进行持久化保存;并由数据库服务器将应用运行日志发送至展示平台,以指示展示平台对应用运行日志进行展示;通过调用链监控进程对调用链路信息进行分析,得到目标业务请求的服务调用信息,并将服务调用信息传输至数据库服务器,并指示数据库服务器将服务调用信息进行持久化保存;并由数据库服务器将服务调用信息发送至展示平台,以指示展示平台对服务调用信息进行展示,如此,可能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。
进一步的,请参见图7,是本申请实施例提供的一种应用服务器700的结构示意图。如图7所示,所述应用服务器700应用于服务调用追踪系统,所述服务调用追踪系统还包括存储服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述应用服务器700可以包括:存储单元701和发送单元702;其中,所述存储单元701,用于存储调用链路信息和应用运行日志;所述发送单元702,用于向所述存储服务器发送调用链路信息和应用运行日志,所述调用链路信息为所述应用集群进行服务调用产生的调用链路信息,所述应用运行日志为所述应用集群在运行过程中产生的运行记录,以指示所述存储服务器执行以下操作:将所述调用链路信息和所述应用运行日志进行持久化保存;通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示;通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示。
可选地,所述应用服务器用于运行多个应用和日志搜集进程,所述发送单元701具体用于:通过所述多个应用向所述存储服务器发送所述调用链路信息;通过所述日志搜集进程收集所述多个应用的应用运行日志,并向所述存储服务器发送所述应用运行日志。
可选地,在所述通过所述多个应用向所述存储服务器发送所述调用链路信息方面,所述发送单元701具体用于:通过所述多个应用以预设数据结构的方式发送所述调用链路信息至所述存储服务器。
可以看出,本申请实施例所提供的应用服务器,通过向存储服务器发送调用链路信息和应用运行日志,以指示存储服务器执行以下操作:将调用链路信息和应用运行日志进行持久化保存;通过日志管理进程将应用运行日志传输至数据库服务器,并指示数据库服务器将应用运行日志进行持久化保存;并由数据库服务器将应用运行日志发送至展示平台,以指示展示平台对应用运行日志进行展示;通过调用链监控进程对调用链路信息进行分析,得到目标业务请求的服务调用信息,并将服务调用信息传输至所述数据库服务器,并指示数据库服务器将服务调用信息进行持久化保存;并由数据库服务器将服务调用信息发送至展示平台,以指示展示平台对服务调用信息进行展示,如此,可能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。
进一步的,请参见图8,是本申请实施例提供的一种展示平台800的结构示意图。如图8所示,所述展示平台800应用于服务调用追踪系统,所述服务调用追踪系统还包括存储服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述展示平台800可以包括:第二接收单元801和展示单元802;其中,
所述第二接收单元801,用于接收所述数据库服务器发送的服务调用信息和应用运行日志;其中,所述应用运行日志和所述服务调用信息是由所述应用服务器向所述存储服务器发送调用链路信息和应用运行日志,并由所述存储服务器所述调用链路信息和所述应用运行日志进行持久化保存;通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器进行持久化保存的应用运行日志;通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器进行持久化保存的服务调用信息;
所述展示单元802,用于将所述服务调用信息和所述应用运行日志进行展示。
可选地,所述展示单元802具体用于:将所述服务调用信息展示在第一网页,以及将所述应用运行日志展示在第二网页,所述第一网页和所述第二网页均包括所述目标业务请求的目标链路身份信息ID。
可选地,所述第二接收单元801,还用于接收针对所述第一网页中关于所述目标业务请求的查看请求;所述展示单元802,还用于若所述服务调用信息存在异常信息,根据所述第一页面中的所述目标链路ID查找所述第二网页中的所述应用运行日志;并跳转至展示所述应用运行日志的所述第二网页。
可选地,在所述将所述应用运行日志展示在第二网页方面,所述展示单元802具体用于:获取展示条件参数;根据所述展示条件参数确定所述应用运行日志中的目标应用运行日志,所述目标应用运行日志为所述应用运行日志中的全部或部分运行日志;将所述目标应用运行日志展示在所述第二网页。
可以看出,通过本申请实施例所提供的展示平台,通过接收数据库服务器发送的服务调用信息和应用运行日志;将所述服务调用信息和所述应用运行日志进行展示,如此,可能够通过调用链路信息和应用运行日志实现对目标业务请求的服务调用中的故障、性能进行定位,并将服务调用信息和应用运行日志进行展示。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的任何一种服务调用追踪方法的部分或全部步骤。
本申请实施例提供一种计算机程序产品,其中,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如本申请实施例中记载的任何一种服务调用追踪方法所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
本领域技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机程序存储/分布在合适的介质中,与其它硬件一起提供或作为硬件的一部分,也可以采用其他分布形式,如通过Internet或其它有线或无线电信系统。
本申请是参照本申请实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程人车轨迹分析设备的处理器以产生一个机器,使得通过计算机或其他可编程人车轨迹分析设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程人车轨迹分析设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程人车轨迹分析设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

Claims (7)

1.一种服务调用追踪方法,其特征在于,应用于服务调用追踪系统中的存储服务器,所述服务调用追踪系统还包括应用服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述方法包括:
接收所述应用服务器发送的调用链路信息和应用运行日志,所述调用链路信息为所述应用服务器进行服务调用产生的调用链路信息,所述应用运行日志为所述应用服务器在运行过程中产生的运行记录;
将所述调用链路信息和所述应用运行日志进行持久化保存;
通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示,所述展示平台对所述应用运行日志进行展示包括:获取展示条件参数;根据所述展示条件参数确定所述应用运行日志中的目标应用运行日志,所述目标应用运行日志为所述应用运行日志中的全部或部分运行日志,将所述目标应用运行日志展示在第二网页,所述第二网页包括目标业务请求的目标链路身份信息ID;
通过调用链监控进程对所述调用链路信息进行分析,得到所述目标业务请求的服务调用信息,包括:通过所述调用链监控进程调用服务的服务身份信息ID将所述调用链路信息中属于一个调用服务的调用链的多个预设数据结构进行关联,得到所述目标业务请求的多个调用服务对应的多个调用关系,每一所述调用关系对应一个所述调用服务,确定所述多个调用服务的调用次数,确定所述多个调用服务中每一调用服务的调用耗时,得到多个调用耗时;并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示,所述展示平台对所述服务调用信息进行展示包括:将所述服务调用信息展示在第一网页,所述第一网页包括所述目标业务请求的目标链路身份信息ID。
2.一种服务调用追踪方法,其特征在于,应用于服务调用追踪系统中的应用服务器,所述服务调用追踪系统还包括存储服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述方法包括:
向所述存储服务器发送调用链路信息和应用运行日志,所述调用链路信息为所述应用服务器进行服务调用产生的调用链路信息,所述应用运行日志为应用集群在运行过程中产生的运行记录,所述应用集群包括多个应用服务器,以指示所述存储服务器执行以下操作:将所述调用链路信息和所述应用运行日志进行持久化保存;通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示,所述展示平台对所述应用运行日志进行展示包括:获取展示条件参数;根据所述展示条件参数确定所述应用运行日志中的目标应用运行日志,所述目标应用运行日志为所述应用运行日志中的全部或部分运行日志,将所述目标应用运行日志展示在第二网页,所述第二网页包括目标业务请求的目标链路身份信息ID;通过调用链监控进程对所述调用链路信息进行分析,得到所述目标业务请求的服务调用信息,包括:通过所述调用链监控进程调用服务的服务身份信息ID将所述调用链路信息中属于一个调用服务的调用链的多个预设数据结构进行关联,得到所述目标业务请求的多个调用服务对应的多个调用关系,每一所述调用关系对应一个所述调用服务,确定所述多个调用服务的调用次数,确定所述多个调用服务中每一调用服务的调用耗时,得到多个调用耗时;并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示,所述展示平台对所述服务调用信息进行展示包括:将所述服务调用信息展示在第一网页,所述第一网页包括所述目标业务请求的目标链路身份信息ID。
3.根据权利要求2所述的方法,其特征在于,所述应用服务器用于运行多个应用和日志搜集进程,所述向所述存储服务器发送调用链路信息和应用运行日志,包括:
通过所述多个应用向所述存储服务器发送所述调用链路信息;
通过所述日志搜集进程收集所述多个应用的应用运行日志,并向所述存储服务器发送所述应用运行日志。
4.根据权利要求3所述的方法,其特征在于,所述通过所述多个应用向所述存储服务器发送所述调用链路信息,包括:
通过所述多个应用以预设数据结构的方式发送所述调用链路信息至所述存储服务器。
5.一种服务调用追踪方法,其特征在于,应用于服务调用追踪系统中的展示平台,所述服务调用追踪系统还包括存储服务器、数据库服务器和应用服务器,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,所述方法包括:
接收所述数据库服务器发送的服务调用信息和应用运行日志;其中,所述应用运行日志和所述服务调用信息是由所述应用服务器向所述存储服务器发送调用链路信息和应用运行日志,并由所述存储服务器所述调用链路信息和所述应用运行日志进行持久化保存;通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器进行持久化保存的应用运行日志;通过调用链监控进程对所述调用链路信息进行分析,得到目标业务请求的服务调用信息,包括:通过所述调用链监控进程调用服务的服务身份信息ID将所述调用链路信息中属于一个调用服务的调用链的多个预设数据结构进行关联,得到所述目标业务请求的多个调用服务对应的多个调用关系,每一所述调用关系对应一个所述调用服务,确定所述多个调用服务的调用次数,确定所述多个调用服务中每一调用服务的调用耗时,得到多个调用耗时;并将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器进行持久化保存的服务调用信息;
将所述服务调用信息和所述应用运行日志进行展示,包括:将所述服务调用信息展示在第一网页,以及将所述应用运行日志展示在第二网页,所述第一网页和所述第二网页均包括所述目标业务请求的目标链路身份信息ID;其中,所述将所述应用运行日志展示在第二网页,包括:获取展示条件参数;根据所述展示条件参数确定所述应用运行日志中的目标应用运行日志,所述目标应用运行日志为所述应用运行日志中的全部或部分运行日志,将所述目标应用运行日志展示在所述第二网页。
6.一种存储服务器,其特征在于,应用于服务调用追踪系统,所述服务调用追踪系统还包括应用服务器、数据库服务器和展示平台,所述应用服务器、所述数据库服务器和所述展示平台与所述存储服务器进行连接,其中,所述存储服务器包括:
第一接收单元,用于接收所述应用服务器发送的调用链路信息和应用运行日志,所述调用链路信息为所述应用服务器进行服务调用产生的调用链路信息,所述应用运行日志为所述应用服务器在运行过程中产生的运行记录;
保存单元,用于将所述调用链路信息和所述应用运行日志进行持久化保存;
传输单元,用于通过日志管理进程将所述应用运行日志传输至所述数据库服务器,并指示所述数据库服务器将所述应用运行日志进行持久化保存;并由所述数据库服务器将所述应用运行日志发送至所述展示平台,以指示所述展示平台对所述应用运行日志进行展示,所述展示平台对所述应用运行日志进行展示包括:获取展示条件参数;根据所述展示条件参数确定所述应用运行日志中的目标应用运行日志,所述目标应用运行日志为所述应用运行日志中的全部或部分运行日志,将所述目标应用运行日志展示在第二网页,所述第二网页包括目标业务请求的目标链路身份信息ID;
分析单元,用于通过调用链监控进程对所述调用链路信息进行分析,得到所述目标业务请求的服务调用信息,包括:通过所述调用链监控进程调用服务的服务身份信息ID将所述调用链路信息中属于一个调用服务的调用链的多个预设数据结构进行关联,得到所述目标业务请求的多个调用服务对应的多个调用关系,每一所述调用关系对应一个所述调用服务,确定所述多个调用服务的调用次数,确定所述多个调用服务中每一调用服务的调用耗时,得到多个调用耗时;
所述传输单元,还用于将所述服务调用信息传输至所述数据库服务器,并指示所述数据库服务器将所述服务调用信息进行持久化保存;并由所述数据库服务器将所述服务调用信息发送至所述展示平台,以指示所述展示平台对所述服务调用信息进行展示,所述展示平台对所述服务调用信息进行展示包括:将所述服务调用信息展示在第一网页,所述第一网页包括所述目标业务请求的目标链路身份信息ID。
7.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-5任一项所述的方法。
CN201911418649.4A 2019-12-31 2019-12-31 服务调用追踪方法及相关产品 Active CN113132143B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911418649.4A CN113132143B (zh) 2019-12-31 2019-12-31 服务调用追踪方法及相关产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911418649.4A CN113132143B (zh) 2019-12-31 2019-12-31 服务调用追踪方法及相关产品

Publications (2)

Publication Number Publication Date
CN113132143A CN113132143A (zh) 2021-07-16
CN113132143B true CN113132143B (zh) 2023-04-07

Family

ID=76769628

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911418649.4A Active CN113132143B (zh) 2019-12-31 2019-12-31 服务调用追踪方法及相关产品

Country Status (1)

Country Link
CN (1) CN113132143B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106790718A (zh) * 2017-03-16 2017-05-31 北京搜狐新媒体信息技术有限公司 服务调用链路分析方法及系统
CN109921927A (zh) * 2019-02-20 2019-06-21 苏州人之众信息技术有限公司 基于微服务的实时调用链跟踪方法
CN110245035A (zh) * 2019-05-20 2019-09-17 平安普惠企业管理有限公司 一种链路跟踪方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106790718A (zh) * 2017-03-16 2017-05-31 北京搜狐新媒体信息技术有限公司 服务调用链路分析方法及系统
CN109921927A (zh) * 2019-02-20 2019-06-21 苏州人之众信息技术有限公司 基于微服务的实时调用链跟踪方法
CN110245035A (zh) * 2019-05-20 2019-09-17 平安普惠企业管理有限公司 一种链路跟踪方法及装置

Also Published As

Publication number Publication date
CN113132143A (zh) 2021-07-16

Similar Documents

Publication Publication Date Title
CN112612675B (zh) 微服务架构下的分布式大数据日志链路跟踪方法及系统
US11775416B2 (en) System and method for continuous testing and delivery of software
US9454450B2 (en) Modeling and testing of interactions between components of a software system
US9015316B2 (en) Correlation of asynchronous business transactions
US9235490B2 (en) Modeling and testing of interactions between components of a software system
US8966454B1 (en) Modeling and testing of interactions between components of a software system
US10116534B2 (en) Systems and methods for WebSphere MQ performance metrics analysis
CN109885496B (zh) 测试日志管理方法及系统
WO2015018226A1 (en) Method,apparatus,and system for monitoring website
CN111176941B (zh) 一种数据处理的方法、装置和存储介质
US20070189509A1 (en) Data path identification and analysis for distributed applications
US20180159724A1 (en) Automatic task tracking
CN111008105A (zh) 一种分布式系统调用关系可视化方法及装置
CN102904774A (zh) 终端、服务器和服务器性能测试方法
CN106126419A (zh) 一种应用程序的调试方法及装置
CN109409948B (zh) 交易异常检测方法、装置、设备及计算机可读存储介质
CN112433908B (zh) 确定检测服务器的间隔时间的方法、系统、设备及介质
CN107229569A (zh) 面向多执行技术的自动化测试集中调度执行方法及系统
CN113132143B (zh) 服务调用追踪方法及相关产品
CN106484601B (zh) 客户端的用户数据分析方法及系统
US20080162687A1 (en) Data acquisition system and method
CN112527619A (zh) 一种基于有向无环图结构的分析链路调用方法及系统
CN112491650A (zh) 动态分析服务之间调用环路情况的方法及相关设备
CN101640605A (zh) 关联客户端数据和服务器端数据的方法和装置
CN112988560A (zh) 测试系统健壮性的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant