반응형

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

+ Recent posts