OCP告警提示非预期的内部错误,请问怎么排查?

【 使用环境 】生产环境
【 OB or 其他组件 】OB
【 使用版本 】4.2.1.7
【问题描述】集群内的大多数节点提示:非预期的内部错误,errcode=5931,告警等级:严重
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)

【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!

您遇到了 OceanBase 4.2.1.7 版本中的非预期内部错误告警,错误码为 5931。为了更准确地定位问题,我们可以使用 obdiag 工具来收集相关信息并尝试进行初步的根因分析。

由于具体的错误码 5931 并未直接对应到 obdiag 的某个特定根因分析场景,我们首先进行日志采集,然后根据采集到的信息进一步判断是否可以进行根因分析。

日志采集场景: 未知问题

日志采集命令:

obdiag gather scene run --scene=observer.unknown

该命令会收集与当前集群状态相关的基本信息,包括但不限于日志文件、配置文件等,这有助于我们了解问题发生的上下文环境。

根据命令输出结果的建议:

  • 请执行上述命令并将生成的日志压缩包发送给我们。
  • 如果在日志中发现了更多关于错误 5931 的具体信息,我们将能够进一步指导您进行更深入的分析或提供针对性的解决方案。

为了更好地帮助您,请提供以下信息:

  1. 错误发生的时间点:请告知错误首次出现的具体时间,这有助于我们定位日志中的相关记录。
  2. 触发错误的操作:您在错误发生前进行了哪些操作?例如执行了特定的 SQL 语句或是进行了某种数据库管理操作?
  3. 集群配置信息:您的 OceanBase 集群是如何配置的?包括但不限于节点数量、硬件规格等。
  4. 错误详细信息:如果可能的话,请提供完整的错误消息,包括任何伴随的警告或提示信息。

具体信息可参考以下文档:

附上敏捷诊断工具 obdiag 使用帮助链接

麻烦发下ocp版本以及ocp上的告警截图,以及observer.log

部署在内网,日志拿不出来呢

如果您的集群部署在内网环境中,并且因为安全策略限制无法将日志文件直接导出,那么您可以尝试以下几种方法来排查问题:

  1. 使用 OCP 控制台进行诊断:登录 OCP 控制台,进入对应的集群页面,查看是否有相关的监控指标异常或告警信息。OCP 控制台提供了丰富的监控和诊断工具,可以帮助您快速定位问题。

  2. 远程登录到 OBServer 节点查看日志:通过 SSH 方式远程登录到出现问题的 OBServer 节点上,直接查看系统日志文件。通常情况下,OceanBase 的日志文件位于 /home/admin/oceanbase/log 目录下。您可以使用 tail -f 命令实时跟踪日志输出,以便观察错误发生时的日志信息。

  3. 使用 obdiag 工具在内网环境下运行诊断:即使不能将日志文件导出到外部网络,您也可以在内网环境中运行 obdiag 工具进行诊断。运行完诊断后,您可以直接在内网环境中查看生成的诊断报告,或者将报告文件通过内网传输方式发送给相关人员进行分析。

  4. 联系 OceanBase 技术支持团队:如果以上方法仍无法解决问题,建议您及时联系 OceanBase 的技术支持团队寻求帮助。他们拥有专业的技术知识和丰富的实践经验,能够为您提供更加详细的指导和支持。

希望以上建议对您有所帮助。如果您还有其他问题或需要进一步的帮助,请随时告诉我们。

具体信息可参考以下文档:

  1. 物理备库同步过程中卡住
  2. 常见内存问题
  3. 节点日志盘(Clog)空间满
  4. 发起全量数据备份
  5. OceanBase 术语
  6. trace log
  7. 暂停或开启日志同步
  8. 日志传输服务概述

(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)

非预期内部错误,这个报错的诊断排查需要上面提到的日志,看能否走个申请将文件拿出来

另外也可以使用 obidag analyze log --from xxxx --to xxxx 分析一下这条日志前后10分钟的日志,可以自己看下结果 也可以上传下
https://www.oceanbase.com/docs/obdiag-cn

这个告警频繁吗?

不规律,有时候一周告警一次,有时候两天告警一次

是MySQL模式吗?