Package com.tangosol.coherence.servlet
Class LogThreadsHoldingLockAgent
- java.lang.Object
-
- com.tangosol.util.Base
-
- com.tangosol.net.AbstractInvocable
-
- com.tangosol.coherence.servlet.LogThreadsHoldingLockAgent
-
- All Implemented Interfaces:
ExternalizableLite
,Invocable
,InvocableInOrder
,PriorityTask
,Serializable
,Runnable
public class LogThreadsHoldingLockAgent extends AbstractInvocable implements ExternalizableLite
An invocation service that logs the stacktraces of all threads holding a lock for a session.- Version:
- Coherence 3.6
- Author:
- jk 2009.12.10
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.tangosol.util.Base
Base.LoggingWriter
-
-
Field Summary
Fields Modifier and Type Field Description static String
THREAD_OWNING_MSG
static String
THREADS_OWNING_MSG
-
Fields inherited from class com.tangosol.util.Base
LOG_ALWAYS, LOG_CONFIG, LOG_DEBUG, LOG_ERR, LOG_INFO, LOG_MAX, LOG_MIN, LOG_QUIET, LOG_WARN, POWER_0, POWER_G, POWER_K, POWER_M, POWER_T, UNIT_D, UNIT_H, UNIT_M, UNIT_MS, UNIT_NS, UNIT_S, UNIT_US
-
Fields inherited from interface com.tangosol.net.PriorityTask
SCHEDULE_FIRST, SCHEDULE_IMMEDIATE, SCHEDULE_STANDARD, TIMEOUT_DEFAULT, TIMEOUT_NONE
-
-
Constructor Summary
Constructors Constructor Description LogThreadsHoldingLockAgent()
ConstructorLogThreadsHoldingLockAgent(String sId)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
logThreadStackTraces(String sId, AbstractHttpSessionCollection collection)
void
readExternal(DataInput in)
Restore the contents of this object by loading the object's state from the passed DataInput object.void
run()
Log the stacktraces of all the threads holding a lock for the session with id m_sIdprotected StringBuilder
threadStackTrace(Thread t)
Create a StringBuilder which contains the stacktrace for the Thread argumentvoid
writeExternal(DataOutput out)
Save the contents of this object by storing the object's state into the passed DataOutput object.protected void
writeToLog(StringBuilder s)
Delegating method for logging for mock testing purposes-
Methods inherited from class com.tangosol.net.AbstractInvocable
getExecutionTimeoutMillis, getRequestTimeoutMillis, getResult, getSchedulingPriority, getService, init, isRespondInOrder, runCanceled, setResult
-
Methods inherited from class com.tangosol.util.Base
azzert, azzert, azzert, azzertFailed, breakLines, breakLines, capitalize, checkNotEmpty, checkNotNull, checkRange, computeSafeWaitTime, decimalValue, dup, dup, ensureBigDecimal, ensureClassLoader, ensureRuntimeException, ensureRuntimeException, equals, equalsDeep, err, err, err, err, err, escape, formatDateTime, getCallerStackFrame, getCommonMonitor, getCommonMonitor, getCommonMonitor, getContextClassLoader, getContextClassLoader, getDeepMessage, getErr, getLastSafeTimeMillis, getLog, getMaxDecDigits, getMaxHexDigits, getOriginalException, getOut, getProcessRandom, getRandom, getRandomBinary, getRandomBinary, getRandomString, getSafeTimeMillis, getStackFrame, getStackFrames, getStackTrace, getStackTrace, getStackTrace, getThreadFactory, getTimeZone, getUpTimeMillis, hashCode, hexValue, indentString, indentString, isDecimal, isHex, isLogEcho, isOctal, log, log, log, log, log, makeInteger, makeLong, makeThread, mergeArray, mergeBooleanArray, mergeByteArray, mergeCharArray, mergeDoubleArray, mergeFloatArray, mergeIntArray, mergeLongArray, mod, mod, octalValue, out, out, out, out, out, pad, parseBandwidth, parseBandwidth, parseDelimitedString, parseHex, parseHex, parseMemorySize, parseMemorySize, parsePercentage, parseTime, parseTime, parseTimeNanos, parseTimeNanos, printStackTrace, randomize, randomize, randomize, randomize, read, read, read, read, read, read, read, replace, setErr, setLog, setLogEcho, setOut, sleep, toBandwidthString, toBandwidthString, toCharEscape, toCrc, toCrc, toCrc, toCrc, toCrc, toDecString, toDelimitedString, toDelimitedString, toDelimitedString, toDelimitedString, toHex, toHex, toHexDump, toHexEscape, toHexEscape, toHexEscape, toHexEscape, toHexString, toMemorySizeString, toMemorySizeString, toQuotedCharEscape, toQuotedStringEscape, toSqlString, toString, toString, toStringEscape, toUnicodeEscape, trace, trace, trace, trace, trace, trace, trace, trace, trace, truncateString, truncateString, wait
-
-
-
-
Field Detail
-
THREAD_OWNING_MSG
public static final String THREAD_OWNING_MSG
- See Also:
- Constant Field Values
-
THREADS_OWNING_MSG
public static final String THREADS_OWNING_MSG
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
LogThreadsHoldingLockAgent
public LogThreadsHoldingLockAgent()
Constructor
-
LogThreadsHoldingLockAgent
public LogThreadsHoldingLockAgent(String sId)
Constructor- Parameters:
sId
- session id
-
-
Method Detail
-
run
public void run()
Log the stacktraces of all the threads holding a lock for the session with id m_sId
-
logThreadStackTraces
protected void logThreadStackTraces(String sId, AbstractHttpSessionCollection collection)
-
writeToLog
protected void writeToLog(StringBuilder s)
Delegating method for logging for mock testing purposes- Parameters:
s
- the string to log
-
threadStackTrace
protected StringBuilder threadStackTrace(Thread t)
Create a StringBuilder which contains the stacktrace for the Thread argument- Parameters:
t
- the Thread- Returns:
- a StringBuilder with the stacktrace for t
-
readExternal
public void readExternal(DataInput in) throws IOException
Restore the contents of this object by loading the object's state from the passed DataInput object.- Specified by:
readExternal
in interfaceExternalizableLite
- Parameters:
in
- the DataInput stream to read data from in order to restore the state of this object- Throws:
IOException
- if an I/O exception occursNotActiveException
- if the object is not in its initial state, and therefore cannot be deserialized into
-
writeExternal
public void writeExternal(DataOutput out) throws IOException
Save the contents of this object by storing the object's state into the passed DataOutput object.- Specified by:
writeExternal
in interfaceExternalizableLite
- Parameters:
out
- the DataOutput stream to write the state of this object to- Throws:
IOException
- if an I/O exception occurs
-
-