基于多节点会话的诊断报告生成方法、装置、设备及介质与流程

摘要: 本发明涉及分布式数据库运行监控,尤其涉及一种基于多节点会话的诊断报告生成方法、装置、设备及介质。背景技术:1、在分布式数据库生产运行过程中,计算节点和数据节点通...
基于多节点会话的诊断报告生成方法、装置、设备及介质与流程

本发明涉及分布式数据库运行监控,尤其涉及一种基于多节点会话的诊断报告生成方法、装置、设备及介质。

背景技术:

1、在分布式数据库生产运行过程中,计算节点和数据节点通常分布部署,各节点分别处理不同的连接请求、事务任务和语句执行任务。活跃会话的执行状态、等待状态、执行事件及阻塞关系等信息随数据库运行过程持续变化,并分别保存在对应节点中。现有数据库监控方式多以单节点查询或基础运行指标监测为主,难以在统一时间范围内连续获取多个分布式节点中的活跃会话信息。

2、由于不同节点中的活跃会话数据相互分散,且部分会话状态仅在较短时间内存在,未及时保存的数据容易随着会话状态变化而消失。现有技术缺乏面向多个分布式节点的统一会话数据留存机制,难以将节点内短期保存的会话数据与已经留存的历史会话数据进行统一提取和汇集,导致不同节点、不同时间产生的活跃会话记录难以形成连续且完整的集群级会话数据。

3、在发生语句执行异常、会话阻塞或数据库负载变化时,运维人员通常需要分别查询多个节点,并人工整理不同节点中的会话记录。由于缺少完整的跨节点活跃会话数据,现有技术难以对会话活动情况进行统一诊断并形成直观的诊断结果,从而难以及时确定分布式数据库中的会话异常及对应原因。

技术实现思路

1、本发明的主要目的在于提供一种基于多节点会话的诊断报告生成方法、装置、设备及存储介质,旨在解决现有技术难以将分散于多个分布式节点且持续变化的活跃会话数据形成完整、连续的集群级诊断结果的技术问题。

2、为实现上述目的,本发明提供一种基于多节点会话的诊断报告生成方法,包括:

3、在多个分布式节点中分别建立内存缓存区,对各分布式节点中的活跃会话进行采样,生成活跃会话采样数据,并将所述活跃会话采样数据存储至对应的内存缓存区;

4、当所述内存缓存区满足预设持久化触发条件时,将所述内存缓存区中的活跃会话采样数据写入对应的会话持久化文件;

5、接收报告生成请求,基于所述报告生成请求确定数据提取参数、诊断处理参数和报告生成参数,并生成包括所述数据提取参数、所述诊断处理参数和所述报告生成参数的报告任务数据;

6、基于所述报告任务数据中的数据提取参数,从所述内存缓存区和所述会话持久化文件中提取并聚合活跃会话采样数据,生成聚合会话数据;

7、基于所述报告任务数据中的诊断处理参数,对所述聚合会话数据进行多维度诊断处理,生成会话诊断统计数据;

8、基于所述报告任务数据中的报告生成参数和所述会话诊断统计数据生成可视化诊断报告。

9、进一步地,为实现上述目的,本发明提供一种基于多节点会话的诊断报告生成装置,包括:

10、会话采样缓存模块,用于在多个分布式节点中分别建立内存缓存区,对各分布式节点中的活跃会话进行采样,生成活跃会话采样数据,并将所述活跃会话采样数据存储至对应的内存缓存区;

11、会话数据持久化模块,用于当所述内存缓存区满足预设持久化触发条件时,将所述内存缓存区中的活跃会话采样数据写入对应的会话持久化文件;

12、报告任务生成模块,用于接收报告生成请求,基于所述报告生成请求确定数据提取参数、诊断处理参数和报告生成参数,并生成包括所述数据提取参数、所述诊断处理参数和所述报告生成参数的报告任务数据;

13、会话数据聚合模块,用于基于所述报告任务数据中的数据提取参数,从所述内存缓存区和所述会话持久化文件中提取并聚合活跃会话采样数据,生成聚合会话数据;

