envoyproxy/envoy

Datadog Headers not propagated in GRPC requests from WASM filter

Open

#22.028 aberto em 5 de jul. de 2022

Ver no GitHub
 (13 comments) (0 reactions) (0 assignees)C++ (5.373 forks)batch import
area/wasmbughelp wanted

Métricas do repositório

Stars
 (27.997 stars)
Métricas de merge de PR
 (Mesclagem média 8d) (378 fundiu PRs em 30d)

Description

Title: Datadog Tracing Headers not propagated in GRPC requests in WASM filter

Description: Envoy appears to omit Datadog trace context propagation in GRPC metadata of GRPC requests made to an external server from the WASM filter. This means that the trace context is not propagated to upstream servers called by the filter and any resulting traffic is unable to be stitched to the parent span. However, this seems to be supported in both ext_authz and lua filters.

Additionally, these headers are not injected in the http request received by the filter, as I think http tracing headers are not injected until it reaches the http router filter.

Repro steps:

  1. Enable datadog tracing and a WASM http filter that makes a call to an external server via GRPC.
  2. Inspect metadata on grpc requests received by external server. Only the following metadata is received in incoming context: authority, content-type, x-envoy-expected-rq-timeout-ms, x-envoy-internal, x-forwarded-for

Please let me know if I can provide any further information to assist in resolution of this issue. Thanks!

Guia do colaborador