JBoss EAP 7 Stuck Thread Detection

JBoss EAP 7 운영중 특정 쓰레드가 몇초 이상 Hang / Stuck 상태에 빠진것을 감지하고 싶을때 StuckThreadDetectionHandler 를 사용한 아래 방법으로 로그에 남길수 있다.

# 부분에 원하는 시간(초)를 입력한다. 해당 시간이상 멈춘 쓰레드는 로그에 남는다.

                <host name="default-host" alias="localhost">
                    <location name="/" handler="welcome-content"/>
                    <filter-ref name="server-header"/>
                    <filter-ref name="x-powered-by-header"/>
                    <filter-ref name="stuck" /> <!-- 이부분 추가 added -->
                </host>
...
            <filters>
                <response-header name="server-header" header-name="Server" header-value="JBoss-EAP/7"/>
                <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/>
                <expression-filter name="stuck" expression="blocking; stuck-thread-detector(#)"/> <!-- 이부분 추가 added -->
            </filters>

CLI Script 는 아래 방법으로 입력한다.

/subsystem=undertow/configuration=filter/expression-filter=stuck:add(expression="blocking; stuck-thread-detector(#)")
/subsystem=undertow/server=default-server/host=default-host/filter-ref=stuck:add

참조링크