envoyproxy / envoy

Cloud-native high-performance edge/middle/service proxy
https://www.envoyproxy.io
Apache License 2.0
24.69k stars 4.75k forks source link

Support typed dynamic filter metadata in access loggers #33975

Open nezdolik opened 4 months ago

nezdolik commented 4 months ago

Title: Support typed dynamic filter metadata in access loggers

Description: Nowadays access logger supports formatters for dynamic filter metadata, e.g. %DYNAMIC_METADATA(NAMESPACE:KEY*):Z%, but as the adoption of typed filter metadata will increase across Envoy filters, we need to introduce support for typed filter metadata in the access logger extension.

Relevant Links Current use case where proxy protocol filter sets typed filter metadata and could benefit from access logger's support for such type of data.

phlax commented 4 months ago

cc @ggreenway @soulxu

cpakulski commented 3 months ago

So, the goal is to "understand" a syntax of typed dynamic metadata, correct? In other words, the formatter should know how to display a dynamic metadata based on its type, instead of dumping that metadata in generic way.

Btw, there is new METADATA formatter: https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/formatter/metadata/v3/metadata.proto#envoy-v3-api-msg-extensions-formatter-metadata-v3-metadata, which I put as an extension, but am planning to bring it back into core as core formatter. That new formatter will eventuall obsolete multiple *_METADATA formatters: #33004.

github-actions[bot] commented 2 months ago

This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or "no stalebot" or other activity occurs. Thank you for your contributions.

nezdolik commented 2 months ago

@cpakulski that is correct, apologies for missing your comment.