Package io.mats3.localinspect
Interface LocalStatsMatsInterceptor.EndpointStats
- All Known Implementing Classes:
LocalStatsMatsInterceptor.EndpointStatsImpl
- Enclosing class:
- LocalStatsMatsInterceptor
public static interface LocalStatsMatsInterceptor.EndpointStats
-
Method Summary
Modifier and TypeMethodDescriptionNavigableMap<LocalStatsMatsInterceptor.IncomingMessageRepresentation,
io.mats3.localinspect.LocalStatsMatsInterceptor.StatsSnapshot> Only relevant for Endpoints thatisTerminatorEndpoint()
. Terminator endpoints have a special set of timings: Time taken from the start of initiation to the terminator receives it.getStageStats
(MatsStage<?, ?, ?> stage) io.mats3.localinspect.LocalStatsMatsInterceptor.StatsSnapshot
boolean
-
Method Details
-
getStagesStats
List<LocalStatsMatsInterceptor.StageStats> getStagesStats() -
getStageStats
-
getTotalEndpointProcessingTimeNanos
io.mats3.localinspect.LocalStatsMatsInterceptor.StatsSnapshot getTotalEndpointProcessingTimeNanos() -
isTerminatorEndpoint
boolean isTerminatorEndpoint()- Returns:
- whether the reply DTO is
void
, in which case it is regarded as a Terminator endpoint.
-
getInitiatorToTerminatorTimeNanos
NavigableMap<LocalStatsMatsInterceptor.IncomingMessageRepresentation,io.mats3.localinspect.LocalStatsMatsInterceptor.StatsSnapshot> getInitiatorToTerminatorTimeNanos()Only relevant for Endpoints thatisTerminatorEndpoint()
. Terminator endpoints have a special set of timings: Time taken from the start of initiation to the terminator receives it. Note: Most initiations specify a terminator in the same codebase as the initiation, but this is not a requirement. This timing is special in that it uses the differences in initiation timestamp (System.currentTimeMillis()) vs. reception at terminator (with millisecond precision) until it sees a reception that is on the same nodename as the initiation. At that point it switches over to using only timings that go between initiation and reception on the same node - this both removes the problem of time skews, and provide for more precise timings (since it uses System.nanoTime()), at the expense of only sampling a subset of the available observations.
-