分布式消息服务RABBITMQ版-使用rabbitmq_tracing插件:使用rabbitmq_tracing插件

时间:2023-11-09 14:33:24

使用rabbitmq_tracing插件

  1. 开启rabbitmq_tracing插件,具体步骤请参考开启实例插件
  2. 登录RabbitMQ WebUI页面
  3. 在顶部导航栏选择“Admin”,进入Admin页面。
  4. 在右侧导航栏选择“Virtual Hosts”,进入Virtual Hosts页面。

    图1 Virtual Hosts页面

  5. 单击待创建trace的Vhost名称,进入Vhost详情页面。

    图2 待创建trace的Vhost名称

  6. 在“Permissions”区域,为Vhost添加guest权限。

    使用trace功能的Vhost必须配置guest权限,否则创建trace时会报错。
    图3 为Vhost添加guest权限

  7. 在右侧导航栏选择“Tracing”,进入Tracing页面。

    图4 Admin页面

  8. 在“Add a new trace”区域,输入以下参数,单击“Add trace”,新增一个trace。

    表1 trace参数说明

    参数

    说明

    Virtual host

    选择待创建trace的Vhost名称。

    Name

    自定义trace的名称,用于区分不同的trace。

    Format

    输出消息日志的格式。支持“Text”和“JSON”两种格式,“Text”格式方便阅读,“JSON”格式方便解析。

    Tracer connection username

    指定创建trace的用户名。

    Tracer connection password

    指定创建trace的密码。

    Max payload bytes

    每条消息的最大限制,单位为B。

    假设“Max payload bytes”设置为“10”,当有超过10B的消息经过RabbitMQ流转时就会被载断,例如“trace test payload”会被载断成“trace test”。

    Pattern

    设置匹配的模式。取值示例如下:

    • #:追踪所有进入和离开RabbitMQ的消息
    • publish.#:追踪所有进入RabbitMQ的消息
    • deliver.#:追踪所有离开RabbitMQ的消息
    • publish.delay_exchange:追踪进入指定交换机的信息,delay_exchange为交换机名称,请根据实际情况修改。
    • deliver.delay_queue:追踪离开指定队列的消息,delay_queue为队列名称,请根据实际情况修改。
    图5 新增一个trace

    trace创建成功后,在“All traces”区域,显示已创建的trace列表。

    图6 trace列表

  9. (可选)如果RabbitMQ实例为集群,在“Node”中切换到其他节点,重复8,为其他所有节点创建trace。

    图7 切换节点

  10. 当trace日志文件中存入消息日志后,单击trace日志文件名称,查看日志内容。

    图8 trace日志文件

    “delay_exchange_trace.log”的日志内容如图9所示。

    图9 delay_exchange_trace.log

    “delay_queue_trace.log”的日志内容如图10所示。

    图10 delay_queue_trace.log

support.huaweicloud.com/usermanual-rabbitmq/rabbitmq_ug_0007.html