2015-09-01 2 views

ответ

0

Стандартная клиентская библиотека Java com.rabbitmq:amqp-client:3.5.4 содержит Tracer инструмент, который работает как автономный прокси между клиентом и брокером. Он регистрирует все команды AMQP, которые проходят через него до System.out.

Это описано здесь: http://www.rabbitmq.com/java-tools.html

Вот пример его вывода:

1441190584927: <Tracer-0> ch#1 -> {#method<channel.open>(out-of-band=), null, ""} 
1441190584968: <Tracer-0> ch#1 <- {#method<channel.open-ok>(channel-id=), null, ""} 
1441190585008: <Tracer-0> ch#1 -> {#method<confirm.select>(nowait=false), null, ""} 
1441190585047: <Tracer-0> ch#1 <- {#method<confirm.select-ok>(), null, ""} 
1441190585090: <Tracer-0> ch#1 -> {#method<basic.publish>(ticket=0, exchange=node.confirm.publish, routing-key=, mandatory=false, immediate=false), #contentHeader<basic>(content-type=string/utf8, content-encoding=null, headers=null, delivery-mode=2, priority=null, correlation-id=null, reply-to=null, expiration=null, message-id=null, timestamp=null, type=null, user-id=null, app-id=null, cluster-id=null), "some message"} 
1441190585128: <Tracer-0> ch#1 <- {#method<channel.close>(reply-code=404, reply-text=NOT_FOUND - no exchange 'node.confirm.publish' in vhost '/', class-id=60, method-id=40), null, ""} 
-1

вам необходимо изменить конфигурацию rabbimq. см. this page for configuration settings.

конкретно, вы хотите установить что-то вроде «информации» или «отладки» для любого интересующих вас:

[ 
    {log_levels, [ 
    {channel, debug}, 
    {connection, debug} 
    ]} 
]. 

С этой страницы, искать log_levels и вы найдете эту конфигурацию информация:

Управление зернистостью лесозаготовок. Значение представляет собой список категорий событий журнала и пар журналов.

Уровень может быть одним из «ни одного» (события не регистрируются), «ошибка» (регистрируются только ошибки), «предупреждение» (регистрируются только ошибки и предупреждения), «информация» (ошибки, предупреждения и информационные сообщения регистрируются) или «отладка» (ошибки, предупреждения, информационные сообщения и сообщения отладки регистрируются).

В настоящее время определены четыре категории. Другие, в настоящее время не классифицированные, события всегда регистрируются.

В категории:

  • канал - для всех событий, связанных с AMQP каналов
  • соединения - для всех событий, связанных с сетевыми соединениями
  • федерации - для всех событий, относящихся к федерации
  • зеркального отображения - по всем событиям, касающимся зеркальных очередей

По умолчанию: [{connection, info} ]

+0

Я пытался поставить '{log_levels, [{подключение, отладка}, {канал отладки}]}' в my rabbitmq.config, но я не вижу, чтобы команды AMQP регистрировались. Я проверил, что мой файл конфигурации используется, установив уровень журнала на «none» и наблюдая, что ничего не регистрируется. Что мне не хватает? – wheleph

Смежные вопросы