一种SQL信息的确定方法、装置、设备及存储介质制造方法及图纸

技术编号:37849428 阅读:11 留言:0更新日期:2023-06-14 22:36
本申请提供的一种SQL信息的确定方法、装置、设备及存储介质,属于计算机技术领域,该方法中,第一服务器接收第二服务器发送的绑定请求消息,绑定请求消息包括目标进程标识;根据目标进程标识,加载目标启动类;通过目标启动类,确定SQL信息;向第二服务器发送SQL信息。本申请的技术方案可以无侵入的获取数据库的SQL执行情况以及数据库连接池的状态。执行情况以及数据库连接池的状态。执行情况以及数据库连接池的状态。

【技术实现步骤摘要】
一种SQL信息的确定方法、装置、设备及存储介质


[0001]本申请涉及计算机
,尤其涉及一种SQL信息的确定方法、装置、设备及存储介质。

技术介绍

[0002]为了保障Java类应用的连续性和稳定性,需要在Java类应用运行的过程中,实时获取数据库的结构化查询语言(Structured Query Language,SQL)执行情况以及数据库连接池的状态。
[0003]然而现有技术无法在无侵入业务代码的情况下获取数据库的SQL执行情况以及数据库连接池的状态。因此,如何无侵入的获取数据库的SQL执行情况以及数据库连接池的状态成为亟需解决的技术问题。

技术实现思路

