envoyproxy / envoyproxy/envoy

Auto-instrument tracing spans around Dynamic Module C-ABI invocations

Open
#45,364 8 comments 1 reaction 1 assignee Claimed by @agrawroh View on GitHub
area/dynamic_modules area/perf enhancement no stalebot
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 22h
Merged PRs (30d)
430

Description

*Title*: *Auto-instrument tracing spans around Dynamic Module C-ABI invocations*

*Description*:

Currently, the execution time of a Dynamic Module is opaque in Envoy's distributed traces. We need Envoy's native C++ filter wrapper to automatically create a child span around the C-ABI invocation to measure its processing latency.

Use Case
Operators need to profile and monitor the latency overhead introduced by custom dynamic modules without forcing the module authors to write boilerplate tracing code inside the .so. Specifically, we need visibility into exactly how much time is spent inside the C-ABI hooks (e.g., on_request_headers, on_request_body) within a request's overall trace.

[optional *Relevant Links*:]

Similar to https://github.com/envoyproxy/envoy/issues/20850

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.