2016-10-18 11 views

답변

3

executor.getThreadPoolExecutor().getQueue().size()

이 경우 편집

@ManagedResource 
public class MyTEMBean { 

    private final ThreadPoolTaskExecutor te; 

    public MyTEMBean(ThreadPoolTaskExecutor te) { 
     this.te = te; 
    } 

    @ManagedAttribute 
    public int getQueueSize() { 
     this.te.getThreadPoolExecutor().getQueue().size(); 
    } 

} 
+0

단순히 응용 프로그램을 쿼리 jmxtrans 에이전트 https://github.com/jmxtrans/jmxtrans-agent을 사용하려는 경우, 내가해야 내 자신의 executor가이 클래스를 확장하고 대기열 크기에 getter를 추가하도록하십시오. 이것이 올바른 방법으로 들리니? – edi

+0

또는 원하는 속성을 표시하는 간단한 MBean 래퍼 - 서브 클래스 일 필요는 없습니다. –

+0

지식 부족에 대해 용서해주십시오. jmx가 속성을 노출해야하는 게터가 필요하다고 생각했습니다. ThreadPoolTaskExecutor에 이러한 getter가없는 경우 및 구현을 위해 하위 클래스를 만들지 않은 경우 Jmx가이 속성을 쿼리하는 방법은 무엇입니까? MBean 래퍼가 무엇을 의미하는지 궁금합니다. 대단히 감사합니다. – edi