首批通过分布式安全可靠测评,为关键业务系统打造
一键根因分析
更新时间:2024-02-02 14:46:20
本文适用于独立部署 obdiag 的场景,使用 obdiag rca 命令可帮助 OceanBase 数据库相关的诊断信息分析,目前支持对 OceanBase 的异常场景进行分析,找出可能导致问题的原因。
如果是 OBD 部署的集群,可直接通过 OBD 侧诊断命令组对所选集群进行信息收集,详细命令可参考 诊断工具命令组。
注:由于根因分析需要大量的内部表数据来进行分析,因此obdiag配置文件中的tenant_sys用户需要有oceanbase库下的表及视图的读权限
rca 命令组总览
obdiag rca list
obdiag rca run --scene=<scene_name>
scene_name 包含如下:
- disconnection:一键断连诊断,基于obproxy的诊断日志。
- major_hold: 一键卡合并诊断。
- lock_conflict: 一键锁冲突诊断。
obdiag rca list
使用该命令可以获取根因分析目前支持的场景
obdiag rca run --scene=<scene_name>
选项说明如下:
| 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|---|
| --scene | 否 | string | 默认为空 | 需要进行的根因分析场景,可通过 obdiag rca list 查看支持的场景列表 |
| --result-path | 否 | string | 默认为./rca | 根因分析结果保存路径 |
示例:分析断连的场景
obdiag rca run --scene=disconnection
结果:
+-----------------------------------------------------------------------------------------------------------+
| record |
+------+----------------------------------------------------------------------------------------------------+
| step | info |
+------+----------------------------------------------------------------------------------------------------+
| 1 | node:xxx.xxx.xxx obproxy_diagnosis_log:[2024-01-18 17:48:37.667014] [23173][Y0-00007FAA5183E710] |
| | [CONNECTION](trace_type="CLIENT_VC_TRACE", connection_diagnosis={cs_id:1065, ss_id:4559, |
| | proxy_session_id:837192278409543969, server_session_id:3221810838, |
| | client_addr:"xxx.xxx.xxx.xxx:xxxx", server_addr:"xxx.xxx.xxx.xxx:2883", cluster_name:"obcluster", |
| | tenant_name:"sys", user_name:"root", error_code:-10010, error_msg:"An unexpected connection event |
| | received from client while obproxy reading request", request_cmd:"COM_SLEEP", sql_cmd:"COM_END", |
| | req_total_time(us):5315316}{vc_event:"VC_EVENT_EOS", user_sql:""}) |
| 2 | cs_id:1065, server_session_id:3221810838 |
| 3 | trace_type:CLIENT_VC_TRACE |
| 4 | error_code:-10010 |
+------+----------------------------------------------------------------------------------------------------+
The suggest: Need client cooperation for diagnosis