public class TaskCounters extends Object
AbstractTask
s.
These data are collected by the ConcurrencyManager
in groups the
different services on which the tasks are run.
Note: The field names here are consistent with those in the
ThreadPoolExecutorStatisticsTask
.
Note: The various counters are AtomicLong
s since we need them to be
thread-safe. (counter++
and counter+=foo
are
NOT guaranteed to be thread-safe for simple fields or even
volatile
fields).
ThreadPoolExecutorStatisticsTask
Modifier and Type | Field and Description |
---|---|
AtomicLong |
checkpointNanoTime
Cumulative elapsed time in nanoseconds consumed by write tasks while
checkpointing their indices.
|
AtomicLong |
interArrivalNanoTime
Cumulative elapsed time in nanoseconds between the arrival of tasks.
|
AtomicLong |
lastArrivalNanoTime
The timestamp in nanoseconds when the last task arrived.
|
AtomicLong |
queueWaitingNanoTime
Cumulative elapsed time in nanoseconds waiting on the queue pending
service.
|
AtomicLong |
queuingNanoTime
Cumulative elapsed time in nanoseconds consumed by tasks from when they
are submitted until they are complete.
|
AtomicLong |
serviceNanoTime
Cumulative elapsed time in nanoseconds consumed by tasks while assigned
to a worker thread.
|
AtomicLong |
taskCompleteCount
#of tasks that have been completed.
|
AtomicLong |
taskFailCount
#of tasks that failed.
|
AtomicLong |
taskSubmitCount
#of tasks that have been submitted.
|
AtomicLong |
taskSuccessCount
#of tasks that succeeded.
|
Constructor and Description |
---|
TaskCounters()
Ctor
|
Modifier and Type | Method and Description |
---|---|
CounterSet |
getCounters()
Note: The elapsed time counters (
queueWaitingNanoTime ,
serviceNanoTime , and queuingNanoTime ) are reported as
cumulative milliseconds by this method. |
String |
toString() |
public final AtomicLong taskSubmitCount
public final AtomicLong taskCompleteCount
public final AtomicLong taskFailCount
public final AtomicLong taskSuccessCount
public final AtomicLong lastArrivalNanoTime
public final AtomicLong interArrivalNanoTime
public final AtomicLong queueWaitingNanoTime
public final AtomicLong serviceNanoTime
Note: Since this is aggregated over concurrent tasks the reported elapsed time MAY exceed the actual elapsed time during which those tasks were executed.
Note: Service time on the client includes queuing time on the service and the checkpoint time (for write tasks).
public final AtomicLong checkpointNanoTime
Note: Since this is aggregated over concurrent tasks the reported elapsed time MAY exceed the actual elapsed time during which those tasks were executed.
Note: This time is already reported by the serviceNanoTime
but
is broken out here for additional detail. Checkpoint time can be most of
the service time for a task since indices buffer writes and but are
required to flush those writes to the backing during during a checkpoint.
public final AtomicLong queuingNanoTime
Note: Queuing time on the client includes queuing time on the service.
public CounterSet getCounters()
queueWaitingNanoTime
,
serviceNanoTime
, and queuingNanoTime
) are reported as
cumulative milliseconds by this method. These data are turned
into moving averages by the ThreadPoolExecutorStatisticsTask
.Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.