Class VertxHttpServerMetrics

All Implemented Interfaces:
io.vertx.core.spi.metrics.HttpServerMetrics<HttpRequestMetric,io.micrometer.core.instrument.LongTaskTimer.Sample,io.micrometer.core.instrument.LongTaskTimer.Sample>, io.vertx.core.spi.metrics.Metrics, io.vertx.core.spi.metrics.NetworkMetrics<io.micrometer.core.instrument.LongTaskTimer.Sample>, io.vertx.core.spi.metrics.TCPMetrics<io.micrometer.core.instrument.LongTaskTimer.Sample>

public class VertxHttpServerMetrics extends VertxTcpServerMetrics implements io.vertx.core.spi.metrics.HttpServerMetrics<HttpRequestMetric,io.micrometer.core.instrument.LongTaskTimer.Sample,io.micrometer.core.instrument.LongTaskTimer.Sample>
HttpServerMetricsinvalid input: '<'R, W, S>
  • R for Request metric -- HttpRequestMetric
  • W for Websocket metric -- LongTaskTimer sample
  • S for Socket metric -- LongTaskTimer sample
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    (package private) final LongAdder
     
    (package private) HttpBinderConfiguration
     
    (package private) static final org.jboss.logging.Logger
     
     
    (package private) final io.micrometer.core.instrument.Meter.MeterProvider<io.micrometer.core.instrument.Counter>
     
    (package private) final io.micrometer.core.instrument.Meter.MeterProvider<io.micrometer.core.instrument.Timer>
     
    (package private) final io.micrometer.core.instrument.Meter.MeterProvider<io.micrometer.core.instrument.LongTaskTimer>
     

    Fields inherited from class io.quarkus.micrometer.runtime.binder.vertx.NetworkMetrics

    exceptionCounter, received, registry, sent, tags

    Fields inherited from interface io.vertx.core.spi.metrics.Metrics

    DISABLE_METRICS_PROPERTY_NAME, METRICS_ENABLED
  • Constructor Summary

    Constructors
    Constructor
    Description
    VertxHttpServerMetrics(io.micrometer.core.instrument.MeterRegistry registry, HttpBinderConfiguration config, OpenTelemetryContextUnwrapper openTelemetryContextUnwrapper)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    io.micrometer.core.instrument.LongTaskTimer.Sample
    connected(io.micrometer.core.instrument.LongTaskTimer.Sample sample, HttpRequestMetric requestMetric, io.vertx.core.http.ServerWebSocket serverWebSocket)
    Called when a server web socket connects.
    void
    disconnected(io.micrometer.core.instrument.LongTaskTimer.Sample websocketMetric)
    Called when the server web socket has disconnected.
    requestBegin(io.micrometer.core.instrument.LongTaskTimer.Sample sample, io.vertx.core.spi.observability.HttpRequest request)
    Called when an HTTP server request begins.
    void
    Called when the http server request couldn't complete successfully, for instance the connection was closed before the response was sent.
    void
    requestRouted(HttpRequestMetric requestMetric, String route)
     
    void
    responseEnd(HttpRequestMetric requestMetric, io.vertx.core.spi.observability.HttpResponse response, long bytesWritten)
    Called when an HTTP server response has ended.
    responsePushed(io.micrometer.core.instrument.LongTaskTimer.Sample socketMetric, io.vertx.core.http.HttpMethod method, String uri, io.vertx.core.spi.observability.HttpResponse response)
    Called when an HTTP server response is pushed.

    Methods inherited from class io.quarkus.micrometer.runtime.binder.vertx.NetworkMetrics

    bytesRead, bytesWritten, connected, disconnected, exceptionOccurred, toString

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface io.vertx.core.spi.metrics.HttpServerMetrics

    requestEnd, responseBegin

    Methods inherited from interface io.vertx.core.spi.metrics.Metrics

    close

    Methods inherited from interface io.vertx.core.spi.metrics.NetworkMetrics

    bytesRead, bytesWritten, exceptionOccurred

    Methods inherited from interface io.vertx.core.spi.metrics.TCPMetrics

    connected, disconnected
  • Field Details

    • log

      static final org.jboss.logging.Logger log
    • config

    • openTelemetryContextUnwrapper

      OpenTelemetryContextUnwrapper openTelemetryContextUnwrapper
    • activeRequests

      final LongAdder activeRequests
    • requestsTimer

      final io.micrometer.core.instrument.Meter.MeterProvider<io.micrometer.core.instrument.Timer> requestsTimer
    • websocketConnectionTimer

      final io.micrometer.core.instrument.Meter.MeterProvider<io.micrometer.core.instrument.LongTaskTimer> websocketConnectionTimer
    • pushCounter

      final io.micrometer.core.instrument.Meter.MeterProvider<io.micrometer.core.instrument.Counter> pushCounter
  • Constructor Details

  • Method Details

    • responsePushed

      public HttpRequestMetric responsePushed(io.micrometer.core.instrument.LongTaskTimer.Sample socketMetric, io.vertx.core.http.HttpMethod method, String uri, io.vertx.core.spi.observability.HttpResponse response)
      Called when an HTTP server response is pushed.
      Specified by:
      responsePushed in interface io.vertx.core.spi.metrics.HttpServerMetrics<HttpRequestMetric,io.micrometer.core.instrument.LongTaskTimer.Sample,io.micrometer.core.instrument.LongTaskTimer.Sample>
      Parameters:
      socketMetric - a Map for socket metric context or null
      method - the pushed response method
      uri - the pushed response uri
      response - the http server response
      Returns:
      a RequestMetricContext
    • requestRouted

      public void requestRouted(HttpRequestMetric requestMetric, String route)
      Specified by:
      requestRouted in interface io.vertx.core.spi.metrics.HttpServerMetrics<HttpRequestMetric,io.micrometer.core.instrument.LongTaskTimer.Sample,io.micrometer.core.instrument.LongTaskTimer.Sample>
    • requestBegin

      public HttpRequestMetric requestBegin(io.micrometer.core.instrument.LongTaskTimer.Sample sample, io.vertx.core.spi.observability.HttpRequest request)
      Called when an HTTP server request begins. Vert.x will invoke responseEnd(io.quarkus.micrometer.runtime.binder.vertx.HttpRequestMetric, io.vertx.core.spi.observability.HttpResponse, long) when the response has ended or requestReset(io.quarkus.micrometer.runtime.binder.vertx.HttpRequestMetric) if the request/response has failed before.
      Specified by:
      requestBegin in interface io.vertx.core.spi.metrics.HttpServerMetrics<HttpRequestMetric,io.micrometer.core.instrument.LongTaskTimer.Sample,io.micrometer.core.instrument.LongTaskTimer.Sample>
      Parameters:
      sample - the sample
      request - the http server request
      Returns:
      a RequestMetricContext
    • requestReset

      public void requestReset(HttpRequestMetric requestMetric)
      Called when the http server request couldn't complete successfully, for instance the connection was closed before the response was sent.
      Specified by:
      requestReset in interface io.vertx.core.spi.metrics.HttpServerMetrics<HttpRequestMetric,io.micrometer.core.instrument.LongTaskTimer.Sample,io.micrometer.core.instrument.LongTaskTimer.Sample>
      Parameters:
      requestMetric - a RequestMetricContext or null
    • responseEnd

      public void responseEnd(HttpRequestMetric requestMetric, io.vertx.core.spi.observability.HttpResponse response, long bytesWritten)
      Called when an HTTP server response has ended.
      Specified by:
      responseEnd in interface io.vertx.core.spi.metrics.HttpServerMetrics<HttpRequestMetric,io.micrometer.core.instrument.LongTaskTimer.Sample,io.micrometer.core.instrument.LongTaskTimer.Sample>
      Parameters:
      requestMetric - a RequestMetricContext or null
      response - the http server response
      bytesWritten - bytes written
    • connected

      public io.micrometer.core.instrument.LongTaskTimer.Sample connected(io.micrometer.core.instrument.LongTaskTimer.Sample sample, HttpRequestMetric requestMetric, io.vertx.core.http.ServerWebSocket serverWebSocket)
      Called when a server web socket connects.
      Specified by:
      connected in interface io.vertx.core.spi.metrics.HttpServerMetrics<HttpRequestMetric,io.micrometer.core.instrument.LongTaskTimer.Sample,io.micrometer.core.instrument.LongTaskTimer.Sample>
      Parameters:
      requestMetric - a RequestMetricContext or null
      serverWebSocket - the server web socket
      Returns:
      a LongTaskTimer.Sample or null
    • disconnected

      public void disconnected(io.micrometer.core.instrument.LongTaskTimer.Sample websocketMetric)
      Called when the server web socket has disconnected.
      Specified by:
      disconnected in interface io.vertx.core.spi.metrics.HttpServerMetrics<HttpRequestMetric,io.micrometer.core.instrument.LongTaskTimer.Sample,io.micrometer.core.instrument.LongTaskTimer.Sample>
      Parameters:
      websocketMetric - a LongTaskTimer.Sample or null