Interface LocalStatsMatsInterceptor.EndpointStats

All Known Implementing Classes:
LocalStatsMatsInterceptor.EndpointStatsImpl
Enclosing class:
LocalStatsMatsInterceptor

public static interface LocalStatsMatsInterceptor.EndpointStats
  • Method Details

    • getStagesStats

    • getStageStats

      LocalStatsMatsInterceptor.StageStats getStageStats(MatsStage<?,?,?> stage)
    • 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 that isTerminatorEndpoint(). 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.