UAVStack的慢SQL数据库监控功能及其实现

2023-10-17 1405阅读

UAVStack是一个综合监控和应用运维平台。UAV.Monitor具有监控功能,包括基础监控、应用/服务性能监控、日志监控、业务监控等。在应用监控中,无人机可以根据应用实例进行Profile; 应用程序实例组件可以分析日志、服务、客户端等; 基于客户端画像分为Http、Dubbo、MQ、Kafka、JDBC、Redis、MongoDB等。排查问题后,我们发现是SQL速度慢影响了整体的功能体验。最初,数据库监控功能仅收集数据源和数据库连接池的指标。近期,UAVStack解锁了一个新功能——慢SQL监控,使得数据库监控功能更加完善。今天给大家介绍一下数据库监控的具体实现。然后通过UAVServer调用具体的Supporter,最终实现数据落地。

UAVStack是一个综合监控和应用运维平台。 UAV.Monitor具有监控功能,包括基础监控、应用/服务性能监控、日志监控、业务监控等。在应用监控中,无人机可以根据应用实例进行Profile; 应用程序实例组件可以分析日志、服务、客户端等; 基于客户端画像分为Http、Dubbo、MQ、Kafka、JDBC、Redis、MongoDB等。

一、背景

作为一名工作多年的程序员或者运维人员,相信你一定遇到过以下情况:

· 场景一:系统出现异常,运维人员未能及时发现。 反而业务方反馈在使用过程中系统崩溃,页面打不开。 检查系统日志,发现连接数据库时一直报异常;

· 场景二:新功能上线稳定运行一段时间后,用户反映页面响应越来越慢,打开页面需要很长时间。 排查问题后,我们发现是SQL速度慢影响了整体的功能体验。

为此,UAVStack开发了数据库监控功能。 最初,数据库监控功能仅收集数据源和数据库连接池的指标。 通过客户端画像可以查看实时数据库连接池信息和操作计数。 近期,UAVStack解锁了一个新功能——慢SQL监控,使得数据库监控功能更加完善。

今天给大家介绍一下数据库监控的具体实现。 文章中出现的以下所有关键词均替换为其缩写:

· 中间件增强框架:英文MonitorFramework,简称MOF

· 健康管理服务:英文HealthManager,简称HM

·监控代理程序:英文MonitorAgent,简称MA

2. 关键技术及无人机自研框架

UAVStack的慢SQL数据库监控功能及其实现

· MOF Agent 注入机制:MOF Agent 的注入机制基于Java Agent 和Javaassit 技术。 Java代理负责拦截并转换字节码流。 在转换过程中,使用Javaassist对其进行解析和修改。 它在应用服务器生命周期的关键位置注入切点,为MOF框架初始化、应用画像信息和实时监控数据信息捕获提供基础。 。

· InterceptFramework框架:重写应用启动特定生命周期的字节码,植入特定逻辑处理代码,即画像数据采集。 收集的数据包括服务画像和客户画像; 客户端画像包括Http、Dubbo、MQ、Kafka、JDBC、Redis、MongoDB等常见开源组件,系统中调用的第三方服务都会被列为客户端对象。 例如系统中调用的第三方系统的接口就属于客户端的范畴。

· CaptureFramework框架:InterceptFramework框架重写特定生命周期的字节码,植入特定的逻辑代码。 在植入的逻辑代码中,可以通过CaptureFramework肖像的Monitor采集系统的能力来采集和存储数据。 具体实现是使用doCapture实现在特定捕获点捕获数据的行为,并使用doPreStore实现在存储数据结构之前的一些捕获动作,对捕获的数据进行特殊的数据处理,并获取处理后的数据。 然后通过UAVServer调用具体的Supporter,最终实现数据落地。

3. 组件

慢SQL监控的实现分为四个部分:

· 慢SQL的动态启停:慢SQL的监控启停依赖于MOF的Global Filter机制。 在应用程序初始化期间,UAV重写应用程序的Filter并提供向MOF发出指令的接口。 只要调用接口并传入指定的参数,就可以动态启动和停止慢SQL监控。 无人机系统中没有其他服务直接调用MOF。 所有的操作都是通过MA完成的。 你可以将MA理解为服务请求者和MOF之间的中介。

· SQL数据采集速度慢:依靠InterceptFramework框架重写字节码并在特定生命周期中嵌入特定逻辑,并使用MOF的CaptureFramework框架捕获数据并生成捕获结果。 MA会定期收集生成的文件并将其封装成固定的数据结构并发送给MQ。

· 数据存储:在HM中创建独立的feature进行数据处理,消费MA推送到MQ的数据,完成数据清洗后存储在ES中。 由于数据采集结果有特殊约定,从MQ中获取的数据无法直接转换为相应的结果。 存储之前需要进行相应的解析处理(因为采集到的数据字段较多,可能含有特殊字符,会影响数据的分析,只有在生成数据结果时有规则约束,才能实现数据的正确分析)。 数据库监控功能还提供了相关接口,用于查询和统计慢SQL操作。

· 页面展示:操作页面可以独立启动和停止数据库监控,并设置慢SQL的时间阈值。 启动、停止和时间阈值的设置取决于MA向MOF发送指令。 页面上显示的SQL统计、跟踪等信息都是通过HM接口获取的。

4. 功能显示

目前实现的数据库监控功能有SQL分类统计、数据库连接池监控、慢SQL耗时分布统计、慢SQL统计、慢SQL跟踪、调用链/日志关联功能等。

