H2O

the optimized HTTP/1.x, HTTP/2, HTTP/3 server

Powered by Oktavia

Configure > Server Timing Directives

The server timing handler turns on the Server Timing feature. This document describes the configuration directives of the handler.

since v2.3

"server-timing"

Description:

A flag indicating how server-timing header and trailer should be served.

If the value is ON, H2O adds the server-timing header and trailer (if possible) to the response. The header is always added, but the trailer isn't if all of the following conditions are met.

  • The protocol used for the request is HTTP/1.1
  • transfer encoding of the response is not chunked

If the value is ENFORCE, H2O forces the response to use chunked encoding by removing content-length header.

If the value is OFF, the feature is disabled.

The server-timing header and trailer includes the following metrics. For now, all metrics have the dur attribute whose values are exactly equal to one of the Access Log Extensions with similar names. To get the meaning of each dur attribute, see access-log.

Header Metrics
Name Log Extension
connect connect-time
request-header request-header-time
request-body request-body-time
request-total request-total-time
process process-time
proxy.idle proxy.idle-time
proxy.connect proxy.connect-time
proxy.request proxy.request-time
proxy.process proxy.process-time
Trailer Metrics
Name Log Extension
response response-time
total total-time / duration
proxy.response proxy.response-time
proxy.total proxy.total-time

Level:
global, host, path, extension
Default:
OFF