本发明涉及故障分析领域,尤其涉及一种可用于金融科技或者其他相关领域的故障分析方法、装置、计算机设备及计算机可读存储介质。
背景技术:
1、在金融科技领域内,计算机设备的应用系统的运行性能是衡量应用系统运行质量的重要指标。如何保障良好的应用系统运行性能,以及在应用系统出现性能故障时如何快速的进行性能故障的分析,是保障应用系统运行质量的重要研究课题。通常可部署分布式链路跟踪的外置系统,以提供api(application program interface,应用程序界面)介入应用系统的开发代码,或从应用系统的网络层采集分析信息,进行应用系统的性能故障分析。可部署分布式链路跟踪的外置系统通常用于多个应用系统之间的故障分析,无法准确分析出单个的应用系统性能故障。
2、当单个的应用系统内部发生性能故障时,现有技术通常是将应用系统运行过程中的处理过程记录为日志,并通过打印输出的日志分析应用系统的性能故障。然而,应用系统运行过程中将生成大量的日志,打印输出日志需要消耗大量的计算资源和存储资源,需要耗费很长的时间等待日志的打印输出,进而导致了应用系统的故障分析效率低下。同时,日志包括了许多与性能故障分析无关的信息,需要耗费时间滤除无关的信息,进一步导致了应用系统的故障分析效率低下。
技术实现思路
1、有鉴于此,本发明的目的是为了克服现有技术中的不足,提供一种可用于金融科技或者其他相关领域的故障分析方法、装置、计算机设备及计算机可读存储介质,以解决应用系统的故障分析效率低下的问题。
2、第一方面,本申请提供一种故障分析方法,应用于包括性能计数器的计算机设备,所述方法包括:
3、获取所述性能计数器记录的所有事件,并筛选所述所有事件中的启动事件和结束事件;
4、根据每个事件的处理信息和描述信息,生成每个事件的记录信息,其中,所述处理信息用于确定所述事件是否处理成功;
5、基于所述启动事件、所述结束事件及每个事件的所述记录信息,得到所述性能计数器的输出日志;
6、若检测到性能故障,则根据所述输出日志,生成故障分析信息。
7、结合第一方面,在第一种可能的实现方式中,所述基于所述启动事件、所述结束事件及每个事件的所述记录信息,得到所述性能计数器的输出日志,包括:
8、根据所述性能计数器的标题信息,确定所述性能计数器对应的组件处理流程;
9、响应接收到的所述组件处理流程的流程完成信息,基于所述启动事件、所述结束事件及每个事件的所述记录信息,得到所述性能计数器的输出日志。
10、结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理信息包括处理完成信息和处理阶段信息,所述处理完成信息用于描述所述事件是否处理成功,所述处理阶段信息用于描述所述事件对应的所述组件处理流程的处理阶段。
11、结合第一方面,在第三种可能的实现方式中,所述根据每个事件的处理信息和描述信息,生成每个事件的所述记录信息,包括:
12、获取当前事件与上一个事件的时间间隔,并根据所述时间间隔得到所述当前事件的耗时;
13、根据所述当前事件的耗时、处理信息及描述信息,生成所述当前事件的记录信息。
14、结合第一方面,在第四种可能的实现方式中,所述方法还包括:
15、获取所述性能计数器的运行内存阈值,并根据所述运行内存阈值,释放所述性能计数器的内存资源。
16、结合第一方面,在第五种可能的实现方式中,所述基于所述启动事件、所述结束事件及每个事件的所述记录信息,得到所述性能计数器的输出日志,包括:
17、根据所述启动事件确定所述性能计数器的启动时间,并根据所述结束事件确定所述性能计数器的结束时间;
18、基于所述启动时间、所述结束时间及每个事件的所述记录信息,得到所述性能计数器的输出日志。
19、结合第一方面,在第六种可能的实现方式中,所述基于所述启动事件、所述结束事件及每个事件的所述记录信息,得到所述性能计数器的输出日志,包括:
20、若所述所有事件中包括外部调用事件,则获取所述外部调用事件的外部耗时;
21、基于所述启动事件、所述结束事件、每个事件的所述记录信息及所述外部耗时,生成所述性能计数器的输出日志。
22、第二方面,本申请提供一种故障分析装置,应用于包括性能计数器的计算机设备,所述装置包括:
23、事件获取模块,用于获取所述性能计数器记录的所有事件,并筛选所述所有事件中的启动事件和结束事件;
24、记录信息生成模块,用于根据每个事件的处理信息和描述信息,生成每个事件的记录信息,其中,所述处理信息用于确定所述事件是否处理成功;
25、日志输出模块,用于基于所述启动事件、所述结束事件及每个事件的所述记录信息,得到所述性能计数器的输出日志;
26、故障分析模块,用于若检测到性能故障,则根据所述输出日志,生成故障分析信息。
27、第三方面,本申请提供一种计算机设备,所述计算机设备包括性能计数器、存储器及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器执行时,实现如第一方面所述的故障分析方法。
28、第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现如第一方面所述的故障分析方法。
29、本申请提供一种故障分析方法,应用于包括性能计数器的计算机设备,包括:获取所述性能计数器记录的所有事件,并筛选所述所有事件中的启动事件和结束事件;根据每个事件的处理信息和描述信息,生成每个事件的记录信息;基于所述启动事件、所述结束事件及每个事件的所述记录信息,得到所述性能计数器的输出日志;若检测到性能故障,则根据所述输出日志,生成故障分析信息。通过事件的处理信息和描述信息,对计算机设备的事件进行了精确记录,并汇总生成包括少量的关键信息的输出日志,不需要输出大量的系统过程日志,提高了故障分析效率。
1.一种故障分析方法,其特征在于,应用于包括性能计数器的计算机设备,所述方法包括:
2.根据权利要求1所述的故障分析方法,其特征在于,所述基于所述启动事件、所述结束事件及每个事件的所述记录信息,得到所述性能计数器的输出日志,包括:
3.根据权利要求2所述的故障分析方法,其特征在于,所述处理信息包括处理完成信息和处理阶段信息,所述处理完成信息用于描述所述事件是否处理成功,所述处理阶段信息用于描述所述事件对应的所述组件处理流程的处理阶段。
4.根据权利要求1所述的故障分析方法,其特征在于,所述根据每个事件的处理信息和描述信息,生成每个事件的所述记录信息,包括:
5.根据权利要求1所述的故障分析方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的故障分析方法,其特征在于,所述基于所述启动事件、所述结束事件及每个事件的所述记录信息,得到所述性能计数器的输出日志,包括:
7.根据权利要求1所述的故障分析方法,其特征在于,所述基于所述启动事件、所述结束事件及每个事件的所述记录信息,得到所述性能计数器的输出日志,包括:
8.一种故障分析装置,其特征在于,应用于包括性能计数器的计算机设备,所述装置包括:
9.一种计算机设备,其特征在于,所述计算机设备包括性能计数器、存储器及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器执行时,实现如权利要求1至7中任一项所述的故障分析方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1至7中任一项所述的故障分析方法。