public class StuckThreadDetectionValve extends ValveBase
Lifecycle.SingleUse
asyncSupported, container, containerLog, next
mserver
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
Constructor and Description |
---|
StuckThreadDetectionValve()
Required to enable async support.
|
Modifier and Type | Method and Description |
---|---|
void |
backgroundProcess()
Execute a periodic task, such as reloading, etc.
|
String |
getInfo()
Return descriptive information about this Valve implementation.
|
long |
getInterruptedThreadsCount() |
int |
getInterruptThreadThreshold() |
int |
getStuckThreadCount() |
long[] |
getStuckThreadIds() |
String[] |
getStuckThreadNames() |
int |
getThreshold() |
protected void |
initInternal()
Sub-classes wishing to perform additional initialization should override
this method, ensuring that super.initInternal() is the first call in the
overriding method.
|
void |
invoke(Request request,
Response response)
The implementation-specific logic represented by this Valve.
|
void |
setInterruptThreadThreshold(int interruptThreadThreshold)
Specifies the threshold (in seconds) before stuck threads are interrupted.
|
void |
setThreshold(int threshold)
Specifies the threshold (in seconds) used when checking for stuck threads.
|
event, getContainer, getDomainInternal, getNext, getObjectNameKeyProperties, isAsyncSupported, setAsyncSupported, setContainer, setNext, startInternal, stopInternal, toString
destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stop
public StuckThreadDetectionValve()
public void setThreshold(int threshold)
threshold
- The new threshold in secondspublic int getThreshold()
setThreshold(int)
public int getInterruptThreadThreshold()
public void setInterruptThreadThreshold(int interruptThreadThreshold)
interruptThreadThreshold
- The new thread interruption threshold in secondsprotected void initInternal() throws LifecycleException
LifecycleMBeanBase
initInternal
in class ValveBase
LifecycleException
- If the initialisation failspublic String getInfo()
public void invoke(Request request, Response response) throws IOException, ServletException
This method MUST be provided by a subclass.
invoke
in interface Valve
invoke
in class ValveBase
request
- The servlet request to be processedresponse
- The servlet response to be createdIOException
- if an input/output error occursServletException
- if a servlet error occurspublic void backgroundProcess()
ValveBase
backgroundProcess
in interface Valve
backgroundProcess
in class ValveBase
public int getStuckThreadCount()
public long[] getStuckThreadIds()
public String[] getStuckThreadNames()
public long getInterruptedThreadsCount()
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.