UAVStack的慢SQL数据库监控功能及其实现

SQL分类统计:

· 数据来源:OpenTSDB(通过画像收集指标)

· 插入、删除、更新、查询、批量操作的分类统计

· 按时间分布显示数据库的访问状态,按时间分布显示数据库的访问状态,显示所选时间段的总访问次数(累计值)。

· 可自定义时间条件查询历史数据

UAVStack的慢SQL数据库监控功能及其实现

数据库连接池监控:

· 数据来源:OpenTSDB(通过画像收集指标)

· 可以查看连接池中连接总数、活动连接数、空闲连接数的变化曲线

UAVStack的慢SQL数据库监控功能及其实现

慢SQL耗时分布统计:

手机内存卡无法读取怎么办? 存储卡中存储着许多珍贵的文件和照片。 这些数据可能记录了用户生活中的美好时光,或者包含了未来会用到的重要数据。 因此,需要一款手机存储卡恢复工具来恢复数据。 本文将向您展示如何在手机存储卡损坏的情况下恢复数据,并帮助用户解决这个迫在眉睫的问题。

手机内存卡损坏如何修复

手机内存卡中存储着许多重要的照片和数据。 如果损坏,您应该立即开始寻找修复手机存储卡的方法。 这里我们列出两种可行的手机内存卡修复方法,分别针对两种不同的情况。 用户应根据自己存储卡的实际情况进行选择。

方法一:擦拭存储卡金手指

金手指是指存储卡上与内存插槽接触的部分。 电脑通过与金手指的接触来传输并读取存储卡中的数据。 这部分用来传输数据的部分一般由金属制成,整齐地排列在存储卡上,因此被称为金手指。 如果金手指上有污垢、氧化等痕迹,就会出现接触不良,电脑自然无法读取存储卡中的数据。

UAVStack的慢SQL数据库监控功能及其实现

解决办法:用橡皮、棉签、纸巾等软物轻轻擦拭金手指上的氧化和污垢,擦拭干净后尝试读取数据。 注意擦拭时不要用力,不要用硬物清理金手指上的异物和污垢。 硬物可能会划伤金属片,对金手指造成永久性物理损坏。

方法二:格式化存储卡

UAVStack的慢SQL数据库监控功能及其实现

如果存储卡无法读取,则可能是被木马病毒入侵。 用户可以先尝试使用杀毒软件检查是否有病毒。 如果杀毒软件无法有效检测出存储卡中的病毒,就只能格式化存储卡,删除存储卡中包含病毒的所有文件。 以下是格式化存储卡的正确步骤:

步骤1:使用读卡器将存储卡连接至电脑。 电脑识别到存储卡后,点击进入“电脑”。 右键单击存储卡,然后单击下拉列表中的“格式化”。

UAVStack的慢SQL数据库监控功能及其实现

第二步:在弹出的窗口中点击“开始”,存储卡格式化成功。

UAVStack的慢SQL数据库监控功能及其实现

以上就是修复手机存储卡的两种简单方法。 用户可以根据自己的存储卡情况选择恢复方法。 无论使用哪种修复方法,都不能保证存储卡中的所有照片和文件都能被电脑读取和恢复。 为了解决这个问题,下面给大家介绍一个完全恢复损坏的手机存储卡中数据的好方法,那就是使用数据恢复软件来恢复存储卡文件。

手机内存卡坏了如何恢复数据

本文列出了两种修复手机存储卡的方法,但这两种方法都不能100%保证能够找回用户的数据。 格式化存储卡甚至会导致数据丢失。 那么格式化后如何找回存储卡中的数据呢? 最有效的方法就是使用数据恢复软件——Data Frog Data Recovery Expert。

手机存储卡恢复软件_手机存储卡数据恢复_手机存储卡数据恢复软件

当存储卡内容无法读取时,Datafrog 数据恢复专家可以恢复存储卡上的数据。 如果用户在格式化存储卡时没有备份数据,Datafrog数据恢复专家还可以扫描用户的存储卡并恢复数据。 数据恢复专家是用户遇到存储卡问题时的好帮手。

步骤1:下载并安装Datafrog Data Recovery Expert。

步骤2:将存储卡连接至电脑。 打开Datafrog Data Recovery Expert,在主界面中选择存储卡,在文件类型中选择要恢复的文件类型。 如果要恢复存储卡中的所有数据,请选择全部。 单击“扫描”。

UAVStack的慢SQL数据库监控功能及其实现

第三步:等待扫描结果。 获得扫描结果后,用户可以通过保存路径和文件类型来找到需要恢复的文件。 如果扫描结果中没有找到需要恢复的文件,用户可以选择深度扫描,以花费更多时间寻找文件。 找到需要恢复的文件后,点击右下角的“恢复”。

UAVStack的慢SQL数据库监控功能及其实现

第四步:在弹出的窗口中选择文件保存路径。 选择保存路径后,点击“确定”。 用户选择的文件将被安全地保存回用户的计算机。

UAVStack的慢SQL数据库监控功能及其实现

如今,每个人都有手机,因此大量的日常数据和珍贵的照片也存储在存储卡中。 手机存储卡坏了如何恢复数据的问题也困扰着很多手机用户。 有了Data Frog数据恢复专家,用户可以不再担心此类问题。 如果手机存储卡损坏无法修复,Datafrog数据恢复专家可以帮助用户找回卡中的数据,恢复丢失的数据。

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]