2011-03-31 6 views
3

저는 ActiveMQ를 상당히 새로운 사용자로 사용하고 있으며 대기열 연결의 클라이언트 측에서 자세한 디버그 정보를 얻을 수있는 방법을 찾고 있습니다. 내 문제는 이것입니다 : 클라이언트에 대기열을 통해 메시지를 보내는 서버가 있습니다. 브로커와 관련된 admin 웹 페이지를 사용하여 다음과 같은 내용을 확인할 수 있습니다. 대기열이 생성되었으며 대기열과 연관된 소비자가 있습니다. 메시지가 대기열에 추가되고 메시지가 발송되고 발송 된 대기열 크기는 1, 메시지가 대기열에서 제외되지 않았습니다. 이 설정은 어제 작동했지만 오늘 activemq 서비스를 다시 시작했지만 신비하게도 작동을 멈췄습니다. /var/log/activemq.log의 로그 파일에는 유용한 정보가 없습니다.ActiveMQ 클라이언트를 디버깅하는 방법은 무엇입니까?

이 시점에서 나는 혼란 스럽습니다. 나는 구성에 문제가 있다고 가정하고 있지만 어제부터 변경되지 않았습니다. 아무도 내 다음 단계가 무엇인지에 대한 제안을 가지고 있습니까?

답변

4

먼저 conf/log4j.properties에서 브로커의 디버그 (또는 추적) 로깅을 활성화하십시오. log4j.logger.org.apache.activemq = DEBUG

다시 시작 브로커 및 다시 실행 시나리오를. 로깅은 당신에게 약간의 정보를 제공 할 것입니다. Jconsole은 실행중인 브로커를 모니터링하는 유용한 도구이기도합니다.

클라이언트가 메시지 필터를 사용합니까?

+0

없음 메시지 필터를 연결하지하는

$ ACTIVEMQ_DEBUG=true bin/activemq

을 실행 한 다음 원격 디버거를 시작 시작하려면, 내가 루트 아니라서 정말 브로커 구성을 제어 할 수 없습니다 유용한 정보). 전송 대기중인 바이트를 수신했는지 여부에 대한 클라이언트 쪽에서 낮은 수준의 정보를 얻을 수있는 방법이 있습니까? –

0

원격 디버깅을 사용하도록 설정 한 다음 IDE로 연결할 수도 있습니다. ( 원격 디버깅 포트에 5005 개

관련 문제