Skip to content

ExtProc's latency information for monitoring #10912

@gmflau

Description

@gmflau

Gloo Edge Product

Enterprise

Gloo Edge Version

1.18.13

Is your feature request related to a problem? Please describe.

We have done a thorough research on the ExtProc upstream latency monitoring. Our findings are Envoy stats (https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/ext_proc_filter) does not emit processing time for Ext-Proc (upstream), nor Envoy's access logging (https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage) provides any external processing latency information.

Describe the solution you'd like

Enhance Envoy external processing filter's stats to produce rq_time histogram metric. Sample output would look like the following:

cluster.default-ext-proc-grpc-4444_gloo-system.upstream_rq_time: P0(nan,4) P25(nan,5.0964285714285715) P50(nan,7.026923076923077) P75(nan,8.003571428571428) P90(nan,8.087142857142856) P95(nan,11.524999999999999) P99(nan,12.61) P99.5(nan,12.805) P99.9(nan,12.960999999999999) P100(nan,13)

Describe alternatives you've considered

Customers currently use custom solutions to track individual ExtProc service latency. This isn't scalable because it demands unique latency tracking logic within each ExtProc service. If Envoy's external processing filter could produce request time latency information, it would significantly benefit any customers using the Dynamic Forward Proxy filter. This would transform it into a convenient, out-of-the-box solution.

Additional Context

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions