From 3b264287ac6438256adaac05b6a3245d77837c24 Mon Sep 17 00:00:00 2001 From: Jarvis Date: Fri, 9 Oct 2026 07:35:03 +0000 Subject: [PATCH] feat(aisix): expose observability.usage_event.request_headers The gateway records the values of the listed request headers on every usage event (api7/aisix#1269). Listed under config: with the gateway's default (an empty list) so it reaches the config file through the ConfigMap. Merge with the chart bump of the release that ships the key: an older gateway refuses a config file carrying it. Fixes api7/AISIX-Cloud#1719 --- charts/aisix/README.md | 1 + charts/aisix/values.yaml | 3 +++ 2 files changed, 4 insertions(+) diff --git a/charts/aisix/README.md b/charts/aisix/README.md index 6c0dedb..4988906 100644 --- a/charts/aisix/README.md +++ b/charts/aisix/README.md @@ -560,6 +560,7 @@ rejects. New installs set the value in its own key in `values.yaml` or under | config.observability.metrics.prometheus.enabled | bool | `true` | Serve Prometheus metrics on the metrics listener (`containerPorts.metrics`) | | config.observability.metrics.prometheus.path | string | `"/metrics"` | Metrics path | | config.observability.service_name | string | `"aisix"` | Service name reported in telemetry | +| config.observability.usage_event.request_headers | list | `[]` | Request headers whose values every usage event records (lowercase names; credential headers and duplicates are refused at startup) | | config.proxy.real_ip.header | string | `"x-forwarded-for"` | Header carrying the client IP | | config.proxy.real_ip.recursive | bool | `false` | Walk the header right to left past every trusted proxy | | config.proxy.real_ip.trusted_proxies | list | `[]` | CIDRs (or bare IPs) of proxies trusted to set the client-IP header | diff --git a/charts/aisix/values.yaml b/charts/aisix/values.yaml index 5873ab6..780e016 100644 --- a/charts/aisix/values.yaml +++ b/charts/aisix/values.yaml @@ -300,6 +300,9 @@ config: dir: /var/lib/aisix/heap # -- Newest profiles kept keep: 5 + usage_event: + # -- Request headers whose values every usage event records (lowercase names; credential headers and duplicates are refused at startup) + request_headers: [] cache: # -- Legacy cache backend switch, `memory` or `redis`. `redis` requires # `cache.redis`. Which cache serves a request is chosen per cache policy