Package org.apache.cassandra.tracing
Class TraceState
- java.lang.Object
-
- org.apache.cassandra.tracing.TraceState
-
- All Implemented Interfaces:
ProgressEventNotifier
- Direct Known Subclasses:
TraceStateImpl
public abstract class TraceState extends java.lang.Object implements ProgressEventNotifier
ThreadLocal state for a tracing session. The presence of an instance of this class as a ThreadLocal denotes that an operation is being traced.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTraceState.Status
-
Field Summary
Fields Modifier and Type Field Description InetAddressAndPortcoordinatorTimeUUIDsessionIdjava.nio.ByteBuffersessionIdBytesTracing.TraceTypetraceTypeintttlcom.google.common.base.Stopwatchwatch
-
Constructor Summary
Constructors Modifier Constructor Description protectedTraceState(InetAddressAndPort coordinator, TimeUUID sessionId, Tracing.TraceType traceType)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description booleanacquireReference()voidaddProgressListener(ProgressListener listener)Register progress listener to this publisher.intelapsed()voidenableActivityNotification(java.lang.String tag)Activate notification with providedtagname.protected voidnotifyActivity()intreleaseReference()voidremoveProgressListener(ProgressListener listener)Remove progress listener from this publisher.voidstop()voidtrace(java.lang.String message)voidtrace(java.lang.String format, java.lang.Object arg)voidtrace(java.lang.String format, java.lang.Object... args)voidtrace(java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)protected abstract voidtraceImpl(java.lang.String message)TraceState.StatuswaitActivity(long timeout)protected voidwaitForPendingEvents()
-
-
-
Field Detail
-
sessionId
public final TimeUUID sessionId
-
coordinator
public final InetAddressAndPort coordinator
-
watch
public final com.google.common.base.Stopwatch watch
-
sessionIdBytes
public final java.nio.ByteBuffer sessionIdBytes
-
traceType
public final Tracing.TraceType traceType
-
ttl
public final int ttl
-
-
Constructor Detail
-
TraceState
protected TraceState(InetAddressAndPort coordinator, TimeUUID sessionId, Tracing.TraceType traceType)
-
-
Method Detail
-
enableActivityNotification
public void enableActivityNotification(java.lang.String tag)
Activate notification with providedtagname.- Parameters:
tag- Tag name to add when emitting notification
-
addProgressListener
public void addProgressListener(ProgressListener listener)
Description copied from interface:ProgressEventNotifierRegister progress listener to this publisher.- Specified by:
addProgressListenerin interfaceProgressEventNotifier- Parameters:
listener- listener to register.
-
removeProgressListener
public void removeProgressListener(ProgressListener listener)
Description copied from interface:ProgressEventNotifierRemove progress listener from this publisher.- Specified by:
removeProgressListenerin interfaceProgressEventNotifier- Parameters:
listener- listener to remove
-
elapsed
public int elapsed()
-
stop
public void stop()
-
waitActivity
public TraceState.Status waitActivity(long timeout)
-
notifyActivity
protected void notifyActivity()
-
trace
public void trace(java.lang.String format, java.lang.Object arg)
-
trace
public void trace(java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)
-
trace
public void trace(java.lang.String format, java.lang.Object... args)
-
trace
public void trace(java.lang.String message)
-
traceImpl
protected abstract void traceImpl(java.lang.String message)
-
waitForPendingEvents
protected void waitForPendingEvents()
-
acquireReference
public boolean acquireReference()
-
releaseReference
public int releaseReference()
-
-