HTTPVersionHandler: Similar to ProtoHandler, just without HTTP/ prefix. In practice, there is always HTTP/ prefix, so we can drop that (if it exists, which it does) to have more compact logs.
RemoteAddrHandlerWithoutPort: Similar to RemoteAddrHandler, but do you really care about a remote port? Remote port makes it hard to aggregate logs based on remote IP.
HostHandlerWithoutPort: Is similar, generally you do not care on which local port you run stuff.
EtagHandler: Logs response header, Etag, can help with debugging which version of content user got.
ResponseHeaderHandler: Similar to CustomHeaderHandler, but for response headers. If you do canonical log lines, you probably have middleware which logs it after everything is handled, so this handler should be earlier in the middleware stack.
HTTPVersionHandler
: Similar toProtoHandler
, just withoutHTTP/
prefix. In practice, there is alwaysHTTP/
prefix, so we can drop that (if it exists, which it does) to have more compact logs.RemoteAddrHandlerWithoutPort
: Similar toRemoteAddrHandler
, but do you really care about a remote port? Remote port makes it hard to aggregate logs based on remote IP.HostHandlerWithoutPort
: Is similar, generally you do not care on which local port you run stuff.EtagHandler
: Logs response header,Etag
, can help with debugging which version of content user got.ResponseHeaderHandler
: Similar toCustomHeaderHandler
, but for response headers. If you do canonical log lines, you probably have middleware which logs it after everything is handled, so this handler should be earlier in the middleware stack.