zoukankan      html  css  js  c++  java
  • 消息队列系列:Rabbitmq Trace 日志的使用

    一、什么是Trace

         Trace是Rabbitmq用于记录每一次发送的消息,方便使用Rabbitmq的开发者调试、排错。可通过插件形式提供可视化界面 

    二、Trace实现概况

         1、Trace启动后会自动创建系统Exchange:amq.rabbitmq.trace

         2、每个队列会自动绑定该Exchange,绑定后发送到队列的消息都会记录到Trace日志 

    三、怎样使用Trace

         1、先了解Rabbitmq的使用及Web监控工具的使用:http://www.cnblogs.com/gossip/p/4475978.html

         2、启动Trace插件

             a) 列出本机已安装的插件:rabbitmq-plugins list(请先定位到Rabbitmq服务安装目录)

             b) 启动Trace插件:rabbitmqctl trace_on   (关闭Trace:rabbitmqctl trace_off)

         3、查看捕获到的Trace信息

             a) Management插件-->Admin-->Trace

             b) 新增Trace,格式分别是Text(方便人类阅读)、Json(方便机器识别)

             c) 发送消息,查看Trace拦截的信

            d) 查看日志信息 (单击日志文件打开,这里是MyTrace.log) 

    三、总结

         1、Rabbitmq的资料比较少,建议大家还是多看官方文档

         2、Trace主要通过插件方式提供

         3、Trace日志文件地址:C:var mp abbitmq-tracingMyTrace.log 

    四、Rabbitmq启用日志功能记录消息队列收发情况

         1、启用日志插件命令

              rabbitmq-plugins enable rabbitmq_tracing

         2、到管理界面添加tracing

             点击“Admin”菜单,右边会多出一个“Tracing”的菜单,填写Name、Format、Max payload bytes、Pattern  然后点击“添加Add trace”即可添加一个日志

           

      填写说明

       Name:自定义,建议标准点容易区分 

       Format:表示输出的消息日志格式,有Text和JSON两种,Text格式的日志方便人类阅读,JSON的方便程序解析。 

       JSON格式的payload(消息体)默认会采用Base64进行编码,如上面的“trace test payload.”会被编码成“dHJhY2UgdGVzdCBwYXlsb2FkLg==”。

       Max payload bytes:表示每条消息的最大限制,单位为B。比如设置了了此值为10,那么当有超过10B的消息经过Rabbit MQ流转时,在记录到trace文件的时候会被截断。

       如上text日志格式中“trace test payload.”会被截断成“trace test”。

       Pattern:用来设置匹配的模式,和Firehose的类似。如“#”匹配所有消息流入流出的情况,即当有客户端生产消息或者消费消息的时候,会把相应的消息日志都记录下来;

      “publish.#”匹配所有消息流入的情况;“deliver.#”匹配所有消息流出的情况;“publish.exchange.b2b.gms.ass”只匹配发送者(Exchanges)为exchange.b2b.gms.ass的所有消息流入的情况。

     
     
  • 相关阅读:
    C++中的结构体
    C++转换
    C++常见问题解答
    hdu 1491
    hdu 1253
    [恢]hdu 2529
    [恢]hdu 2539
    hdu 1708
    [恢]hdu 2512
    [恢]hdu 2401
  • 原文地址:https://www.cnblogs.com/li150dan/p/9529049.html
Copyright © 2011-2022 走看看