Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-13919

[GSS](7.1.z) UNDERTOW-1241 - record-request-start-time does not work for HTTP/2

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 7.1.1.CR1, 7.1.1.GA
    • 7.1.0.CR3
    • Undertow
    • None
    • EAP 7.1.1

      record-request-start-time does not work for HTTP/2. Thus, no response time can be tracked for HTTP/2 requests in access logs.

      HTTP/2 is handled separately in HttpReadListener before the request start time is set:

      if(httpServerExchange.getProtocol() == Protocols.HTTP_2_0) {
      free = handleHttp2PriorKnowledge(pooled, httpServerExchange);
      return;
      }
      
      if(!allowUnknownProtocols) {
      HttpString protocol = httpServerExchange.getProtocol();
      if(protocol != Protocols.HTTP_1_1 && protocol != Protocols.HTTP_1_0 && protocol != Protocols.HTTP_0_9) {
      UndertowLogger.REQUEST_IO_LOGGER.debugf("Closing connection from %s due to unknown protocol %s", connection.getChannel().getPeerAddress(), protocol);
      sendBadRequestAndClose(connection.getChannel(), new IOException());
      return;
      }
      }
      HttpTransferEncoding.setupRequest(httpServerExchange);
      if (recordRequestStartTime) {
      Connectors.setRequestStartTime(httpServerExchange);
      }
      

      So this needs some adjustments.

              sdouglas1@redhat.com Stuart Douglas (Inactive)
              rhn-support-aogburn Aaron Ogburn
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: