JBoss EAP 6 - StuckThread 감지 설정
제이보스에서 지정한 시간(초)동안 쓰레드가 수행될 경우 로그에 경고 메시지를 발생시키며
해당 쓰레드의 stacktrace를 로그에 기록함
설정파일: standalone.xml / domain.xml
설정내용:
<subsystem xmlns="urn:jboss:domain:web:2.2" default-virtual-server="default-host" instance-id="${jboss.node.name}" native="true">
<connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
<connector name="ajp" protocol="AJP/1.3" scheme="http" socket-binding="ajp" executor="ajp-thread-pool"/>
<virtual-server name="default-host" enable-welcome-root="false">
<alias name="localhost"/>
<alias name="example.com"/>
<access-log pattern='%h %l %u %t %r %s %b %{Referer}i %{User-Agent}i %s %T'>
<directory path="access" relative-to="jboss.server.log.dir"/>
</access-log>
</virtual-server>
<valve name="StuckThreadValve" module="org.jboss.as.web" class-name="org.apache.catalina.valves.StuckThreadDetectionValve">
<param param-name="threshold" param-value="10"/>
</valve>
</subsystem>
로그내용:
Stuckthread 발생시
13:52:47,511 WARN [org.apache.catalina.valves] (ContainerBackgroundProcessor[StandardEngine[jboss.web]]) JBWEB001111: Thread http-192.168.56.102:8180-1 (id=121) has been active for 12548 milliseconds (since Wed Nov 01 13:52:34 KST 2017) to serve the same request for http://192.168.56.102:8180/index.jsp and may be stuck (configured threshold for this StuckThreadDetectionValve is 10 seconds). There is/are 1 thread(s) in total that are monitored by this Valve and may be stuck.: java.lang.Throwable
at java.lang.Thread.sleep(Native Method) [rt.jar:1.7.0_80]
at org.apache.jsp.index_jsp._jspService(index_jsp.java:59)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:69) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.2.Final-redhat-2.jar:1.0.2.Final-redhat-2]
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:365) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:246) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.2.Final-redhat-2.jar:1.0.2.Final-redhat-2]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:231) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.jboss.as.web.session.ClusteredSessionValve.handleRequest(ClusteredSessionValve.java:134) [jboss-as-web-7.5.17.Final-redhat-4.jar:7.5.17.Final-redhat-4]
at org.jboss.as.web.session.ClusteredSessionValve.invoke(ClusteredSessionValve.java:99) [jboss-as-web-7.5.17.Final-redhat-4.jar:7.5.17.Final-redhat-4]
at org.jboss.as.web.session.JvmRouteValve.invoke(JvmRouteValve.java:95) [jboss-as-web-7.5.17.Final-redhat-4.jar:7.5.17.Final-redhat-4]
at org.jboss.as.web.session.LockingValve.invoke(LockingValve.java:64) [jboss-as-web-7.5.17.Final-redhat-4.jar:7.5.17.Final-redhat-4]
at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169) [jboss-as-web-7.5.17.Final-redhat-4.jar:7.5.17.Final-redhat-4]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:559) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.catalina.valves.StuckThreadDetectionValve.invoke(StuckThreadDetectionValve.java:132) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:877) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:611) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:2082) [jbossweb-7.5.24.Final-redhat-1.jar:7.5.24.Final-redhat-1]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_80]
Stuckthread 완료시
13:53:07,540 WARN [org.apache.catalina.valves] (ContainerBackgroundProcessor[StandardEngine[jboss.web]]) JBWEB001112: Thread http-192.168.56.102:8180-1 (id=121) was previously reported to be stuck but has completed. It was active for approximately 30398 milliseconds. There is/are still 0 thread(s) that are monitored by this Valve and may be stuck.
'일 > WAS' 카테고리의 다른 글
JBoss EAP 6 Native 설정 (0) | 2022.06.30 |
---|---|
JBoss EAP 6/7 - vault : 패스워드 암호화 (0) | 2022.06.30 |
JBoss EAP 7 - StuckThread 감지 설정 (0) | 2022.06.30 |
SocketException: Error in poll (0) | 2019.11.29 |
<BEA-100094> a server that is not the primary (0) | 2019.11.29 |