CN114020580A - 监测应用系统的性能指标的方法、系统、设备和存储介质 - Google Patents
监测应用系统的性能指标的方法、系统、设备和存储介质 Download PDFInfo
- Publication number
- CN114020580A CN114020580A CN202111369610.5A CN202111369610A CN114020580A CN 114020580 A CN114020580 A CN 114020580A CN 202111369610 A CN202111369610 A CN 202111369610A CN 114020580 A CN114020580 A CN 114020580A
- Authority
- CN
- China
- Prior art keywords
- monitoring
- data
- performance
- performance indexes
- monitoring data
- 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.)
- Pending
Links
- 238000012544 monitoring process Methods 0.000 title claims abstract description 292
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000012360 testing method Methods 0.000 claims abstract description 53
- 230000000903 blocking effect Effects 0.000 claims abstract description 16
- 230000005540 biological transmission Effects 0.000 claims description 8
- 238000011084 recovery Methods 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 15
- 238000011056 performance test Methods 0.000 description 10
- 241000070928 Calligonum comosum Species 0.000 description 6
- 230000005856 abnormality Effects 0.000 description 4
- 238000009530 blood pressure measurement Methods 0.000 description 4
- 238000013480 data collection Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000004064 recycling Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241001408699 Artia Species 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种监测应用系统的性能指标的方法、系统、设备和存储介质。所述监测方法包括:获取用于测试应用系统的多个性能指标的测试相关信息,所述多个性能指标包括:FullGC次数、阻塞线程、CPU调用栈、慢SQL、主机资源指标,所述测试相关信息包括:测试ID、监控平台列表;通过所述监控平台列表中的各个监控平台获取所述多个性能指标对应的监测数据;将所述多个性能指标的监测数据展示在同一显示界面中。本发明提供的监测方法通过将多种监控平台获取的多个性能指标对应的监测数据展示在同一显示界面中,可以同时获取多种需监控的性能指标的监测数据并直观展示,便于相关工作人员直观查看性能指标数据,也便于后续的性能指标数据对比分析。
Description
技术领域
本发明涉及计算机应用技术领域,更为具体而言,涉及一种监测应用系统的性能指标的方法、系统、设备和存储介质。
背景技术
压力测试是软件行业非常重要的一项测试,通过压力测试可以了解到软件、数据库所能承受的最大压力,包括用户并发数、数据量、资源消耗等,因此对服务、软件、硬件的性能情况进行监控是非常有必要的。
然而,现有技术能够仅存在单一的性能监控,例如只监控硬件类指标或只能监控软件类指标,并且不同类型软件服务监控方式也不同,因此,在性能测试结束后,需要对各个监控工具逐一取数,以及针对不同的指标取出的数据无法不能通过同一视图进行比较查看,不容易查出指标是否异常。此外,现有性能监控只能实时呈现单一性能的监控结果,无法分析监控指标的整体发展趋势,也不能有效进行不同时间的监控指标对比或多种监控指标之间的对比。
因此,亟需一种可以同时监控多种类型服务的性能,并使相关工作人员直观查看指标数据,进而对性能指标的数据进行对比和分析的技术方案。
发明内容
为解决上述现有技术存在的问题或部分问题,本发明实施方式提供了一种监测应用系统的性能指标的监测方法、系统、计算机设备和存储介质,通过将多种监控平台获取的多个性能指标对应的监测数据展示在同一显示界面中,可以同时获取多种需监控的性能指标的监测数据并直观展示,便于相关工作人员直观查看性能指标数据,也便于后续的性能指标数据对比分析。
根据本发明的第一方面,本发明实施方式提供了一种监测应用系统的性能指标的监测方法,其包括:获取用于测试应用系统的多个性能指标的测试相关信息,所述多个性能指标包括:FullGC(垃圾回收)次数、阻塞线程、CPU调用栈、慢SQL查询语句、主机资源指标,所述测试相关信息包括:测试ID、监控平台列表;通过所述监控平台列表中的各个监控平台获取所述多个性能指标对应的监测数据;将所述多个性能指标的监测数据展示在同一显示界面中。
根据本发明上述实施方式,通过多种监控平台获取到多个性能指标对应的监测数据,并将监测数据展示在同一显示界面中,可以同时获取多种需监控的性能指标的监测数据,并直观的展示在同一显示界面,便于相关工作人员直观查看性能指标数据,也便于后续的性能指标数据对比分析,提高了获取软件、数据库等所能承受的最大压力的效率。
在本发明的一些实施方式中,所述监测方法还包括:根据所述多个性能指标的监测数据获取所述多个性能指标中每个性能指标的监测指标值和/或监测数据趋势图;将所述监测指标值和/或监测数据趋势图展示在所述同一显示界面中。
根据本发明上述实施方式,通过将多个性能指标的监测指标值和/或监测数据趋势图展示在所述同一显示界面中,使得相关工作人员能够直观查看每个需监控的性能指标的监测指标值及趋势图,便于工作人员根据同一显示界面展示的信息了解应用系统的各方面情况,进而在出现异常时对应用系统及时进行维护和管控。
在本发明的一些实施方式中,所述各个监控平台按照预设时间间隔监控预设监测时间范围内的所述多个性能指标对应的监测数据,并获取所述多个性能指标的时序监测数据;根据所述多个性能指标的时序监测数据分别绘制所述多个性能指标的监测数据趋势图;将所述多个性能指标的监测数据趋势图展示在同一显示界面。
根据本发明上述实施方式,通过定期、定时监控多个性能指标,以获取多个性能指标的时序监测数据,进而根据多个性能指标的时序监测数据分别绘制监测数据趋势图并展示在同一显示界面,便于工作人员及时对性能指标的数据进行对比和分析。
在本发明的一些实施方式中,所述主机资源指标包括下述至少之一:系统CPU数据、用户CPU数据、内存使用数据、系统负载数据、I/O使用量、每秒内IO操作耗费的时间、网络接收丢包数、网络传输丢包数、网络接收错误数、网络发送错误数;所述监控平台列表包括下述至少之一:数据库、docker应用容器引擎、主机、rancher容器管理平台、k8s容器集群管理系统。
根据本发明上述实施方式,通过多种监控平台获取多种指标数据的监测数据,便于工作人员根据多种类指标分析应用系统的运行状态。
根据本发明的第二方面,本发明实施方式提供了一种监测应用系统的性能指标的监测系统,其包括:测试信息获取模块,用于获取对应用系统的多个性能指标进行测试的测试相关信息,所述多个性能指标包括:FullGC(垃圾回收)次数、阻塞线程、CPU调用栈、慢SQL查询语句、主机资源指标,所述测试相关信息包括:测试ID、监控平台列表;监控平台,所述监控平台为所述监控平台列表中的各个监控平台,用于获取所述多个性能指标对应的监测数据;监测结果展示模块,用于将所述多个性能指标的监测数据展示在同一显示界面中。
根据本发明上述实施方式,通过多种监控平台获取到多个性能指标对应的监测数据,并将监测数据展示在同一显示界面中,可以同时获取多种需监控的性能指标的监测数据,并直观的展示在同一显示界面,便于相关工作人员直观查看性能指标数据,也便于后续的性能指标数据对比分析,提高了获取软件、数据库等所能承受的最大压力的效率。
在本发明的一些实施方式中,所述监测结果展示模块还用于:根据所述多个性能指标的监测数据获取所述多个性能指标中每个性能指标的监测指标值和/或监测数据趋势图;将所述监测指标值和/或监测数据趋势图展示在所述同一显示界面中。
根据本发明上述实施方式,通过将多个性能指标的监测指标值和/或监测数据趋势图展示在所述同一显示界面中,使得相关工作人员能够直观查看每个需监控的性能指标的监测指标值及趋势图,便于工作人员根据同一显示界面展示的信息了解应用系统的各方面情况,进而在出现异常时对应用系统及时进行维护和管控。
在本发明的一些实施方式中,所述各个监控平台按照预设时间间隔监控预设监测时间范围内的所述多个性能指标对应的监测数据,并获取所述多个性能指标的时序监测数据;所述监测结果展示模块根据所述多个性能指标的时序监测数据分别绘制所述多个性能指标的监测数据趋势图,以及将所述多个性能指标的监测数据趋势图展示在同一显示界面。
根据本发明上述实施方式,通过定期、定时监控多个性能指标,以获取多个性能指标的时序监测数据,进而根据多个性能指标的时序监测数据分别绘制监测数据趋势图并展示在同一显示界面,便于工作人员及时对性能指标的数据进行对比和分析。
在本发明的一些实施方式中,所述主机资源指标包括下述至少之一:系统CPU数据、用户CPU数据、内存使用数据、系统负载数据、I/O使用量、每秒内IO操作耗费的时间、网络接收丢包数、网络传输丢包数、网络接收错误数、网络发送错误数;所述监控平台列表包括下述至少之一:数据库、docker应用容器引擎、主机、rancher容器管理平台、k8s容器集群管理系统。
根据本发明上述实施方式,通过多种监控平台获取多种指标数据的监测数据,便于工作人员根据多种类指标分析应用系统的运行状态。
根据本发明的第三方面,本发明实施方式提供一种计算机可读存储介质,其上存储有计算机可读指令,所述计算机可读指令被处理器执行时,使得计算机执行如下操作:所述操作包括如上任意一种实施方式所述监测方法所包含的步骤。
根据本发明的第四方面,本发明实施方式提供一种包括存储器和处理器的计算机设备,所述存储器用于存储一条或多条计算机可读指令,其中,所述一条或多条计算机可读指令被所述处理器执行时能够实现如上任意一种实施方式所述的监测方法。
由上述可知,实施本发明提供的监测应用系统的性能指标的监测方法、系统、计算机设备和存储介质,通过多种监控平台获取到多个性能指标对应的监测数据,并将监测数据展示在同一显示界面中,可以同时获取多种需监控的性能指标的监测数据,并直观的展示在同一显示界面,便于相关工作人员直观查看性能指标数据,也便于后续的性能指标数据对比分析,提高了获取应用系统运行情况、系统所能承受的最大压力的效率。
附图说明
图1是根据本发明一种实施方式的监测应用系统的性能指标的监测方法的流程示意图;
图2是根据本发明另一种实施方式的监测应用系统的性能指标的监测方法的流程示意图;
图3是根据本发明一种实施方式的通过jvm命令获取包含FullGc数据的查询结果界面截图;
图4是根据本发明一种实施方式的通过命令行获取阻塞线程的查询结果界面截图;
图5是根据本发明一种实施方式的展示多个性能指标的监测结果的同一显示界面的示意图;
图5a是图5所示同一显示界面中A部分放大后的示意图;
图5b是图5所示同一显示界面中B部分放大后的示意图;
图6是根据本发明一种实施方式的监测应用系统的性能指标的监测系统的架构图。
具体实施方式
以下结合附图和具体实施方式对本发明的各个方面进行详细阐述。其中,众所周知的模块、单元及其相互之间的连接、链接、通信或操作没有示出或未作详细说明。并且,所描述的特征、架构或功能可在一个或一个以上实施方式中以任何方式组合。本领域技术人员应当理解,下述的各种实施方式只用于举例说明,而非用于限制本发明的保护范围。还可以容易理解,本文所述和附图所示的各实施方式中的模块或单元或处理方式可以按各种不同配置进行组合和设计。
下面对本文中使用的术语进行简要说明。
测试ID:testId,在测试任务创建的时候生成的随机的UUID字符串,此数值是唯一ID。
FullGC:垃圾回收。
SQL:Structured Query Language,结构化查询语言/查询语句。
docker:应用容器引擎。
rancher:容器管理平台。
k8s:容器集群管理系统。
arthas:一种开源Java诊断工具。
pid:Process ID,进程编号。
Apache:一种普通服务器。
Tomcat:一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器。
UUID:Universally Unique Identifier,通用唯一识别码。
url:Uniform Resource Locator,统一资源定位器。在WWW上,每一信息资源都有统一的且在网上唯一的地址,该地址就叫URL,它是WWW的统一资源定位标志,就是指网络地址。
火焰图:通过可交互的图片反映出程序执行过程中的调用栈和大致的CPU占用百分比。
图1是根据本发明一种实施方式的监测应用系统的性能指标的监测方法的流程示意图。
如图1所示,在本发明的一种实施方式中,所述监测方法可包括:步骤S11、步骤S12和步骤S13,下面对上述步骤进行具体的描述。
在步骤S11中,获取用于测试应用系统的多个性能指标的测试相关信息,所述多个性能指标包括:FullGC次数、阻塞线程、CPU调用栈、慢SQL查询语句、主机资源指标,所述测试相关信息包括:测试ID、监控平台列表。其中,所述主机资源指标数据可以包括但不限于下述一种或多种:系统CPU数据、用户CPU数据、内存使用数据、系统负载数据、I/O使用量、每秒内IO操作耗费的时间、网络接收丢包数、网络传输丢包数、网络接收错误数、网络发送错误数。
在一种实施方式中,所述测试相关信息还包括各监控平台获取各性能指标对应的监测数据的数据收集时间间隔、每次进行数据收集的时间范围或起止时间。
在步骤S12中,通过所述监控平台列表中的各个监控平台获取所述多个性能指标对应的监测数据。其中,所述监控平台列表包括但不限于下述一种或多种监控平台:数据库、docker、主机、rancher、k8s。
在一种实施方式中,所述各个监控平台按照预设时间间隔监控预设监测时间范围内的所述多个性能指标对应的监测数据,并获取所述多个性能指标的时序监测数据。
在步骤S13中,将所述多个性能指标的监测数据展示在同一显示界面中。可选的,所述显示界面可以为web页面。
在一种实施方式中,根据各个监控平台获取的多个性能指标的时序监测数据分别绘制所述多个性能指标的监测数据趋势图,并将所述多个性能指标的监测数据趋势图展示在同一显示界面。根据多个性能指标的时序监测数据分别绘制监测数据趋势图并展示在同一显示界面,便于工作人员及时对性能指标的数据进行对比和分析。
采用本发明实施方式的上述方法,通过多种监控平台获取到多个性能指标对应的监测数据,并将监测数据展示在同一显示界面中,可以同时获取多种需监控的性能指标的监测数据,并直观的展示在同一显示界面,便于相关工作人员直观查看性能指标数据,也便于后续的性能指标数据对比分析,提高了获取应用系统所能承受的最大压力的效率。
在其他实施方式中,根据多个性能指标的监测数据获取所述多个性能指标中每个性能指标的监测指标值和/或监测数据趋势图;将所述监测指标值和/或监测数据趋势图展示在所述同一显示界面中。
通过将多个性能指标的监测指标值和/或监测数据趋势图展示在所述同一显示界面中,使得相关工作人员能够直观查看每个需监控的性能指标的监测指标值及趋势图,便于工作人员根据同一显示界面展示的信息了解应用系统的各方面情况,进而在出现异常时对应用系统及时进行维护和管控。
图2是根据本发明另一种实施方式的监测应用系统的性能指标的监测方法的流程示意图。
如图2所示,所述监测方法包括:
首先,获取用于对应用系统的多个性能指标进行监测的相关配置信息。其中,所述相关配置信息包括测试ID和监控平台列表。
其次,启动监控平台列表中的一个或多个监控工具。其中,所述多个监控平台可以包括但不限于下述一种或多种:数据库、docker、k8s、linux、rancher、java等。
然后,运行所述多个监控工具。通过所述多个监控工具在测试过程中监控各自对应的性能指标,并在测试结束时提取本次测试得到的各性能指标的监控数据。
最后,分析所述各性能指标的监控数据。其中,分析所述各性能指标的监控数据可以包括:将各性能指标的监控数据展示在同一显示界面中,和/或根据所述监控数据绘制对应性能指标的监控数据趋势图,并展示在同一显示界面中。
通过上述监测方法可以同时监控应用系统中多种类型的性能指标,并直观查看所有监测得到的性能指标监控数据以及监控数据趋势,便于工作人员查看、对比分析应用系统的各类性能指标,进而在出现异常时及时对应用系统进行维护和管控。
本发明根据上述监测方法提供一些示例,举例说明在压测过程中,如何通过监控工具在多种监控平台进行监控,以获取对应的性能指标数据:
示例一、针对FullGC发生次数的监控
FullGC是指每当内存满了之后触发的内存的垃圾回收机制,服务启动时将arthas.jar包通过挂载卷的方式挂载到服务的容器中,服务启动时会自动开启arthas.jar服务,arthas.jar服务即jvm监控服务,会自动监测FullGc,此时先通过jvm命令“jps”命令查出当前java进程的pid,在压力测试开始时,再执行jvm命令“jstat-gc$pid”查出包含FullGc的数据,此数据为初始值。待性能测试结束时,再次使用相同方式读取FullGc的数值,此数据为监测值。计算出两者之差即为在压测过程中产生的FullGc的次数,并将该数据存入数据库中。最后通过前端页面的测试报告中FullGc发生次数将该FullGc的次数的数据展示出来。FullGc发生次数大于0,则为异常,否则为正常。
其中,通过jvm命令“jstat-gc$pid”计算压测过程中产生的FullGc次数的具体方法如下:通过jvm命令“jstat-gc$pid”获取的数据格式如图3所示,图3中的FGC代表FullGc,因此,图3中的数值第二行倒数第三个数据为读取的FullGc数值(图3中FullGc数值为4)。
根据测试开始时的FullGC次数(初始值)与性能测试结束时得到的FullGC次数(监测值)之间的差值,得到压测时间段内的垃圾回收次数,并通过图5所示显示界面进行展示,由图5和图5a可知,压测时间段内得到的FullGC值展示在同一显示界面的应用分析栏中“FullGC发生次数”的位置处。
在一种实施方式中,通过折线图、增量图等展示压测时间段内不同时间点处的垃圾回收次数,为技术人员提供了直观的内存垃圾回收情况。
示例二、针对阻塞线程的监控
线程主要有五种状:新建new、运行runnable、等待waiting、阻塞blocked,结束terminated,阻塞线程是指当前阻塞其他线程的线程。阻塞线程的获取通过arthas服务获取,arthas启动方式与示例一种的启动方式相同。阻塞线程是在性能测试终止时通过arthas http请求接口ip:port/api执行“thread-b”命令获取到的结果,根据命令行直接查看到的结果如图4所示(图4中显示未查询到存在阻塞进程)。并且如图5和图5a所示,获取到的阻塞线程与前述FullGC次数最终展示到同一显示界面上,且阻塞线程的获取结果也展示在显示界面的应用分析栏中“线程监测”的位置处。
通过在性能测试过程中监控并展示异常阻塞线程,并给出阻塞线程的具体信息,方便技术人员尽快解决阻塞问题。
示例三、针对CPU调用栈的监控
CPU调用栈的使用情况通过火焰图进行展示,火焰图是基于调用栈(stack)信息生成的SVG图片,其获取方法如下:
服务在启动时启动监控工具arthas,在压力测试开始时通过arthas api获取svg图片1,在压力测试结束时再次获取svg图片2,并基于svg图片2生成火焰图。具体而言,比较图片1和图片2中每个调用栈出现的次数多少,如果在图片2中该调用栈出现次数更多,则在将svg图片2中该调用栈标记为红色(图5和图5a中显示较深的灰色),否则标记为绿色(图5和图5a中显示较浅的灰色),并展示在图5所示同一显示界面的应用分析栏中“火焰图”的位置处。
其中,通过arthas api获取的svg图片1和2存储在服务器共享目录public下,通过启动apache-tomcat服务加载静态图片方式,将svg图片加载到服务中,再通过相应url访问svg图片。本发明中将该tomcat的web页面嵌入到性能测试平台中如图5所示同一显示界面的应用分析栏中“火焰图”展示的位置。其中,所述svg图片可以独立访问,也可以通过web端访问。
存储在服务器共享目录public下的svg图片命名规则为:output-xxxx.svg,此处xxxx是取自testId(测试ID),testId是在测试任务创建的时候生成的一个32位的随机的UUID字符串,此数值是唯一ID,查看时根据此ID拼成对应url,因此可确保查看的是当前测试的火焰图。其中,url规则为:http://ip:端口号/static/output-UUID(svg2图片名称全称)。
在图5和图5a所示的火焰图中,y轴表示调用栈,每一层都是一个函数。调用栈越深,火焰就越高,顶部就是正在执行的函数,下方都是它的父函数。x轴表示抽样数,如果一个函数在x轴占据的宽度越宽,就表示它被抽到的次数多,即执行的时间长。其中,x轴不代表时间,而是所有的调用栈合并后,按字母顺序排列的。
此外,如图5和图5a所示,该显示界面不仅通过火焰图展示了CPU调用栈的使用情况,还给出了火焰图的保存路径,方便技术人员下载分析。
示例四、对于慢SQL的监控
慢SQL为慢速度/运行比较慢的SQL语句,在数据库服务中通过设置数据库(mysql)工具的全局变量配置:slow_query_log,开启慢日志开关,slow_query_log_file设置文件地址,slow_launch_time设置查询慢日志时间间隔。在开始和结束性能测试时,分别记录测试开始和测试结束时间,根据记录的起止时间从慢日志文件中查询出来性能测试期间产生的慢日志信息,最终将产生的慢日志信息在图5和图5b所示显示界面的数据库分析栏中“慢SQL”的位置处展示出来。
示例五、针对主机资源指标的监控
主机分为传统主机和容器(docker container)。传统主机即服务之间运行在主机上;容器是指服务运行在容器内部,容器运行在主机上。主机分析,即服务运行时所消耗的硬件资源、网络资源。无论是传统的主机还是容器,监控指标都一样。本发明中主机资源指标可以包括但不限于下述一种或多种:系统CPU数据、用户CPU数据、内存使用数据、系统负载数据、I/O使用量、每秒内IO操作耗费的时间、网络接收丢包数、网络传输丢包数、网络接收错误数、网络发送错误数。
更为具体而言,针对主机类型,为每一台主机添加prometheus(开源监控工具)服务监控,将监控指标数据按照性能测试执行起止时间通过prometheus api获取出来,并计算出结果;针对容器类型,在每一台主机上添加cadvisor监控服务,并将监控服务收集到的监控数据(CPU,IO,内存,磁盘等性能数据)传给prometheus,随后将监控指标数据按照性能测试执行起止时间通过prometheus api获取出来,并计算出结果。
其中,具体计算方法如下:监控服务收集监控指标数据是按照一定的时间,即每隔预设一段时间收集一次,因此,在测试时设定数据收集的预设间隔时间,在查询数据时按照所述预设间隔时间和起止时间获取监控指标数据,由此获得监控指标的具体时序数据,根据散列的所述时序数据求和计算平均数,得到该监控指标的监测指标值,同时,还可以根据所述时序数据绘制出对应监控指标走势的趋势图,进而在如图5和图5b所示的(同一)显示界面的“主机分析”栏进行展示。如图5和图5b所示,在同一显示界面的“主机分析”栏展示了:系统CPU使用情况分析图、用户CPU使用情况分析图、内存使用情况分析图、系统负载、写IO使用量、读IO使用量、每秒内IO操作耗费的时间、网络接收丢包数、网络传输丢包数、网络接收错误数、网络发送错误数。采用本发明实施方式的上述方法,通过多种监控平台获取到多个监控指标对应的监测数据,并将监测数据展示在同一显示界面中,可以同时获取多种需监控的监控指标的监测数据,并直观的展示在同一显示界面,便于相关工作人员直观查看性能指标数据,也便于后续的性能指标数据对比分析,提高了获取应用系统运行状态的效率。
图6是根据本发明一种实施方式的监测应用系统的性能指标的监测系统的架构图。
如图6所示,所述监测系统包括:
测试信息获取模块610,用于获取对应用系统的多个性能指标进行测试的测试相关信息,所述多个性能指标包括:FullGC垃圾回收次数、阻塞线程、CPU调用栈、慢SQL查询语句、主机资源指标,所述测试相关信息包括:测试ID、监控平台列表。其中,所述主机资源指标数据可以包括但不限于下述一种或多种:系统CPU数据、用户CPU数据、内存使用数据、系统负载数据、I/O使用量、每秒内IO操作耗费的时间、网络接收丢包数、网络传输丢包数、网络接收错误数、网络发送错误数。
在一种实施方式中,所述测试相关信息还包括各监控平台获取各性能指标对应的监测数据的数据收集时间间隔、每次进行数据收集的时间范围或起止时间。
监控平台620,所述监控平台为所述监控平台列表中的各个监控平台,用于获取所述多个性能指标对应的监测数据。其中,所述监控平台列表包括但不限于下述一种或多种监控平台:数据库、docker、主机、rancher、k8s。
在一种实施方式中,所述各个监控平台按照预设时间间隔监控预设监测时间范围内的所述多个性能指标对应的监测数据,并获取所述多个性能指标的时序监测数据。
监测结果展示模块630,用于将所述多个性能指标的监测数据展示在同一显示界面中;根据所述多个性能指标的监测数据获取所述多个性能指标中每个性能指标的监测指标值和/或监测数据趋势图,并将所述监测指标值和/或监测数据趋势图展示在所述同一显示界面中。可选的,所述显示界面可以为web页面。
在一种实施方式中,监测结果展示模块630根据各个监控平台获取的多个性能指标的时序监测数据分别绘制所述多个性能指标的监测数据趋势图,并将所述多个性能指标的监测数据趋势图展示在同一显示界面。
采用本发明实施方式的上述系统,通过多种监控平台获取到多个性能指标对应的监测数据,并将监测数据展示在同一显示界面中,可以同时获取多种需监控的性能指标的监测数据,并直观的展示在同一显示界面,便于相关工作人员直观查看性能指标数据,也便于后续的性能指标数据对比分析,提高了获取应用系统运行状态的效率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施方式或者实施方式的某些部分所述的方法。
对应的,本发明实施方式还提供一种计算机可读存储介质,其上存储有计算机可读指令或程序,所述计算机可读指令或程序被处理器执行时,使得计算机执行如下操作:所述操作包括如上任意一种实施方式所述监测方法所包含的步骤,在此不再赘述。其中,所述存储介质可以包括:例如,光盘、硬盘、软盘、闪存、磁带等。
另外,本发明实施方式还提供一种包括存储器和处理器的计算机设备,所述存储器用于存储一条或多条计算机可读指令或程序,其中,所述一条或多条计算机可读指令或程序被所述处理器执行时能够实现如上任意一种实施方式所述的监测方法。所述计算机设备可以是,例如,服务器、台式计算机、笔记本计算机、平板电脑等。
最后应说明的是:以上实施方式仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施方式对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施方式技术方案的精神和范围。因此本发明的保护范围应以权利要求为准。
Claims (10)
1.一种监测应用系统的性能指标的监测方法,其特征在于,所述监测方法包括:
获取用于测试应用系统的多个性能指标的测试相关信息,所述多个性能指标包括:FullGC垃圾回收次数、阻塞线程、CPU调用栈、慢SQL查询语句、主机资源指标,所述测试相关信息包括:测试ID、监控平台列表;
通过所述监控平台列表中的各个监控平台获取所述多个性能指标对应的监测数据;
将所述多个性能指标的监测数据展示在同一显示界面中。
2.如权利要求1所述的监测方法,其特征在于,所述监测方法还包括:
根据所述多个性能指标的监测数据获取所述多个性能指标中每个性能指标的监测指标值和/或监测数据趋势图;
将所述监测指标值和/或监测数据趋势图展示在所述同一显示界面中。
3.如权利要求1所述的监测方法,其特征在于,
所述各个监控平台按照预设时间间隔监控预设监测时间范围内的所述多个性能指标对应的监测数据,并获取所述多个性能指标的时序监测数据;
根据所述多个性能指标的时序监测数据分别绘制所述多个性能指标的监测数据趋势图;
将所述多个性能指标的监测数据趋势图展示在同一显示界面。
4.如权利要求1所述的监测方法,其特征在于,
所述主机资源指标包括下述至少之一:系统CPU数据、用户CPU数据、内存使用数据、系统负载数据、I/O使用量、每秒内IO操作耗费的时间、网络接收丢包数、网络传输丢包数、网络接收错误数、网络发送错误数;
所述监控平台列表包括下述至少之一:数据库、docker应用容器引擎、主机、rancher容器管理平台、k8s容器集群管理系统。
5.一种监测应用系统的性能指标的监测系统,其特征在于,所述监测系统包括:
测试信息获取模块,用于获取对应用系统的多个性能指标进行测试的测试相关信息,所述多个性能指标包括:FullGC垃圾回收次数、阻塞线程、CPU调用栈、慢SQL查询语句、主机资源指标,所述测试相关信息包括:测试ID、监控平台列表;
监控平台,所述监控平台为所述监控平台列表中的各个监控平台,用于获取所述多个性能指标对应的监测数据;
监测结果展示模块,用于将所述多个性能指标的监测数据展示在同一显示界面中。
6.如权利要求5所述的监测系统,其特征在于,所述监测结果展示模块还用于:
根据所述多个性能指标的监测数据获取所述多个性能指标中每个性能指标的监测指标值和/或监测数据趋势图;
将所述监测指标值和/或监测数据趋势图展示在所述同一显示界面中。
7.如权利要求5所述的监测系统,其特征在于,
所述各个监控平台按照预设时间间隔监控预设监测时间范围内的所述多个性能指标对应的监测数据,并获取所述多个性能指标的时序监测数据;
所述监测结果展示模块根据所述多个性能指标的时序监测数据分别绘制所述多个性能指标的监测数据趋势图,以及将所述多个性能指标的监测数据趋势图展示在同一显示界面。
8.如权利要求5所述的监测系统,其特征在于,
所述主机资源指标包括下述至少之一:系统CPU数据、用户CPU数据、内存使用数据、系统负载数据、I/O使用量、每秒内IO操作耗费的时间、网络接收丢包数、网络传输丢包数、网络接收错误数、网络发送错误数;
所述监控平台列表包括下述至少之一:数据库、docker、主机、rancher、k8s。
9.一种计算机可读存储介质,所述计算机可读存储介质储存计算机可读指令,其特征在于,所述计算机可读指令由处理器执行以实现如权利要求1-4中任一项所述的监测方法。
10.一种计算机设备,其包括存储器和处理器,
所述存储器存储有计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令以实现如权利要求1-4中任一项所述的监测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111369610.5A CN114020580A (zh) | 2021-11-16 | 2021-11-16 | 监测应用系统的性能指标的方法、系统、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111369610.5A CN114020580A (zh) | 2021-11-16 | 2021-11-16 | 监测应用系统的性能指标的方法、系统、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114020580A true CN114020580A (zh) | 2022-02-08 |
Family
ID=80065104
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111369610.5A Pending CN114020580A (zh) | 2021-11-16 | 2021-11-16 | 监测应用系统的性能指标的方法、系统、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114020580A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115277471A (zh) * | 2022-08-01 | 2022-11-01 | 珠海金山数字网络科技有限公司 | 一种指标监控方法、系统、装置以及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111355780A (zh) * | 2020-02-18 | 2020-06-30 | 杭州云象网络技术有限公司 | 一种基于区块链的物联网监控管理方法及系统 |
-
2021
- 2021-11-16 CN CN202111369610.5A patent/CN114020580A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111355780A (zh) * | 2020-02-18 | 2020-06-30 | 杭州云象网络技术有限公司 | 一种基于区块链的物联网监控管理方法及系统 |
Non-Patent Citations (3)
Title |
---|
KINGLE-L: ""rancher1.X+docker+k8s搭建容器管理集群"", Retrieved from the Internet <URL:https://www.cnblogs.com/kingle-study/p/10331183.html> * |
吴湘宁等: "《KVM及Docker虚拟化平台实验教程》", 30 April 2021, 中国地质大学出版社, pages: 89 - 95 * |
王伟军;: "基于Kubernetes的容器云平台建设", 电脑知识与技术, no. 36, 25 December 2019 (2019-12-25), pages 53 - 54 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115277471A (zh) * | 2022-08-01 | 2022-11-01 | 珠海金山数字网络科技有限公司 | 一种指标监控方法、系统、装置以及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9038030B2 (en) | Methods for predicting one or more defects in a computer program and devices thereof | |
US8584098B2 (en) | Component statistics for application profiling | |
US8286139B2 (en) | Call stack sampling for threads having latencies exceeding a threshold | |
US8141053B2 (en) | Call stack sampling using a virtual machine | |
EP3734520A1 (en) | Fault analysis and prediction using empirical architecture analytics | |
US8745491B2 (en) | Determining event patterns for monitored applications | |
US8132170B2 (en) | Call stack sampling in a data processing system | |
US8095514B2 (en) | Treemap visualizations of database time | |
CN110457211B (zh) | 脚本性能测试方法、装置和设备及计算机存储介质 | |
US20100017583A1 (en) | Call Stack Sampling for a Multi-Processor System | |
US20100094592A1 (en) | Using Application Performance Signatures For Characterizing Application Updates | |
CN111125444A (zh) | 大数据任务调度管理方法、装置、设备及存储介质 | |
US20090307347A1 (en) | Using Transaction Latency Profiles For Characterizing Application Updates | |
US9442817B2 (en) | Diagnosis of application server performance problems via thread level pattern analysis | |
EP3168748A1 (en) | System and method for monitoring performance of applications | |
US8140919B2 (en) | Display of data used for system performance analysis | |
JP2010033543A (ja) | ソフトウエア動作監視システム、そのクライアントコンピュータおよびサーバコンピュータ、並びに、そのプログラム | |
US20220171689A1 (en) | Distributed Tracing Of Huge Spans for Application and Dependent Application Performance Monitoring | |
CN111414351A (zh) | 一种MySQL数据库的性能诊断方法及装置 | |
KR20040027270A (ko) | 데이터베이스 시스템 모니터링 방법 | |
CN112231180A (zh) | 一种基于云环境的sql监控方法及装置 | |
CN114020580A (zh) | 监测应用系统的性能指标的方法、系统、设备和存储介质 | |
CN111506470A (zh) | 浏览器错误检测和告警方法、装置、设备及存储介质 | |
KR101830936B1 (ko) | 데이터베이스와 애플리케이션을 위한 웹기반 성능개선 시스템 | |
CN110011845B (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 |