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 class
TraceState.Status
-
Field Summary
Fields Modifier and Type Field Description InetAddressAndPort
coordinator
TimeUUID
sessionId
java.nio.ByteBuffer
sessionIdBytes
Tracing.TraceType
traceType
int
ttl
com.google.common.base.Stopwatch
watch
-
Constructor Summary
Constructors Modifier Constructor Description protected
TraceState(InetAddressAndPort coordinator, TimeUUID sessionId, Tracing.TraceType traceType)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
acquireReference()
void
addProgressListener(ProgressListener listener)
Register progress listener to this publisher.int
elapsed()
void
enableActivityNotification(java.lang.String tag)
Activate notification with providedtag
name.protected void
notifyActivity()
int
releaseReference()
void
removeProgressListener(ProgressListener listener)
Remove progress listener from this publisher.void
stop()
void
trace(java.lang.String message)
void
trace(java.lang.String format, java.lang.Object arg)
void
trace(java.lang.String format, java.lang.Object... args)
void
trace(java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)
protected abstract void
traceImpl(java.lang.String message)
TraceState.Status
waitActivity(long timeout)
protected void
waitForPendingEvents()
-
-
-
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 providedtag
name.- Parameters:
tag
- Tag name to add when emitting notification
-
addProgressListener
public void addProgressListener(ProgressListener listener)
Description copied from interface:ProgressEventNotifier
Register progress listener to this publisher.- Specified by:
addProgressListener
in interfaceProgressEventNotifier
- Parameters:
listener
- listener to register.
-
removeProgressListener
public void removeProgressListener(ProgressListener listener)
Description copied from interface:ProgressEventNotifier
Remove progress listener from this publisher.- Specified by:
removeProgressListener
in 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()
-
-