14、会话诊断处理模块,用于基于所述报告任务数据中的诊断处理参数,对所述聚合会话数据进行多维度诊断处理,生成会话诊断统计数据;

15、诊断报告生成模块,用于基于所述报告任务数据中的报告生成参数和所述会话诊断统计数据生成可视化诊断报告。

16、进一步地,为实现上述目的,本发明还提供一种计算机设备,所述计算机设备包括存储器、处理器以及存储至所述存储器上并可在所述处理器上运行的基于多节点会话的诊断报告生成程序,所述基于多节点会话的诊断报告生成程序被所述处理器执行时实现如上述所述的基于多节点会话的诊断报告生成方法的步骤。

17、进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述存储介质上存储有基于多节点会话的诊断报告生成程序,所述基于多节点会话的诊断报告生成程序被处理器执行时实现如上所述的基于多节点会话的诊断报告生成方法的步骤。

18、有益效果:本发明涉及分布式数据库运行监控技术领域,公开了一种基于多节点会话的诊断报告生成方法、装置、设备及介质,包括:在多个分布式节点中分别建立内存缓存区,对活跃会话进行采样并存储活跃会话采样数据;当内存缓存区满足预设持久化触发条件时,将活跃会话采样数据写入会话持久化文件;接收报告生成请求,确定数据提取参数、诊断处理参数和报告生成参数,生成报告任务数据;基于数据提取参数提取并聚合活跃会话采样数据,生成聚合会话数据;基于诊断处理参数生成会话诊断统计数据,并基于报告生成参数生成可视化诊断报告。本发明通过对多个分布式节点中的活跃会话进行采样和分层留存,并对多节点活跃会话采样数据进行聚合、诊断和可视化处理,使分散的节点级会话数据形成集群级诊断结果,从而提高分布式数据库会话异常定位的完整性和处理效率。

1.一种基于多节点会话的诊断报告生成方法,其特征在于,包括以下步骤:

2.如权利要求1所述的基于多节点会话的诊断报告生成方法,其特征在于,在多个分布式节点中分别建立内存缓存区,对各分布式节点中的活跃会话进行采样,生成活跃会话采样数据,并将所述活跃会话采样数据存储至对应的内存缓存区,包括:

3.如权利要求1所述的基于多节点会话的诊断报告生成方法,其特征在于,当所述内存缓存区满足预设持久化触发条件时,将所述内存缓存区中的活跃会话采样数据写入对应的会话持久化文件,包括:

4.如权利要求1所述的基于多节点会话的诊断报告生成方法,其特征在于,接收报告生成请求,基于所述报告生成请求确定数据提取参数、诊断处理参数和报告生成参数,并生成包括所述数据提取参数、所述诊断处理参数和所述报告生成参数的报告任务数据,包括:

5.如权利要求1所述的基于多节点会话的诊断报告生成方法,其特征在于,基于所述报告任务数据中的数据提取参数,从所述内存缓存区和所述会话持久化文件中提取并聚合活跃会话采样数据,生成聚合会话数据,包括:

6.如权利要求1所述的基于多节点会话的诊断报告生成方法,其特征在于,基于所述报告任务数据中的诊断处理参数,对所述聚合会话数据进行多维度诊断处理,生成会话诊断统计数据,包括:

7.如权利要求1所述的基于多节点会话的诊断报告生成方法,其特征在于,基于所述报告任务数据中的报告生成参数和所述会话诊断统计数据生成可视化诊断报告,包括:

8.一种基于多节点会话的诊断报告生成装置,其特征在于,所述基于多节点会话的诊断报告生成装置包括:

9.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器以及存储至所述存储器上并可以在所述处理器上运行的基于多节点会话的诊断报告生成程序,所述基于多节点会话的诊断报告生成程序被所述处理器执行时实现如权利要求1-7中任一项所述的基于多节点会话的诊断报告生成方法的步骤。

10.一种计算机可读存储介质,其特征在于,所述存储介质上存储有基于多节点会话的诊断报告生成程序,所述基于多节点会话的诊断报告生成程序被处理器执行时实现如权利要求1-7中任一项所述的基于多节点会话的诊断报告生成方法的步骤。