[发明专利]结构化查询语言SQL系统的监控方法、装置及电子设备在审
申请号: | 202110534846.3 | 申请日: | 2021-05-17 |
公开(公告)号: | CN113127505A | 公开(公告)日: | 2021-07-16 |
发明(设计)人: | 刘寒依;赵鑫 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F11/30 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 项京;高莺然 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 结构 查询 语言 sql 系统 监控 方法 装置 电子设备 | ||
本申请实施例提供了一种结构化查询语言SQL系统的监控方法、装置及电子设备,方法包括:通过连接,向SQL数据库发送SQL语句;通过连接,获取针对SQL语句的运行结果;当运行结果指示SQL系统中存在异常时,利用连接关联的异常拦截器,对运行结果进行解析,得到SQL系统的异常信息。应用本申请实施例的技术方案,能够拦截发送的SQL语句,或拦截接收的运行结果,可以对整个SQL系统进行监控,无需封装所有相关的SQL语句操作,降低了代码侵入性,提高了SQL系统的监控灵活性。
技术领域
本申请涉及客户端侧监控的技术领域,特别是涉及一种结构化查询语言SQL系统的监控方法、装置及电子设备。
背景技术
SQL(结构化查询语言,Structured Query Language)数据库的使用非常广泛,为了更加清楚的了解SQL数据库调用的详细状态,需要对SQL系统的调用情况进行监控。SQL系统包括客户端、SQL数据库、客户端与SQL数据库之间的连接等。
目前,为了解决上述问题,多采用代理模式的SQL系统的监控方法,具体为:代理设备内部封装所有相关的SQL语句操作,在发送SQL语句之前记录发送时间,SQL数据库返回运行结果后,对监控数据进行收集。
这种SQL系统的监控方法,代码侵入性太大。一旦更换SQL数据库的连接池,或者更换表结构到对象之间的映射方式,代理设备内部的实现码也需要同步调整。
发明内容
本申请实施例的目的在于提供一种SQL系统的监控方法、装置及电子设备,以降低代码侵入性,提高SQL系统的监控灵活性。具体技术方案如下:
第一方面,本申请实施例提供了一种SQL系统的监控方法,应用于客户端,所述客户端上设置有异常拦截器,所述异常拦截器与所述客户端和SQL数据库之间的连接关联,所述方法包括:
通过所述连接,向所述SQL数据库发送SQL语句;
通过所述连接,获取针对所述SQL语句的运行结果;
当所述运行结果指示所述SQL系统中存在异常时,利用所述连接关联的所述异常拦截器,对所述运行结果进行解析,得到所述SQL系统的异常信息。
可选的,所述客户端设置有语句拦截器,所述语句拦截器与所述客户端和SQL数据库之间的连接关联;所述方法还包括:
在向所述SQL数据库发送SQL语句之前,利用所述连接关联的所述语句拦截器,记录所述SQL系统的第一系统时间;
在获取到所述运行结果之后,利用所述连接关联的所述语句拦截器,记录所述SQL系统的第二系统时间;
根据所述第一系统时间和所述第二系统时间,确定所述SQL系统的运行状态。
可选的,所述通过所述连接,获取针对所述SQL语句的运行结果的步骤,包括:
若当前时刻通过所述连接未接收到所述SQL数据库反馈的运行结果,且所述第一系统时间与所述当前时刻之间的时间差超过预设等待时长,则确定通过所述连接,获取到指示所述SQL系统中存在网络超时的运行结果。
可选的,所述方法还包括:
当利用所述连接关联的所述异常拦截器,得到指示所述SQL系统中存在网络超时的异常信息后,切断所述连接,并与所述SQL数据库建立新的连接。
可选的,所述根据所述第一系统时间和所述第二系统时间,确定所述SQL系统的运行状态的步骤,包括:
计算所述第一系统时间与所述第二系统时间之间的差值,作为所述SQL语句的处理延迟;
根据预设统计时长内多条所述SQL语句的处理延迟,确定所述SQL系统的SQL语句处理速率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110534846.3/2.html,转载请声明来源钻瓜专利网。