class TimingInfoFullSupport extends TimingInfo
TimingInfo
, which is intended to be a minimal support
of the timing info, this class is the full support of timing info including
features related to sub-measurements and counters.
This class is instantiated instead of TimingInfo
when
request metric collection is required during a particular service
request/response cycle.
Modifier and Type | Field and Description |
---|---|
private java.util.Map<java.lang.String,java.lang.Number> |
countersByName |
private java.util.Map<java.lang.String,java.util.List<TimingInfo>> |
subMeasurementsByName |
UNKNOWN
Constructor and Description |
---|
TimingInfoFullSupport(java.lang.Long startEpochTimeMilli,
long startTimeNano,
java.lang.Long endTimeNano)
A private ctor to facilitate the deprecation of using millisecond and
migration to using nanosecond for timing measurement.
|
Modifier and Type | Method and Description |
---|---|
void |
addSubMeasurement(java.lang.String subMeasurementName,
TimingInfo ti) |
java.util.Map<java.lang.String,java.lang.Number> |
getAllCounters() |
java.util.List<TimingInfo> |
getAllSubMeasurements(java.lang.String subMeasurementName) |
java.lang.Number |
getCounter(java.lang.String key) |
TimingInfo |
getLastSubMeasurement(java.lang.String subMeasurementName) |
TimingInfo |
getSubMeasurement(java.lang.String subMeasurementName) |
TimingInfo |
getSubMeasurement(java.lang.String subMesurementName,
int index) |
java.util.Map<java.lang.String,java.util.List<TimingInfo>> |
getSubMeasurementsByName() |
void |
incrementCounter(java.lang.String key) |
void |
setCounter(java.lang.String key,
long count) |
durationMilliOf, endTiming, getElapsedTimeMillis, getEndEpochTimeMilli, getEndEpochTimeMilliIfKnown, getEndTime, getEndTimeNano, getEndTimeNanoIfKnown, getStartEpochTimeMilli, getStartEpochTimeMilliIfKnown, getStartTime, getStartTimeNano, getTimeTakenMillis, getTimeTakenMillisIfKnown, isEndTimeKnown, isStartEpochTimeMilliKnown, newTimingInfoFullSupport, newTimingInfoFullSupport, setEndTime, setEndTimeNano, startTiming, startTimingFullSupport, startTimingFullSupport, toString, unmodifiableTimingInfo, unmodifiableTimingInfo
private final java.util.Map<java.lang.String,java.util.List<TimingInfo>> subMeasurementsByName
private final java.util.Map<java.lang.String,java.lang.Number> countersByName
TimingInfoFullSupport(java.lang.Long startEpochTimeMilli, long startTimeNano, java.lang.Long endTimeNano)
startEpochTimeMilli
- start time since epoch in millisecondstartTimeNano
- start time in nanosecondendTimeNano
- end time in nanosecond; or null if not knownTimingInfo.startTimingFullSupport()
,
TimingInfo.startTimingFullSupport(long)
,
TimingInfo.newTimingInfoFullSupport(long, long)
,
TimingInfo.newTimingInfoFullSupport(long, long, long)
public void addSubMeasurement(java.lang.String subMeasurementName, TimingInfo ti)
addSubMeasurement
in class TimingInfo
public TimingInfo getSubMeasurement(java.lang.String subMeasurementName)
getSubMeasurement
in class TimingInfo
public TimingInfo getSubMeasurement(java.lang.String subMesurementName, int index)
getSubMeasurement
in class TimingInfo
public TimingInfo getLastSubMeasurement(java.lang.String subMeasurementName)
getLastSubMeasurement
in class TimingInfo
public java.util.List<TimingInfo> getAllSubMeasurements(java.lang.String subMeasurementName)
getAllSubMeasurements
in class TimingInfo
public java.util.Map<java.lang.String,java.util.List<TimingInfo>> getSubMeasurementsByName()
getSubMeasurementsByName
in class TimingInfo
public java.lang.Number getCounter(java.lang.String key)
getCounter
in class TimingInfo
public java.util.Map<java.lang.String,java.lang.Number> getAllCounters()
getAllCounters
in class TimingInfo
public void setCounter(java.lang.String key, long count)
setCounter
in class TimingInfo
public void incrementCounter(java.lang.String key)
incrementCounter
in class TimingInfo