[0004]本申请提供一种SQL信息的确定方法、装置、设备及存储介质,可以无侵入的获取数据库的SQL执行情况以及数据库连接池的状态。
[0005]第一方面,本申请提供一种SQL信息的确定方法,应用于第一服务器,方法包括:
[0006]接收第二服务器发送的绑定请求消息,所述绑定请求消息包括目标进程标识;
[0007]根据所述目标进程标识,加载目标启动类;
[0008]通过所述目标启动类,确定结构化查询语言SQL信息;
[0009]向所述第二服务器发送所述SQL信息。
[0010]在一种可能的实施方式中,所述根据所述目标启动类,确定SQL信息,包括:
[0011]接收所述第二服务器发送的指示信息,所述指示信息用于指示获取SQL执行指标数据或获取数据库连接池指标数据;
[0012]根据所述指示信息,通过所述目标启动类确定所述SQL信息。
[0013]在一种可能的实施方式中,所述指示信息用于指示获取SQL执行指标数据,所述指示信息包括SQL拦截参数,所述SQL拦截参数包括目标SQL和SQL拦截时段;
[0014]所述根据所述指示信息,通过所述目标启动类确定所述SQL信息,包括:
[0015]通过所述目标启动类,加载增强接口;
[0016]通过所述增强接口,在所述SQL拦截时段内对所述目标SQL进行拦截,得到所述SQL信息,所述SQL信息包括所述目标SQL的入参、所述目标SQL的出参和所述目标SQL的执行时长。
[0017]在一种可能的实施方式中,所述指示信息用于指示获取数据库连接池指标数据,所述指示信息包括数据库连接池拦截时段;
[0018]所述根据所述指示信息,通过所述目标启动类确定所述SQL信息,包括:
[0019]通过所述目标启动类,获取所述数据库连接池的加载类;
[0020]通过所述数据库连接池的加载类,获取数据库连接池类;
[0021]根据所述数据库连接池类,在所述数据库连接池拦截时段内获取所述SQL信息,所述SQL信息包括所述数据库连接池指标数据。
[0022]在一种可能的实施方式中,所述根据所述数据库连接池,在所述数据库连接池拦截时段内获取所述SQL信息,包括:
[0023]通过反射加载所述数据库连接池类的数据库连接池对象;
[0024]在所述数据库连接池拦截时段内,在所述数据库连接池对象中获取所述数据库连接池对象的最大连接数、最小空闲连接数、活动连接数和总连接数,所述SQL信息包括所述最大连接数、所述最小空闲连接数、所述活动连接数和所述总连接数。
[0025]在一种可能的实施方式中,根据所述目标进程标识,加载目标启动类,包括:
[0026]根据所述目标进程标识,确定目标虚拟机;
[0027]通过所述目标虚拟机,确定目标虚拟机信息;
[0028]根据所述目标虚拟机信息,加载所述目标启动类。
[0029]在一种可能的实施方式中,所述方法还包括:
[0030]接收所述第二服务器发送的虚拟机列表获取请求;
[0031]根据所述虚拟机列表获取请求,确定多个候选虚拟机;
[0032]针对任意一个候选虚拟机,获取所述候选虚拟机对应的进程标识;
[0033]根据所述进程标识,确定所述候选虚拟机是否允许绑定;
[0034]若是,则将所述候选虚拟机和所述候选虚拟机对应的进程标识加入虚拟机列表;
[0035]向所述第二服务器发送所述虚拟机列表。
[0036]第二方面,本申请提供一种SQL信息的确定装置,包括:
[0037]接收模块,用于接收第二服务器发送的绑定请求消息,所述绑定请求消息包括目标进程标识;
[0038]处理模块,用于根据所述目标进程标识,加载目标启动类;
[0039]所述处理模块还用于通过所述目标启动类,确定结构化查询语言SQL信息;
[0040]发送模块,用于向所述第二服务器发送所述SQL信息。
[0041]在一种可能的实施方式中,所述处理模块具体用于:
[0042]接收所述第二服务器发送的指示信息,所述指示信息用于指示获取SQL执行指标数据或获取数据库连接池指标数据;
[0043]根据所述指示信息,通过所述目标启动类确定所述SQL信息。
[0044]在一种可能的实施方式中,所述指示信息用于指示获取SQL执行指标数据,所述指示信息包括SQL拦截参数,所述SQL拦截参数包括目标SQL和SQL拦截时段;
[0045]所述处理模块具体用于:
[0046]通过所述目标启动类,加载增强接口;
[0047]通过所述增强接口,在所述SQL拦截时段内对所述目标SQL进行拦截,得到所述SQL信息,所述SQL信息包括所述目标SQL的入参、所述目标SQL的出参和所述目标SQL的执行时长。
[0048]在一种可能的实施方式中,所述指示信息用于指示获取数据库连接池指标数据,所述指示信息包括数据库连接池拦截时段;
[0049]所述处理模块具体用于:
[0050]通过所述目标启动类,获取所述数据库连接池的加载类;
[0051]通过所述数据库连接池的加载类,获取数据库连接池类;
[0052]根据所述数据库连接池类,在所述数据库连接池拦截时段内获取所述SQL信息,所述SQL信息包括所述数据库连接池指标数据。
[0053]在一种可能的实施方式中,所述处理模块具体用于:
[0054]通过反射加载所述数据库连接池类的数据库连接池对象;
[0055]在所述数据库连接池拦截时段内,在所述数据库连接池对象中获取所述数据库连接池对象的最大连接数、最小空闲连接数、活动连接数和总连接数,所述SQL信息包括所述最大连接数、所述最小空闲连接数、所述活动连接数和所述总连接数。
[0056]在一种可能的实施方式中,所述处理模块具体用于:
[0057]根据所述目标进程标识,确定目标虚拟机;
[0058]通过所述目标虚拟机,确定目标虚拟机信息;
[0059]根据所述目标虚拟机信息,加载所述目标启动类。
[0060]在一种可能的实施方式中,所述接收模块还用于,接收所述第二服务器发送的虚本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种SQL信息的确定方法,其特征在于,应用于第一服务器,所述方法包括:接收第二服务器发送的绑定请求消息,所述绑定请求消息包括目标进程标识;根据所述目标进程标识,加载目标启动类;通过所述目标启动类,确定结构化查询语言SQL信息;向所述第二服务器发送所述SQL信息。2.根据权利要求1所述的方法,其特征在于,所述根据所述目标启动类,确定SQL信息,包括:接收所述第二服务器发送的指示信息,所述指示信息用于指示获取SQL执行指标数据或获取数据库连接池指标数据;根据所述指示信息,通过所述目标启动类确定所述SQL信息。3.根据权利要求2所述的方法,其特征在于,所述指示信息用于指示获取SQL执行指标数据,所述指示信息包括SQL拦截参数,所述SQL拦截参数包括目标SQL和SQL拦截时段;所述根据所述指示信息,通过所述目标启动类确定所述SQL信息,包括:通过所述目标启动类,加载增强接口;通过所述增强接口,在所述SQL拦截时段内对所述目标SQL进行拦截,得到所述SQL信息,所述SQL信息包括所述目标SQL的入参、所述目标SQL的出参和所述目标SQL的执行时长。4.根据权利要求2所述的方法,其特征在于,所述指示信息用于指示获取数据库连接池指标数据,所述指示信息包括数据库连接池拦截时段;所述根据所述指示信息,通过所述目标启动类确定所述SQL信息,包括:通过所述目标启动类,获取所述数据库连接池的加载类;通过所述数据库连接池的加载类,获取数据库连接池类;根据所述数据库连接池类,在所述数据库连接池拦截时段内获取所述SQL信息,所述SQL信息包括所述数据库连接池指标数据。5.根据权利要求4所述的方法,其特征在于,所述根据所述数据库连接池,在所述数据库连接池拦截时段内获取所述SQL信息,包括:通过反射加载所述数据库连接池类的数据库连接池对象;在所述数据库连接池拦截时段内,在所述数据库连接池对象中获取所述数据库连接池对象的最...

【专利技术属性】
技术研发人员:白小迪杨晓兵王东马姿于爽
申请(专利权)人:中原银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1