2009-03-17 6 views
2


JMX를 통해 tomcat에 연결 중입니다. tomcat에 연결하고 다른 JMX MBean 속성을 읽어 tomcat을 모니터하는 간단한 JMX 클라이언트를 작성했습니다. 내 문제는, 어떤 포트 tomcat의 HTTP 커넥터가 수신 대기 중인지 알고 싶습니다. Tomcat의 server.xml 파일을 읽지 않고 JMX Mbean에 대한 세부 정보를 얻을 수있는 방법이 있습니까? 그러나 하나의 MBean의 속성을 통해이를 얻으려면?JMX MBeans의 tomcat HTTP 커넥터 포트를 이해하십시오.

답변

0

MBean은 Catalina:type=ThreadPool,name=http-8080과 같이 호출됩니다. 보시다시피 커넥터 포트가 이름에 있습니다.

+0

와 그 속성에 대해 조회 할 수 있습니다 jmx4perl 사용하고 9090에서 실행되는 경우 - 다음 빈의 이름이 카탈 될 것입니다 : 타입 = ThreadPool, name = http-9090. 이 경우, http 커넥터가 실행중인 포트를 알아야합니다. – Shamik

+0

이 경우 포트 9090에서 실행됩니다. 스레드 풀의 이름은 http 커넥터의 포트를 반영합니다. –

+0

아마 하나의 바보 같은 질문 -하지만 내 질문은 - 거기에 프로그램 방식으로 콩의 이름을 알 수있는 방법은 무엇입니까 바람둥이 노출? – Shamik

1

각 커넥터마다 전용 MBean이 있습니다. *:type=Connector,*에 대해 질의하여 해당 MBean의 ObjectName을 모두 사용할 수 있습니다. 물론 하나 이상의 커넥터가있을 수 있습니다. 이러한 MBean에는, 포토 번호를 문의 할 수있는 속성 port가 있습니다.

당신이 바람둥이가 8080에서 실행되고 있지 않으면 쉽게

jmx4perl http://localhost:8080/jolokia read *:type=Connector,* port 

{ 
    "Catalina:port=8009,type=Connector" => { 
    port => 8009 
    }, 
    "Catalina:port=8080,type=Connector" => { 
    port => 8080 
    } 
} 
관련 문제