Class ClientConnectionTimings

java.lang.Object
com.linecorp.armeria.common.logging.ClientConnectionTimings

public final class ClientConnectionTimings
extends Object
A holder class which has the timing information about a connection attempt before a client sends a Request.
See Also:
RequestOnlyLog.connectionTimings()
  • Method Details

    • builder

      public static ClientConnectionTimingsBuilder builder()
      Returns a newly created ClientConnectionTimingsBuilder.
    • connectionAcquisitionStartTimeMicros

      public long connectionAcquisitionStartTimeMicros()
      Returns the time when the client started to acquire a connection, in microseconds since the epoch.
    • connectionAcquisitionStartTimeMillis

      public long connectionAcquisitionStartTimeMillis()
      Returns the time when the client started to acquire a connection, in milliseconds since the epoch.
    • connectionAcquisitionDurationNanos

      public long connectionAcquisitionDurationNanos()
      Returns the duration which was taken to get a connection, in nanoseconds. This value is greater than or equal to the sum of dnsResolutionDurationNanos(), socketConnectDurationNanos() and pendingAcquisitionDurationNanos().
    • dnsResolutionStartTimeMicros

      public long dnsResolutionStartTimeMicros()
      Returns the time when the client started to resolve a domain name, in microseconds since the epoch.
      Returns:
      the start time, or -1 if there was no action to resolve a domain name.
    • dnsResolutionStartTimeMillis

      public long dnsResolutionStartTimeMillis()
      Returns the time when the client started to resolve a domain name, in milliseconds since the epoch.
      Returns:
      the start time, or -1 if there was no action to resolve a domain name.
    • dnsResolutionDurationNanos

      public long dnsResolutionDurationNanos()
      Returns the duration which was taken to resolve a domain name, in nanoseconds.
      Returns:
      the duration, or -1 if there was no action to resolve a domain name.
    • socketConnectStartTimeMicros

      public long socketConnectStartTimeMicros()
      Returns the time when the client started to connect to a remote peer, in microseconds since the epoch.
      Returns:
      the start time, or -1 if there was no action to connect to a remote peer.
    • socketConnectStartTimeMillis

      public long socketConnectStartTimeMillis()
      Returns the time when the client started to connect to a remote peer, in milliseconds since the epoch.
      Returns:
      the start time, or -1 if there was no action to connect to a remote peer.
    • socketConnectDurationNanos

      public long socketConnectDurationNanos()
      Returns the duration which was taken to connect to a remote peer, in nanoseconds.
      Returns:
      the duration, or -1 if there was no action to connect to a remote peer.
    • pendingAcquisitionStartTimeMicros

      public long pendingAcquisitionStartTimeMicros()
      Returns the time when the client started to wait for the completion of an existing connection attempt, in microseconds since the epoch.
      Returns:
      the start time, or -1 if there was no action to get a pending connection.
    • pendingAcquisitionStartTimeMillis

      public long pendingAcquisitionStartTimeMillis()
      Returns the time when the client started to wait for the completion of an existing connection attempt, in milliseconds since the epoch.
      Returns:
      the start time, or -1 if there was no action to get a pending connection.
    • pendingAcquisitionDurationNanos

      public long pendingAcquisitionDurationNanos()
      Returns the duration which was taken to wait for the completion of an existing connection attempt in order to use one connection for HTTP/2.
      Returns:
      the duration, or -1 if there was no action to get a pending connection.
    • toString

      public String toString()
      Overrides:
      toString in class Object