gateway icon indicating copy to clipboard operation
gateway copied to clipboard

Split HTTP and TCP/UDP access log format in EnvoyProxy

Open aoledk opened this issue 1 year ago • 3 comments

Description:

HTTP and TCP/UDP don't have same command operators, REQ and RESP operators only in HTTP is important for observability. If operators only in HTTP is configured for TCP/UDP, - will be placed in related access log operator.

If user wants to deploy HTTP and TCP/UDP listeners under same GatewayClass with mergeGateways enabled, user can't attach EnvoyProxy to Gateway to let different Gateway use their own access log format, then TCP/UDP will have massive - in access log, it's unnecessary overhead and produce useless info to access log.

As a workaround, user can choose to split HTTP and TCP/UDP to different GatewayClass with their own necessary access log format.

Maybe we can consider allow user to configure access log format for HTTP and TCP/UDP separately in EnvoyProxy.

[optional Relevant Links:]

https://gateway.envoyproxy.io/v1.0.2/api/extension_types/#proxyaccesslogsetting https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators

aoledk avatar Jun 28 '24 10:06 aoledk

imo this is a presentation problem, can this be solved using the new CEL matches option ? https://github.com/envoyproxy/gateway/pull/3688

arkodg avatar Jun 28 '24 23:06 arkodg

#3688 won't help, but I don't think this's critical, at end the accesslog will be store in system like loki, share same json struct.

zirain avatar Jun 29 '24 00:06 zirain

It's not critical issue indeed and will not cause any problems in envoy, all it affects is in the end Loki maybe store massive - char because TCP/UDP listener don't support HTTP-only operator, especially REQ and RESP.

aoledk avatar Jun 30 '24 01:06 aoledk

This issue has been automatically marked as stale because it has not had activity in the last 30 days.

github-actions[bot] avatar Jul 30 '24 04:07 github-actions[bot]