暂无图片
暂无图片
3
暂无图片
暂无图片
暂无图片

OceanBase管理数据库全链路诊断概述

2023-10-15
296

OceanBase 数据库是分布式数据库,因此调用链路复杂,当出现超时问题的时,往往无法快速定位是 OceanBase 内部组件或是网络的问题,运维人员只能根据经验和 observer 日志进行分析。本版本新增全链路诊断机制,期望能够帮助用户快速定位组件内部的问题所在。

全链路有两条路径,一条是 从 应用 通过客户端 (JDBC 或 OCI 等) 下方请求给 ODP(代理服务器)访问 OBServer,访问结果返回给应用;另一条是 从 应用 通过客户端 (JDBC 或 OCI 等) 直接访问 OBServer,访问结果返回给应用。全链路诊断是对全链路所有组件进行问题定位的诊断。用户可以通过客户端访问 OceanBase 数据库,客户端的请求经由 OBProxy 分发到 OBServer 或直接访问 OBServer,在此过程中,运维人员可根据运维需要,通过使用 PL/SQL 程序包 DBMS_MONITOR 中相关方法,控制相关应用程序根据不同标识信息维度判断是否开启全链路诊断 trace,以及该 trace 的相关信息打印到 trace 日志。trace 日志会根据访问路径的情况判断日志打印,经由 ODP 访问数据库的,则会记录相关日志到 OBProxy 和 OBServer 对应的日志文件中;直接访问 OBServer ,则仅记录日志到 OBServer 对应的日志文件中。OBProxy 的 trace 日志文件为 obproxy_trace.log, OBServer 的 trace 日志文件为 trace.log。 trace 日志文件每个大小为 256M,日志写满 256M 后,会开始写新的 trace.log,之前的文件会被归档,归档的文件数量由相关归档参数控制,超出部分会被删除。运维人员通过对所有 trace 日志进行搜集分析后,可以追踪每个事务或每个 SQL 在整条链路中的执行耗时等相关信息,以此帮助运维人员定位整条访问链路的问题所在。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论