使用format_obproxy_digest_log工具分析obproxy网络层耗时SQL

峰哥镇楼~~~!!


之前写过一个博客,介绍 ob_tools包 来实施抓取 observer 层的 gv$ob_sql_audit 的SQL,还提供一些分析SQL来通过不同维度分析缓慢的业务SQL语句,免得和应用扯皮说数据库执行SQL慢。

但是分析出服务端业务SQL语句执行时间还不够,应用也有可能会和你扯皮说obproxy转发慢,也不是不能查obproxy的日志来佐证,就日志里面的内容很难看,我经常懒得去看很烦,所以搞了个 format_obproxy_digest_log 工具来看proxy的转发耗时。

这样一来proxy(网络层)、server(服务端层) 有了一套完整分析业务SQL语句请求耗时的解决方案,妈妈再也不怕我和开发扯皮了,狠狠地给我怼死开发。🤞🤞🤞

******注意******** :这个工具只能用来分析 obproxy obproxy_digest.log ,我是基于obproxy 433版本的obproxy_digest.log日志格式写的工具,4.X的obproxy应该能用,以后的版本不敢保证。**

先介绍下obproxy obproxy_digest.log 日志

  obproxy_digest.log 是 OceanBase 数据库代理(OBProxy)的审计日志文件,主要用于记录执行时间超过指定阈值的 SQL 请求以及错误响应的请求。

  1. 记录慢查询和错误请求:

    • 慢查询:当 SQL 请求的执行时间超过 query_digest_time_threshold 参数设置的阈值时,该请求会被记录到 obproxy_digest.log 中。默认情况下,该阈值为 100 毫秒(在主站环境中默认值为 2 毫秒)。
    • 错误请求:所有执行错误的请求(包括 OBProxy 自身错误和 OBServer 返回的错误)也会被记录到该日志中。
  2. 日志内容:

    • 日志中包含了请求的详细信息,如日志打印时间、应用名、TraceId、RpcId、物理库信息(cluster:tenant:database)、数据库类型(OB 或 RDS)、逻辑表名、物理表名、SQL 命令、SQL 类型(CRUD)、执行结果(success 或 failed)、错误码、SQL 执行总耗时、预执行时间、链接建立时间、数据库执行时间等。

  ob官网链接:obproxy_digest.log-V4.3.3-OceanBase 数据库代理文档-分布式数据库使用文档

看完上面介绍的同学就知道 obproxy_digest.log 日志里面的内容有多难看了,神烦,就直接开始介绍 format_obproxy_digest_log 工具。

文件下载:

通过网盘分享的文件:format_obproxy_digest_log
链接: https://pan.baidu.com/s/14QvqWyV83yn3xhO_PGqqOQ?pwd=j9j4 提取码: j9j4
--来自百度网盘超级会员v9的分享

如果分享地址失效了,可以邮箱联系我发给你:842107948@qq.com

下载到format_obproxy_digest_log文件后上传到Linux服务器,先赋个权限:

复制代码
chmod +x format_obproxy_digest_log

如果不知道这玩意整么用可以执行一下命令:

复制代码
./format_obproxy_digest_log

使用方式很简单,最后演示下这个输出的日志:

最后想说一下,虽然我文章开头吐槽了一下OB** ,但是吐槽的是OB的日志格式内容不好看,用过OB的人都知道,无论是observer还是obproxy,那日志内容恶心得一批。**

之前我玩其他数据库出了问题经常看日志,但是自从搞了OB以后,我养成了不看日志的习惯。😂😂😂😂

无可否认,在当前的国产信创数据库产品中,无论从架构设计、易用性、性能、兼容性,公司研发实力,还是配套生态等方面来看,就目前在我心目中来说,OceanBase是当之无愧的国产第一数据库(发自内心的真心话!!!!)

诸多因素后面决定不在OB干了,还是希望公司的发展能越来越好,产品能越来越完善。

相关推荐
OceanBase数据库官方博客7 天前
OceanBase DataStudio:让 AI数据生产从拼装走向一体化(技术解析与
人工智能·oceanbase
Database_Cool_9 天前
阿里云 PolarDB-X vs OceanBase 国产分布式数据库深度对比
分布式·阿里云·oceanbase
AllData公司负责人12 天前
数据库同步平台|AIIData数据中台实现OceanBase、达梦数据库、OpenGauss、人大金仓、Hive、TDengine 一键接入Doris
大数据·数据库·hive·mysql·oceanbase·tdengine
OceanBase数据库官方博客14 天前
OceanBase AI 时代,数据库的变与不变(技术解析与实践)
数据库·人工智能·oceanbase
程序员cxuan14 天前
OceanBase 为什么要做 AI 数据库?
数据库·人工智能·大模型·llm·oceanbase
OceanBase数据库官方博客14 天前
基于 OceanBase 湖库一体架构,构建 AI 时代的数据基础设施
人工智能·架构·oceanbase
OceanBase数据库官方博客15 天前
OceanBase Lakebase 架构解析:独立部署与智能叠加层模式的技术实践
架构·oceanbase
OceanBase数据库官方博客1 个月前
OceanBase + Flink 数据集成(第二部分):通过 JDBC 协议实现实时数据同步
大数据·flink·oceanbase
OceanBase数据库官方博客1 个月前
OceanBase × Flink 数据集成系列——旁路导入连接器的批量写入能力
架构·kubernetes·oceanbase