跳至主要内容
版本:4.0

故障排除指南

概述

本指南概述了与 RabbitMQ 安装和基于消息的系统故障排除相关的几个主题

节点内存使用情况、指标和监控、TLS 等。

监控、指标和健康检查

生产系统故障排除的一个非常重要的方面是 监控和健康检查。它们收集可以检查和分析的数据,帮助识别和检测异常。

日志记录

日志是故障排除的另一个重要信息来源。单独的 日志记录指南 说明了在哪里查找日志文件、如何调整日志级别、存在哪些日志类别、可以使用日志文件检测的连接生命周期事件等等。

节点配置

配置指南 包含关于 查找配置文件 的部分。

可以使用 rabbitmqctl environment 以及许多 rabbitmq-diagnostics 命令来检查有效的节点配置。

CLI 工具连接和身份验证

CLI 工具指南 说明了 CLI 工具如何对节点进行身份验证、Erlang cookie 文件是什么以及 CLI 工具无法在服务器节点上执行操作的最常见原因。

集群形成

集群形成指南 包含一个 故障排除部分

内存使用情况分析

关于内存使用的推理 是关于该主题的专用指南。

网络和连接

网络故障排除 是关于网络和连接主题的专用指南。

身份验证和授权

访问控制指南 包含关于 客户端身份验证故障排除授权故障排除 的部分。

运行时崩溃转储文件

当 Erlang 运行时系统异常退出时,名为 erl_crash.dump 的文件将写入 RabbitMQ 启动的目录。此文件包含运行时在异常退出时的状态。终止原因将在前几行中显示,以 Slogan 开头,例如:

head -n 3 ./erl_crash.dump
# => =erl_crash_dump:0.5
# => Sun Aug 25 00:57:34 2019
# => Slogan: Kernel pid terminated (application_controller) ({application_start_failure,rabbit,{{timeout_waiting_for_tables,[rabbit_user,rabbit_user_permission,rabbit_topic_permission,rabbit_vhost,rabbit_durable_r

在此特定示例中,标语(未捕获的异常消息)表示已启动的节点超时 与其对等节点同步模式元数据,这可能是因为它们未在配置的时间窗口内上线。

为了更好地理解来自 崩溃转储文件 的 Erlang 运行时状态,可以将其可视化。崩溃转储查看器工具 cdv 是 Erlang 安装的一部分。cdv 二进制文件路径取决于 Erlang 版本及其安装位置。

这是一个调用它的示例

/usr/local/lib/erlang/lib/observer-2.9.1/priv/bin/cdv ./erl_crash.dump

上述命令的成功结果将打开一个类似于此的新应用程序窗口

Erlang Crash Dump Viewer

为了使上述操作正常工作,系统必须具有图形用户界面,并且 Erlang 必须同时使用 observer 和 Wx 支持进行编译。

连接

连接指南 说明了如何识别应用程序连接泄漏和其他相关主题。

通道

通道指南 说明了 通道级异常 的含义、如何识别应用程序通道泄漏和其他相关主题。

TLS

TLS 故障排除 是关于 TLS 主题的专用指南。

LDAP

LDAP 指南 说明了如何启用 LDAP 决策和查询日志记录。

OAuth 2.0

OAuth 2.0 是关于 OAuth 2.0 主题的专用指南。

捕获流量

流量捕获 可以提供大量有用的信息,这些信息在对网络连接、应用程序行为、连接泄漏、通道泄漏等进行故障排除时很有用。tcpdump 和 Wireshark 是用于捕获和分析网络流量的行业标准开源工具。

© 2024 RabbitMQ. All rights reserved.