diff --git a/examples/extension-server/Makefile b/examples/extension-server/Makefile index e896018cb15..aa9ea80f142 100644 --- a/examples/extension-server/Makefile +++ b/examples/extension-server/Makefile @@ -5,13 +5,15 @@ tools.srcdir = tools/src $(tools.bindir)/%: $(tools.srcdir)/%/pin.go $(tools.srcdir)/%/go.mod cd $( 0, will pause for this amount of seconds before automatically proceeding with any p or pe +PROMPT_TIMEOUT=0 + +# don't show command number unless user specifies it +SHOW_CMD_NUMS=false + + +# handy color vars for pretty prompts +BLACK="\033[0;30m" +BLUE="\033[0;34m" +GREEN="\033[0;32m" +GREY="\033[0;90m" +CYAN="\033[0;36m" +RED="\033[0;31m" +PURPLE="\033[0;35m" +BROWN="\033[0;33m" +WHITE="\033[0;37m" +BOLD="\033[1m" +COLOR_RESET="\033[0m" + +C_NUM=0 + +# prompt and command color which can be overriden +DEMO_PROMPT="$ " +DEMO_CMD_COLOR=$BOLD +DEMO_COMMENT_COLOR=$GREY + +## +# prints the script usage +## +function usage() { + echo -e "" + echo -e "Usage: $0 [options]" + echo -e "" + echo -e " Where options is one or more of:" + echo -e " -h Prints Help text" + echo -e " -d Debug mode. Disables simulated typing" + echo -e " -n No wait" + echo -e " -w Waits max the given amount of seconds before " + echo -e " proceeding with demo (e.g. '-w5')" + echo -e "" +} + +## +# wait for user to press ENTER +# if $PROMPT_TIMEOUT > 0 this will be used as the max time for proceeding automatically +## +function wait() { + if [[ "$PROMPT_TIMEOUT" == "0" ]]; then + read -rs + else + read -rst "$PROMPT_TIMEOUT" + fi +} + +## +# print command only. Useful for when you want to pretend to run a command +# +# takes 1 param - the string command to print +# +# usage: p "ls -l" +# +## +function p() { + if [[ ${1:0:1} == "#" ]]; then + cmd=$DEMO_COMMENT_COLOR$1$COLOR_RESET + else + cmd=$DEMO_CMD_COLOR$1$COLOR_RESET + fi + + # render the prompt + x=$(PS1="$DEMO_PROMPT" "$BASH" --norc -i &1 | sed -n '${s/^\(.*\)exit$/\1/p;}') + + # show command number is selected + if $SHOW_CMD_NUMS; then + printf "[$((++C_NUM))] $x" + else + printf "$x" + fi + + # wait for the user to press a key before typing the command + if [ "$NO_WAIT" = false ] && [ "$NO_WAIT_DISPLAY_CMD" = false ]; then + wait + fi + + if [[ -z $TYPE_SPEED ]]; then + echo -en "$cmd" + else + echo -en "$cmd" | pv -qL $[$TYPE_SPEED+(-2 + RANDOM%5)]; + fi + + # wait for the user to press a key before moving on + if [ $NO_WAIT = false ]; then + wait + fi + echo "" +} + +## +# Prints and executes a command +# +# takes 1 parameter - the string command to run +# +# usage: pe "ls -l" +# +## +function pe() { + # print the command + p "$@" + run_cmd "$@" +} + +## +# print and executes a command immediately +# +# takes 1 parameter - the string command to run +# +# usage: pei "ls -l" +# +## +function pei { + NO_WAIT=true pe "$@" +} + +## +# Enters script into interactive mode +# +# and allows newly typed commands to be executed within the script +# +# usage : cmd +# +## +function cmd() { + # render the prompt + x=$(PS1="$DEMO_PROMPT" "$BASH" --norc -i &1 | sed -n '${s/^\(.*\)exit$/\1/p;}') + printf "$x\033[0m" + read command + run_cmd "${command}" +} + +## +# Enters script into repl mode +# +# and allows newly typed commands to be executed within the script +# +# type exit to leave the repl +# +# usage : repl +# +## +function repl() { + # render the prompt + looping=true + while $looping; do + x=$(PS1="$DEMO_PROMPT" "$BASH" --norc -i &1 | sed -n '${s/^\(.*\)exit$/\1/p;}') + printf "$x\033[0m" + read command + if [[ "$command" == "exit" ]]; then + looping=false + else + run_cmd "$command" + fi + done +} + +function run_cmd() { + function handle_cancel() { + printf "" + } + + trap handle_cancel SIGINT + stty -echoctl + eval $@ + stty echoctl + trap - SIGINT +} + + +function check_pv() { + command -v pv >/dev/null 2>&1 || { + + echo "" + echo -e "${RED}##############################################################" + echo "# HOLD IT!! I require pv for simulated typing but it's " >&2 + echo "# not installed. Aborting." >&2; + echo -e "${RED}##############################################################" + echo "" + echo -e "${COLOR_RESET}Disable simulated typing: " + echo "" + echo -e " unset TYPE_SPEED" + echo "" + echo "Installing pv:" + echo "" + echo " Mac: $ brew install pv" + echo "" + echo " Other: https://www.ivarch.com/programs/pv.shtml" + echo "" + exit 1; + } +} + +# +# handle some default params +# -h for help +# -d for disabling simulated typing +# +while getopts ":dhncw:" opt; do + case $opt in + h) + usage + exit 1 + ;; + d) + unset TYPE_SPEED + ;; + n) + NO_WAIT=true + ;; + c) + SHOW_CMD_NUMS=true + ;; + w) + PROMPT_TIMEOUT=$OPTARG + ;; + esac +done + +## +# Do not check for pv. This trusts the user to not set TYPE_SPEED later in the +# demo in which case an error will occur if pv is not installed. +## +if [[ -n "$TYPE_SPEED" ]]; then + check_pv +fi diff --git a/examples/extension-server/demo/script.sh b/examples/extension-server/demo/script.sh new file mode 100755 index 00000000000..8f2592f476a --- /dev/null +++ b/examples/extension-server/demo/script.sh @@ -0,0 +1,62 @@ +#!/bin/zsh + +unset TYPE_SPEED + +. ./demo/demo-magic.sh + +alias kubectl=kubecolor +kubectl delete CustomBackendMtlsPolicy --all -A +clear + +pe "kubens default" +echo "" + +pe "kubectl get pods" +echo "" + +pe "kubectl get services" +echo "" + +pe "kubectl get httproutes" +echo "" + +pe "kubectl describe httproutes" +echo "" + +wait +clear +pe 'curl --header "Host: www.example.com" http://localhost:8888/get' +echo "" + +wait +clear +pe 'kubectl apply -f ./config/custom-backend-mtls-policy.yaml' +echo "" + +pe 'kubectl apply -f ./config/extension-manager-with-listeners-routes.yaml' +echo "" + +pe 'helm upgrade --install -n envoy-gateway-system extension-server ./charts/extension-server' +echo "" + +kubectl rollout restart deployments/extension-server -n envoy-gateway-system > /dev/null 2>&1 + +wait +clear +pe 'kubens envoy-gateway-system' +echo "" + +pe 'kubectl get pods' +echo "" + +kubectl rollout restart deployments/backend -n default > /dev/null 2>&1 + +wait +clear +pe 'kubectl logs deployment/extension-server --all-pods=true' +echo "" + +wait +clear +pe 'curl --header "Host: www.example.com" http://localhost:8888/get' +echo "" diff --git a/examples/extension-server/envoy-config-dumps/full-with-spiffe-secret.json b/examples/extension-server/envoy-config-dumps/full-with-spiffe-secret.json new file mode 100644 index 00000000000..956f7ec0189 --- /dev/null +++ b/examples/extension-server/envoy-config-dumps/full-with-spiffe-secret.json @@ -0,0 +1,3532 @@ +{ + "configs": [ + { + "@type": "type.googleapis.com/envoy.admin.v3.BootstrapConfigDump", + "bootstrap": { + "node": { + "locality": {}, + "user_agent_name": "envoy", + "user_agent_build_version": { + "version": { + "major_number": 1, + "minor_number": 35, + "patch": 3 + }, + "metadata": { + "build.type": "RELEASE", + "revision.sha": "ff3fe7f0bb9e4ac6a283ea38bf9ee3f375530d56", + "revision.status": "Clean", + "ssl.version": "BoringSSL" + } + }, + "extensions": [ + { + "name": "auto", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "framed", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "header", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "unframed", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "envoy.filters.generic.router", + "category": "envoy.generic_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.router.v3.Router" + ] + }, + { + "name": "envoy.http.injected_credentials.generic", + "category": "envoy.http.injected_credentials", + "type_urls": [ + "envoy.extensions.http.injected_credentials.generic.v3.Generic" + ] + }, + { + "name": "envoy.http.injected_credentials.oauth2", + "category": "envoy.http.injected_credentials", + "type_urls": [ + "envoy.extensions.http.injected_credentials.oauth2.v3.OAuth2" + ] + }, + { + "name": "envoy.wasm.runtime.null", + "category": "envoy.wasm.runtime" + }, + { + "name": "envoy.wasm.runtime.v8", + "category": "envoy.wasm.runtime" + }, + { + "name": "envoy.access_loggers.file", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.file.v3.FileAccessLog" + ] + }, + { + "name": "envoy.access_loggers.fluentd", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.fluentd.v3.FluentdAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.http_grpc", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.grpc.v3.HttpGrpcAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.open_telemetry", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.open_telemetry.v3.OpenTelemetryAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.stderr", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.stream.v3.StderrAccessLog" + ] + }, + { + "name": "envoy.access_loggers.stdout", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.stream.v3.StdoutAccessLog" + ] + }, + { + "name": "envoy.access_loggers.tcp_grpc", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.grpc.v3.TcpGrpcAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.wasm", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.wasm.v3.WasmAccessLog" + ] + }, + { + "name": "envoy.file_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.fluentd_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.http_grpc_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.open_telemetry_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.stderr_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.stdout_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.tcp_grpc_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.wasm_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.upstream.local_address_selector.default_local_address_selector", + "category": "envoy.upstream.local_address_selector", + "type_urls": [ + "envoy.config.upstream.local_address_selector.v3.DefaultLocalAddressSelector" + ] + }, + { + "name": "envoy.filters.listener.original_dst.local_ip", + "category": "filter_state.object" + }, + { + "name": "envoy.filters.listener.original_dst.remote_ip", + "category": "filter_state.object" + }, + { + "name": "envoy.network.application_protocols", + "category": "filter_state.object" + }, + { + "name": "envoy.network.ip", + "category": "filter_state.object" + }, + { + "name": "envoy.network.transport_socket.original_dst_address", + "category": "filter_state.object" + }, + { + "name": "envoy.network.upstream_server_name", + "category": "filter_state.object" + }, + { + "name": "envoy.network.upstream_subject_alt_names", + "category": "filter_state.object" + }, + { + "name": "envoy.ratelimit.hits_addend", + "category": "filter_state.object" + }, + { + "name": "envoy.router.debug_config", + "category": "filter_state.object" + }, + { + "name": "envoy.string", + "category": "filter_state.object" + }, + { + "name": "envoy.tcp_proxy.cluster", + "category": "filter_state.object" + }, + { + "name": "envoy.tcp_proxy.disable_tunneling", + "category": "filter_state.object" + }, + { + "name": "envoy.tcp_proxy.per_connection_idle_timeout_ms", + "category": "filter_state.object" + }, + { + "name": "envoy.upstream.dynamic_host", + "category": "filter_state.object" + }, + { + "name": "envoy.upstream.dynamic_port", + "category": "filter_state.object" + }, + { + "name": "envoy.compression.brotli.decompressor", + "category": "envoy.compression.decompressor", + "type_urls": [ + "envoy.extensions.compression.brotli.decompressor.v3.Brotli" + ] + }, + { + "name": "envoy.compression.gzip.decompressor", + "category": "envoy.compression.decompressor", + "type_urls": [ + "envoy.extensions.compression.gzip.decompressor.v3.Gzip" + ] + }, + { + "name": "envoy.compression.zstd.decompressor", + "category": "envoy.compression.decompressor", + "type_urls": [ + "envoy.extensions.compression.zstd.decompressor.v3.Zstd" + ] + }, + { + "name": "envoy.network.dns_resolver.cares", + "category": "envoy.network.dns_resolver", + "type_urls": [ + "envoy.extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig" + ] + }, + { + "name": "envoy.network.dns_resolver.getaddrinfo", + "category": "envoy.network.dns_resolver", + "type_urls": [ + "envoy.extensions.network.dns_resolver.getaddrinfo.v3.GetAddrInfoDnsResolverConfig" + ] + }, + { + "name": "envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "category": "envoy.upstream_options", + "type_urls": [ + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions" + ] + }, + { + "name": "envoy.extensions.upstreams.tcp.v3.TcpProtocolOptions", + "category": "envoy.upstream_options", + "type_urls": [ + "envoy.extensions.upstreams.tcp.v3.TcpProtocolOptions" + ] + }, + { + "name": "envoy.upstreams.http.http_protocol_options", + "category": "envoy.upstream_options" + }, + { + "name": "envoy.upstreams.tcp.tcp_protocol_options", + "category": "envoy.upstream_options" + }, + { + "name": "envoy.matching.inputs.cel_data_input", + "category": "envoy.matching.http.input", + "type_urls": ["xds.type.matcher.v3.HttpAttributesCelMatchInput"] + }, + { + "name": "envoy.matching.inputs.destination_ip", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationIPInput" + ] + }, + { + "name": "envoy.matching.inputs.destination_port", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationPortInput" + ] + }, + { + "name": "envoy.matching.inputs.direct_source_ip", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DirectSourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.dns_san", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.DnsSanInput" + ] + }, + { + "name": "envoy.matching.inputs.dynamic_metadata", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DynamicMetadataInput" + ] + }, + { + "name": "envoy.matching.inputs.filter_state", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.FilterStateInput" + ] + }, + { + "name": "envoy.matching.inputs.request_headers", + "category": "envoy.matching.http.input", + "type_urls": ["envoy.type.matcher.v3.HttpRequestHeaderMatchInput"] + }, + { + "name": "envoy.matching.inputs.request_trailers", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpRequestTrailerMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.response_headers", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseHeaderMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.response_trailers", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseTrailerMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.server_name", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.ServerNameInput" + ] + }, + { + "name": "envoy.matching.inputs.source_ip", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.source_port", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourcePortInput" + ] + }, + { + "name": "envoy.matching.inputs.source_type", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceTypeInput" + ] + }, + { + "name": "envoy.matching.inputs.status_code_class_input", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseStatusCodeClassMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.status_code_input", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseStatusCodeMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.subject", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.SubjectInput" + ] + }, + { + "name": "envoy.matching.inputs.uri_san", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.UriSanInput" + ] + }, + { + "name": "query_params", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpRequestQueryParamMatchInput" + ] + }, + { + "name": "envoy.formatter.cel", + "category": "envoy.formatter", + "type_urls": ["envoy.extensions.formatter.cel.v3.Cel"] + }, + { + "name": "envoy.formatter.metadata", + "category": "envoy.formatter", + "type_urls": ["envoy.extensions.formatter.metadata.v3.Metadata"] + }, + { + "name": "envoy.formatter.req_without_query", + "category": "envoy.formatter", + "type_urls": [ + "envoy.extensions.formatter.req_without_query.v3.ReqWithoutQuery" + ] + }, + { + "name": "envoy.ssl.server_context_factory.default", + "category": "envoy.ssl.server_context_factory" + }, + { + "name": "envoy.bandwidth_limit", + "category": "envoy.filters.http" + }, + { + "name": "envoy.buffer", + "category": "envoy.filters.http" + }, + { + "name": "envoy.cors", + "category": "envoy.filters.http" + }, + { + "name": "envoy.csrf", + "category": "envoy.filters.http" + }, + { + "name": "envoy.ext_authz", + "category": "envoy.filters.http" + }, + { + "name": "envoy.ext_proc", + "category": "envoy.filters.http" + }, + { + "name": "envoy.extensions.filters.http.dynamic_modules", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilter", + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilterPerRoute" + ] + }, + { + "name": "envoy.fault", + "category": "envoy.filters.http" + }, + { + "name": "envoy.filters.http.adaptive_concurrency", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.adaptive_concurrency.v3.AdaptiveConcurrency" + ] + }, + { + "name": "envoy.filters.http.admission_control", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.admission_control.v3.AdmissionControl" + ] + }, + { + "name": "envoy.filters.http.alternate_protocols_cache", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.alternate_protocols_cache.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.http.api_key_auth", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.api_key_auth.v3.ApiKeyAuth", + "envoy.extensions.filters.http.api_key_auth.v3.ApiKeyAuthPerRoute" + ] + }, + { + "name": "envoy.filters.http.aws_lambda", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.aws_lambda.v3.Config", + "envoy.extensions.filters.http.aws_lambda.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.aws_request_signing", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigning", + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigningPerRoute" + ] + }, + { + "name": "envoy.filters.http.bandwidth_limit", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit" + ] + }, + { + "name": "envoy.filters.http.basic_auth", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.basic_auth.v3.BasicAuth", + "envoy.extensions.filters.http.basic_auth.v3.BasicAuthPerRoute" + ] + }, + { + "name": "envoy.filters.http.buffer", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.buffer.v3.Buffer", + "envoy.extensions.filters.http.buffer.v3.BufferPerRoute" + ] + }, + { + "name": "envoy.filters.http.cache", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.cache.v3.CacheConfig" + ] + }, + { + "name": "envoy.filters.http.cdn_loop", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.cdn_loop.v3.CdnLoopConfig" + ] + }, + { + "name": "envoy.filters.http.composite", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.composite.v3.Composite" + ] + }, + { + "name": "envoy.filters.http.compressor", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.compressor.v3.Compressor", + "envoy.extensions.filters.http.compressor.v3.CompressorPerRoute" + ] + }, + { + "name": "envoy.filters.http.connect_grpc_bridge", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.connect_grpc_bridge.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.http.cors", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.cors.v3.Cors", + "envoy.extensions.filters.http.cors.v3.CorsPolicy" + ] + }, + { + "name": "envoy.filters.http.credential_injector", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.credential_injector.v3.CredentialInjector" + ] + }, + { + "name": "envoy.filters.http.csrf", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.csrf.v3.CsrfPolicy"] + }, + { + "name": "envoy.filters.http.custom_response", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.custom_response.v3.CustomResponse" + ] + }, + { + "name": "envoy.filters.http.decompressor", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.decompressor.v3.Decompressor" + ] + }, + { + "name": "envoy.filters.http.dynamic_forward_proxy", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.dynamic_forward_proxy.v3.FilterConfig", + "envoy.extensions.filters.http.dynamic_forward_proxy.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.ext_authz", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ext_authz.v3.ExtAuthz", + "envoy.extensions.filters.http.ext_authz.v3.ExtAuthzPerRoute" + ] + }, + { + "name": "envoy.filters.http.ext_proc", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ext_proc.v3.ExtProcPerRoute", + "envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor" + ] + }, + { + "name": "envoy.filters.http.fault", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.fault.v3.HTTPFault"] + }, + { + "name": "envoy.filters.http.file_system_buffer", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.file_system_buffer.v3.FileSystemBufferFilterConfig" + ] + }, + { + "name": "envoy.filters.http.gcp_authn", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.gcp_authn.v3.GcpAuthnFilterConfig" + ] + }, + { + "name": "envoy.filters.http.geoip", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.geoip.v3.Geoip"] + }, + { + "name": "envoy.filters.http.grpc_field_extraction", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_field_extraction.v3.GrpcFieldExtractionConfig" + ] + }, + { + "name": "envoy.filters.http.grpc_http1_bridge", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_http1_bridge.v3.Config" + ] + }, + { + "name": "envoy.filters.http.grpc_http1_reverse_bridge", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_http1_reverse_bridge.v3.FilterConfig", + "envoy.extensions.filters.http.grpc_http1_reverse_bridge.v3.FilterConfigPerRoute" + ] + }, + { + "name": "envoy.filters.http.grpc_json_reverse_transcoder", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_json_reverse_transcoder.v3.GrpcJsonReverseTranscoder" + ] + }, + { + "name": "envoy.filters.http.grpc_json_transcoder", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_json_transcoder.v3.GrpcJsonTranscoder" + ] + }, + { + "name": "envoy.filters.http.grpc_stats", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_stats.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.http.grpc_web", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.grpc_web.v3.GrpcWeb"] + }, + { + "name": "envoy.filters.http.header_mutation", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutation", + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutationPerRoute" + ] + }, + { + "name": "envoy.filters.http.header_to_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.header_to_metadata.v3.Config" + ] + }, + { + "name": "envoy.filters.http.health_check", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.health_check.v3.HealthCheck" + ] + }, + { + "name": "envoy.filters.http.ip_tagging", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ip_tagging.v3.IPTagging" + ] + }, + { + "name": "envoy.filters.http.json_to_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.json_to_metadata.v3.JsonToMetadata" + ] + }, + { + "name": "envoy.filters.http.jwt_authn", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.jwt_authn.v3.JwtAuthentication", + "envoy.extensions.filters.http.jwt_authn.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.local_ratelimit", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit" + ] + }, + { + "name": "envoy.filters.http.lua", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.lua.v3.Lua", + "envoy.extensions.filters.http.lua.v3.LuaPerRoute" + ] + }, + { + "name": "envoy.filters.http.match_delegate", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.common.matching.v3.ExtensionWithMatcher", + "envoy.extensions.common.matching.v3.ExtensionWithMatcherPerRoute" + ] + }, + { + "name": "envoy.filters.http.oauth2", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.oauth2.v3.OAuth2"] + }, + { + "name": "envoy.filters.http.on_demand", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.on_demand.v3.OnDemand", + "envoy.extensions.filters.http.on_demand.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.original_src", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.original_src.v3.OriginalSrc" + ] + }, + { + "name": "envoy.filters.http.proto_message_extraction", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.proto_message_extraction.v3.ProtoMessageExtractionConfig" + ] + }, + { + "name": "envoy.filters.http.rate_limit_quota", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaFilterConfig", + "envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaOverride" + ] + }, + { + "name": "envoy.filters.http.ratelimit", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ratelimit.v3.RateLimit", + "envoy.extensions.filters.http.ratelimit.v3.RateLimitPerRoute" + ] + }, + { + "name": "envoy.filters.http.rbac", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.rbac.v3.RBAC", + "envoy.extensions.filters.http.rbac.v3.RBACPerRoute" + ] + }, + { + "name": "envoy.filters.http.router", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.router.v3.Router"] + }, + { + "name": "envoy.filters.http.set_filter_state", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.set_filter_state.v3.Config" + ] + }, + { + "name": "envoy.filters.http.set_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.set_metadata.v3.Config" + ] + }, + { + "name": "envoy.filters.http.stateful_session", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.stateful_session.v3.StatefulSession", + "envoy.extensions.filters.http.stateful_session.v3.StatefulSessionPerRoute" + ] + }, + { + "name": "envoy.filters.http.tap", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.tap.v3.Tap"] + }, + { + "name": "envoy.filters.http.thrift_to_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.thrift_to_metadata.v3.ThriftToMetadata" + ] + }, + { + "name": "envoy.filters.http.wasm", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.wasm.v3.Wasm"] + }, + { + "name": "envoy.geoip", + "category": "envoy.filters.http" + }, + { + "name": "envoy.grpc_http1_bridge", + "category": "envoy.filters.http" + }, + { + "name": "envoy.grpc_json_transcoder", + "category": "envoy.filters.http" + }, + { + "name": "envoy.grpc_web", + "category": "envoy.filters.http" + }, + { + "name": "envoy.health_check", + "category": "envoy.filters.http" + }, + { + "name": "envoy.ip_tagging", + "category": "envoy.filters.http" + }, + { + "name": "envoy.local_rate_limit", + "category": "envoy.filters.http" + }, + { + "name": "envoy.lua", + "category": "envoy.filters.http" + }, + { + "name": "envoy.rate_limit", + "category": "envoy.filters.http" + }, + { + "name": "envoy.router", + "category": "envoy.filters.http" + }, + { + "name": "envoy.access_loggers.extension_filters.cel", + "category": "envoy.access_loggers.extension_filters", + "type_urls": [ + "envoy.extensions.access_loggers.filters.cel.v3.ExpressionFilter" + ] + }, + { + "name": "envoy.matching.custom_matchers.domain_matcher", + "category": "envoy.matching.network.custom_matchers", + "type_urls": ["xds.type.matcher.v3.ServerNameMatcher"] + }, + { + "name": "envoy.matching.custom_matchers.trie_matcher", + "category": "envoy.matching.network.custom_matchers", + "type_urls": ["xds.type.matcher.v3.IPMatcher"] + }, + { + "name": "envoy.tracers.datadog", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.DatadogConfig"] + }, + { + "name": "envoy.tracers.fluentd", + "category": "envoy.tracers", + "type_urls": ["envoy.extensions.tracers.fluentd.v3.FluentdConfig"] + }, + { + "name": "envoy.tracers.opentelemetry", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.OpenTelemetryConfig"] + }, + { + "name": "envoy.tracers.skywalking", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.SkyWalkingConfig"] + }, + { + "name": "envoy.tracers.xray", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.XRayConfig"] + }, + { + "name": "envoy.tracers.zipkin", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.ZipkinConfig"] + }, + { + "name": "envoy.zipkin", + "category": "envoy.tracers" + }, + { + "name": "envoy.retry_host_predicates.omit_canary_hosts", + "category": "envoy.retry_host_predicates", + "type_urls": [ + "envoy.extensions.retry.host.omit_canary_hosts.v3.OmitCanaryHostsPredicate" + ] + }, + { + "name": "envoy.retry_host_predicates.omit_host_metadata", + "category": "envoy.retry_host_predicates", + "type_urls": [ + "envoy.extensions.retry.host.omit_host_metadata.v3.OmitHostMetadataConfig" + ] + }, + { + "name": "envoy.retry_host_predicates.previous_hosts", + "category": "envoy.retry_host_predicates", + "type_urls": [ + "envoy.extensions.retry.host.previous_hosts.v3.PreviousHostsPredicate" + ] + }, + { + "name": "envoy.rds_factory.default", + "category": "envoy.rds_factory" + }, + { + "name": "envoy.path.match.uri_template.uri_template_matcher", + "category": "envoy.path.match", + "type_urls": [ + "envoy.extensions.path.match.uri_template.v3.UriTemplateMatchConfig" + ] + }, + { + "name": "envoy.path.rewrite.uri_template.uri_template_rewriter", + "category": "envoy.path.rewrite", + "type_urls": [ + "envoy.extensions.path.rewrite.uri_template.v3.UriTemplateRewriteConfig" + ] + }, + { + "name": "envoy.health_checkers.grpc", + "category": "envoy.health_checkers", + "type_urls": ["envoy.config.core.v3.HealthCheck.GrpcHealthCheck"] + }, + { + "name": "envoy.health_checkers.http", + "category": "envoy.health_checkers", + "type_urls": ["envoy.config.core.v3.HealthCheck.HttpHealthCheck"] + }, + { + "name": "envoy.health_checkers.redis", + "category": "envoy.health_checkers", + "type_urls": ["envoy.extensions.health_checkers.redis.v3.Redis"] + }, + { + "name": "envoy.health_checkers.tcp", + "category": "envoy.health_checkers", + "type_urls": ["envoy.config.core.v3.HealthCheck.TcpHealthCheck"] + }, + { + "name": "envoy.health_checkers.thrift", + "category": "envoy.health_checkers", + "type_urls": ["envoy.extensions.health_checkers.thrift.v3.Thrift"] + }, + { + "name": "quic.http_server_connection.default", + "category": "quic.http_server_connection" + }, + { + "name": "envoy.matching.input_matchers.generic_request_matcher", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.RequestMatcher" + ] + }, + { + "name": "envoy.matching.matchers.cel_matcher", + "category": "envoy.matching.input_matchers", + "type_urls": ["xds.type.matcher.v3.CelMatcher"] + }, + { + "name": "envoy.matching.matchers.consistent_hashing", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.matching.input_matchers.consistent_hashing.v3.ConsistentHashing" + ] + }, + { + "name": "envoy.matching.matchers.ip", + "category": "envoy.matching.input_matchers", + "type_urls": ["envoy.extensions.matching.input_matchers.ip.v3.Ip"] + }, + { + "name": "envoy.matching.matchers.metadata_matcher", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.matching.input_matchers.metadata.v3.Metadata" + ] + }, + { + "name": "envoy.matching.matchers.runtime_fraction", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.matching.input_matchers.runtime_fraction.v3.RuntimeFraction" + ] + }, + { + "name": "envoy.extensions.http.custom_response.local_response_policy", + "category": "envoy.http.custom_response", + "type_urls": [ + "envoy.extensions.http.custom_response.local_response_policy.v3.LocalResponsePolicy" + ] + }, + { + "name": "envoy.extensions.http.custom_response.redirect_policy", + "category": "envoy.http.custom_response", + "type_urls": [ + "envoy.extensions.http.custom_response.redirect_policy.v3.RedirectPolicy" + ] + }, + { + "name": "envoy.request_id.uuid", + "category": "envoy.request_id", + "type_urls": [ + "envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig" + ] + }, + { + "name": "envoy.connection_handler.default", + "category": "envoy.connection_handler" + }, + { + "name": "envoy.http.header_validators.envoy_default", + "category": "envoy.http.header_validators", + "type_urls": [ + "envoy.extensions.http.header_validators.envoy_default.v3.HeaderValidatorConfig" + ] + }, + { + "name": "envoy.listener_manager_impl.default", + "category": "envoy.listener_manager_impl", + "type_urls": ["envoy.config.listener.v3.ListenerManager"] + }, + { + "name": "envoy.listener_manager_impl.validation", + "category": "envoy.listener_manager_impl", + "type_urls": [ + "envoy.config.listener.v3.ValidationListenerManager" + ] + }, + { + "name": "envoy.generic_proxy.codecs.dubbo", + "category": "envoy.generic_proxy.codecs", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.codecs.dubbo.v3.DubboCodecConfig" + ] + }, + { + "name": "envoy.generic_proxy.codecs.http1", + "category": "envoy.generic_proxy.codecs", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.codecs.http1.v3.Http1CodecConfig" + ] + }, + { + "name": "envoy.load_balancing_policies.client_side_weighted_round_robin", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.client_side_weighted_round_robin.v3.ClientSideWeightedRoundRobin" + ] + }, + { + "name": "envoy.load_balancing_policies.cluster_provided", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.cluster_provided.v3.ClusterProvided" + ] + }, + { + "name": "envoy.load_balancing_policies.least_request", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest" + ] + }, + { + "name": "envoy.load_balancing_policies.maglev", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.maglev.v3.Maglev" + ] + }, + { + "name": "envoy.load_balancing_policies.override_host", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.override_host.v3.OverrideHost" + ] + }, + { + "name": "envoy.load_balancing_policies.random", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.random.v3.Random" + ] + }, + { + "name": "envoy.load_balancing_policies.ring_hash", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.ring_hash.v3.RingHash" + ] + }, + { + "name": "envoy.load_balancing_policies.round_robin", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.round_robin.v3.RoundRobin" + ] + }, + { + "name": "envoy.load_balancing_policies.subset", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.subset.v3.Subset" + ] + }, + { + "name": "envoy.extensions.http.cache.file_system_http_cache", + "category": "envoy.http.cache", + "type_urls": [ + "envoy.extensions.http.cache.file_system_http_cache.v3.FileSystemHttpCacheConfig" + ] + }, + { + "name": "envoy.extensions.http.cache.simple", + "category": "envoy.http.cache", + "type_urls": [ + "envoy.extensions.http.cache.simple_http_cache.v3.SimpleHttpCacheConfig" + ] + }, + { + "name": "envoy.rate_limit_descriptors.expr", + "category": "envoy.rate_limit_descriptors", + "type_urls": [ + "envoy.extensions.rate_limit_descriptors.expr.v3.Descriptor" + ] + }, + { + "name": "envoy.extensions.http.ext_proc.save_processing_response", + "category": "envoy.http.ext_proc.response_processors", + "type_urls": [ + "envoy.extensions.http.ext_proc.response_processors.save_processing_response.v3.SaveProcessingResponse" + ] + }, + { + "name": "envoy.quic.proof_source.filter_chain", + "category": "envoy.quic.proof_source", + "type_urls": [ + "envoy.extensions.quic.proof_source.v3.ProofSourceConfig" + ] + }, + { + "name": "envoy.bootstrap.internal_listener", + "category": "envoy.bootstrap", + "type_urls": [ + "envoy.extensions.bootstrap.internal_listener.v3.InternalListener" + ] + }, + { + "name": "envoy.bootstrap.wasm", + "category": "envoy.bootstrap", + "type_urls": ["envoy.extensions.wasm.v3.WasmService"] + }, + { + "name": "envoy.extensions.network.socket_interface.default_socket_interface", + "category": "envoy.bootstrap", + "type_urls": [ + "envoy.extensions.network.socket_interface.v3.DefaultSocketInterface" + ] + }, + { + "name": "envoy.quic.connection_debug_visitor.basic", + "category": "envoy.quic.connection_debug_visitor", + "type_urls": [ + "envoy.extensions.quic.connection_debug_visitor.v3.BasicConfig" + ] + }, + { + "name": "envoy.quic.connection_debug_visitor.quic_stats", + "category": "envoy.quic.connection_debug_visitor", + "type_urls": [ + "envoy.extensions.quic.connection_debug_visitor.quic_stats.v3.Config" + ] + }, + { + "name": "envoy.string_matcher.lua", + "category": "envoy.string_matcher", + "type_urls": ["envoy.extensions.string_matcher.lua.v3.Lua"] + }, + { + "name": "envoy.watchdog.abort_action", + "category": "envoy.guarddog_actions", + "type_urls": ["envoy.watchdog.v3.AbortActionConfig"] + }, + { + "name": "envoy.watchdog.profile_action", + "category": "envoy.guarddog_actions", + "type_urls": [ + "envoy.extensions.watchdog.profile_action.v3.ProfileActionConfig" + ] + }, + { + "name": "envoy.tls.cert_validator.default", + "category": "envoy.tls.cert_validator" + }, + { + "name": "envoy.tls.cert_validator.spiffe", + "category": "envoy.tls.cert_validator" + }, + { + "name": "envoy.http.early_header_mutation.header_mutation", + "category": "envoy.http.early_header_mutation", + "type_urls": [ + "envoy.extensions.http.early_header_mutation.header_mutation.v3.HeaderMutation" + ] + }, + { + "name": "envoy.regex_engines.google_re2", + "category": "envoy.regex_engines", + "type_urls": ["envoy.extensions.regex_engines.v3.GoogleRE2"] + }, + { + "name": "envoy.ip", + "category": "envoy.resolvers" + }, + { + "name": "envoy.matching.generic_proxy.input.host", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.HostMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.method", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.MethodMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.path", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.PathMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.property", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.PropertyMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.request", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.RequestMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.service", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.ServiceMatchInput" + ] + }, + { + "name": "envoy.http.stateful_header_formatters.preserve_case", + "category": "envoy.http.stateful_header_formatters", + "type_urls": [ + "envoy.extensions.http.header_formatters.preserve_case.v3.PreserveCaseFormatterConfig" + ] + }, + { + "name": "preserve_case", + "category": "envoy.http.stateful_header_formatters" + }, + { + "name": "envoy.quic.connection_id_generator.quic_lb", + "category": "envoy.quic.connection_id_generator", + "type_urls": [ + "envoy.extensions.quic.connection_id_generator.quic_lb.v3.Config" + ] + }, + { + "name": "envoy.quic.deterministic_connection_id_generator", + "category": "envoy.quic.connection_id_generator", + "type_urls": [ + "envoy.extensions.quic.connection_id_generator.v3.DeterministicConnectionIdGeneratorConfig" + ] + }, + { + "name": "envoy.health_check.event_sink.file", + "category": "envoy.health_check.event_sinks", + "type_urls": [ + "envoy.extensions.health_check.event_sinks.file.v3.HealthCheckEventFileSink" + ] + }, + { + "name": "envoy.matching.inputs.application_protocol", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.ApplicationProtocolInput" + ] + }, + { + "name": "envoy.matching.inputs.destination_ip", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationIPInput" + ] + }, + { + "name": "envoy.matching.inputs.destination_port", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationPortInput" + ] + }, + { + "name": "envoy.matching.inputs.direct_source_ip", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DirectSourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.dns_san", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.DnsSanInput" + ] + }, + { + "name": "envoy.matching.inputs.filter_state", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.FilterStateInput" + ] + }, + { + "name": "envoy.matching.inputs.server_name", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.ServerNameInput" + ] + }, + { + "name": "envoy.matching.inputs.source_ip", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.source_port", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourcePortInput" + ] + }, + { + "name": "envoy.matching.inputs.source_type", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceTypeInput" + ] + }, + { + "name": "envoy.matching.inputs.subject", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.SubjectInput" + ] + }, + { + "name": "envoy.matching.inputs.transport_protocol", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.TransportProtocolInput" + ] + }, + { + "name": "envoy.matching.inputs.uri_san", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.UriSanInput" + ] + }, + { + "name": "envoy.buffer", + "category": "envoy.filters.http.upstream" + }, + { + "name": "envoy.ext_proc", + "category": "envoy.filters.http.upstream" + }, + { + "name": "envoy.extensions.filters.http.dynamic_modules", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilter", + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilterPerRoute" + ] + }, + { + "name": "envoy.filters.http.admission_control", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.admission_control.v3.AdmissionControl" + ] + }, + { + "name": "envoy.filters.http.aws_lambda", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.aws_lambda.v3.Config", + "envoy.extensions.filters.http.aws_lambda.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.aws_request_signing", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigning", + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigningPerRoute" + ] + }, + { + "name": "envoy.filters.http.buffer", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.buffer.v3.Buffer", + "envoy.extensions.filters.http.buffer.v3.BufferPerRoute" + ] + }, + { + "name": "envoy.filters.http.composite", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.composite.v3.Composite" + ] + }, + { + "name": "envoy.filters.http.credential_injector", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.credential_injector.v3.CredentialInjector" + ] + }, + { + "name": "envoy.filters.http.ext_proc", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.ext_proc.v3.ExtProcPerRoute", + "envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor" + ] + }, + { + "name": "envoy.filters.http.header_mutation", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutation", + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutationPerRoute" + ] + }, + { + "name": "envoy.filters.http.lua", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.lua.v3.Lua", + "envoy.extensions.filters.http.lua.v3.LuaPerRoute" + ] + }, + { + "name": "envoy.filters.http.match_delegate", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.common.matching.v3.ExtensionWithMatcher", + "envoy.extensions.common.matching.v3.ExtensionWithMatcherPerRoute" + ] + }, + { + "name": "envoy.filters.http.upstream_codec", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.upstream_codec.v3.UpstreamCodec" + ] + }, + { + "name": "envoy.filters.http.wasm", + "category": "envoy.filters.http.upstream", + "type_urls": ["envoy.extensions.filters.http.wasm.v3.Wasm"] + }, + { + "name": "envoy.route_config_update_requester.default", + "category": "envoy.route_config_update_requester" + }, + { + "name": "envoy.filters.dubbo.router", + "category": "envoy.dubbo_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.dubbo_proxy.router.v3.Router" + ] + }, + { + "name": "envoy.rbac.matchers.upstream_ip_port", + "category": "envoy.rbac.matchers", + "type_urls": [ + "envoy.extensions.rbac.matchers.upstream_ip_port.v3.UpstreamIpPortMatcher" + ] + }, + { + "name": "envoy.compression.brotli.compressor", + "category": "envoy.compression.compressor", + "type_urls": [ + "envoy.extensions.compression.brotli.compressor.v3.Brotli" + ] + }, + { + "name": "envoy.compression.gzip.compressor", + "category": "envoy.compression.compressor", + "type_urls": [ + "envoy.extensions.compression.gzip.compressor.v3.Gzip" + ] + }, + { + "name": "envoy.compression.zstd.compressor", + "category": "envoy.compression.compressor", + "type_urls": [ + "envoy.extensions.compression.zstd.compressor.v3.Zstd" + ] + }, + { + "name": "envoy.config_subscription.ads", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.ads_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.aggregated_grpc_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.delta_grpc", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.delta_grpc_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.filesystem", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.filesystem_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.grpc", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.rest", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.grpc_credentials.default", + "category": "envoy.grpc_credentials" + }, + { + "name": "envoy.grpc_credentials.file_based_metadata", + "category": "envoy.grpc_credentials" + }, + { + "name": "envoy.transport_sockets.alts", + "category": "envoy.transport_sockets.downstream", + "type_urls": ["envoy.extensions.transport_sockets.alts.v3.Alts"] + }, + { + "name": "envoy.transport_sockets.quic", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.quic.v3.QuicDownstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.raw_buffer", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.raw_buffer.v3.RawBuffer" + ] + }, + { + "name": "envoy.transport_sockets.starttls", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.starttls.v3.StartTlsConfig" + ] + }, + { + "name": "envoy.transport_sockets.tap", + "category": "envoy.transport_sockets.downstream", + "type_urls": ["envoy.extensions.transport_sockets.tap.v3.Tap"] + }, + { + "name": "envoy.transport_sockets.tcp_stats", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tcp_stats.v3.Config" + ] + }, + { + "name": "envoy.transport_sockets.tls", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext" + ] + }, + { + "name": "raw_buffer", + "category": "envoy.transport_sockets.downstream" + }, + { + "name": "starttls", + "category": "envoy.transport_sockets.downstream" + }, + { + "name": "tls", + "category": "envoy.transport_sockets.downstream" + }, + { + "name": "envoy.matching.actions.format_string", + "category": "envoy.matching.action", + "type_urls": ["envoy.config.core.v3.SubstitutionFormatString"] + }, + { + "name": "filter-chain-name", + "category": "envoy.matching.action", + "type_urls": ["google.protobuf.StringValue"] + }, + { + "name": "dubbo", + "category": "envoy.dubbo_proxy.protocols" + }, + { + "name": "envoy.http.stateful_session.cookie", + "category": "envoy.http.stateful_session", + "type_urls": [ + "envoy.extensions.http.stateful_session.cookie.v3.CookieBasedSessionState" + ] + }, + { + "name": "envoy.http.stateful_session.envelope", + "category": "envoy.http.stateful_session", + "type_urls": [ + "envoy.extensions.http.stateful_session.envelope.v3.EnvelopeSessionState" + ] + }, + { + "name": "envoy.http.stateful_session.header", + "category": "envoy.http.stateful_session", + "type_urls": [ + "envoy.extensions.http.stateful_session.header.v3.HeaderBasedSessionState" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.always_on", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.AlwaysOnSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.cel", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.CELSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.dynatrace", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.DynatraceSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.parent_based", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.ParentBasedSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.trace_id_ratio_based", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.TraceIdRatioBasedSamplerConfig" + ] + }, + { + "name": "envoy.built_in_formatters.cel", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.built_in_formatters.http.default", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.built_in_formatters.metadata", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.built_in_formatters.stream_info.default", + "category": "envoy.built_in_formatters" + }, + { + "name": "quic.server_preferred_address.datasource", + "category": "envoy.quic.server_preferred_address", + "type_urls": [ + "envoy.extensions.quic.server_preferred_address.v3.DataSourceServerPreferredAddressConfig" + ] + }, + { + "name": "quic.server_preferred_address.fixed", + "category": "envoy.quic.server_preferred_address", + "type_urls": [ + "envoy.extensions.quic.server_preferred_address.v3.FixedServerPreferredAddressConfig" + ] + }, + { + "name": "envoy.router.cluster_specifier_plugin.lua", + "category": "envoy.router.cluster_specifier_plugin", + "type_urls": [ + "envoy.extensions.router.cluster_specifiers.lua.v3.LuaConfig" + ] + }, + { + "name": "envoy.router.cluster_specifier_plugin.matcher", + "category": "envoy.router.cluster_specifier_plugin", + "type_urls": [ + "envoy.extensions.router.cluster_specifiers.matcher.v3.MatcherClusterSpecifier" + ] + }, + { + "name": "envoy.internal_redirect_predicates.allow_listed_routes", + "category": "envoy.internal_redirect_predicates", + "type_urls": [ + "envoy.extensions.internal_redirect.allow_listed_routes.v3.AllowListedRoutesConfig" + ] + }, + { + "name": "envoy.internal_redirect_predicates.previous_routes", + "category": "envoy.internal_redirect_predicates", + "type_urls": [ + "envoy.extensions.internal_redirect.previous_routes.v3.PreviousRoutesConfig" + ] + }, + { + "name": "envoy.internal_redirect_predicates.safe_cross_scheme", + "category": "envoy.internal_redirect_predicates", + "type_urls": [ + "envoy.extensions.internal_redirect.safe_cross_scheme.v3.SafeCrossSchemeConfig" + ] + }, + { + "name": "envoy.matching.common_inputs.environment_variable", + "category": "envoy.matching.common_inputs", + "type_urls": [ + "envoy.extensions.matching.common_inputs.environment_variable.v3.Config" + ] + }, + { + "name": "envoy.config_mux.delta_grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "envoy.config_mux.grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "envoy.config_mux.new_grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "envoy.config_mux.sotw_grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "envoy.tracers.opentelemetry.resource_detectors.dynatrace", + "category": "envoy.tracers.opentelemetry.resource_detectors", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.resource_detectors.v3.DynatraceResourceDetectorConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.resource_detectors.environment", + "category": "envoy.tracers.opentelemetry.resource_detectors", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.resource_detectors.v3.EnvironmentResourceDetectorConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.resource_detectors.static_config", + "category": "envoy.tracers.opentelemetry.resource_detectors", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.resource_detectors.v3.StaticConfigResourceDetectorConfig" + ] + }, + { + "name": "envoy.quic.crypto_stream.server.quiche", + "category": "envoy.quic.server.crypto_stream", + "type_urls": [ + "envoy.extensions.quic.crypto_stream.v3.CryptoServerStreamConfig" + ] + }, + { + "name": "auto", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "binary", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "binary/non-strict", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "compact", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "twitter", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "envoy.srds_factory.default", + "category": "envoy.srds_factory" + }, + { + "name": "envoy.filters.udp.dns_filter", + "category": "envoy.filters.udp_listener", + "type_urls": [ + "envoy.extensions.filters.udp.dns_filter.v3.DnsFilterConfig" + ] + }, + { + "name": "envoy.filters.udp_listener.udp_proxy", + "category": "envoy.filters.udp_listener", + "type_urls": [ + "envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig" + ] + }, + { + "name": "envoy.filters.listener.http_inspector", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.http_inspector.v3.HttpInspector" + ] + }, + { + "name": "envoy.filters.listener.local_ratelimit", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.local_ratelimit.v3.LocalRateLimit" + ] + }, + { + "name": "envoy.filters.listener.original_dst", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.original_dst.v3.OriginalDst" + ] + }, + { + "name": "envoy.filters.listener.original_src", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.original_src.v3.OriginalSrc" + ] + }, + { + "name": "envoy.filters.listener.proxy_protocol", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.proxy_protocol.v3.ProxyProtocol" + ] + }, + { + "name": "envoy.filters.listener.tls_inspector", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.tls_inspector.v3.TlsInspector" + ] + }, + { + "name": "envoy.listener.http_inspector", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.original_dst", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.original_src", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.proxy_protocol", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.tls_inspector", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.filters.thrift.header_to_metadata", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.filters.header_to_metadata.v3.HeaderToMetadata" + ] + }, + { + "name": "envoy.filters.thrift.payload_to_metadata", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.filters.payload_to_metadata.v3.PayloadToMetadata" + ] + }, + { + "name": "envoy.filters.thrift.rate_limit", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.filters.ratelimit.v3.RateLimit" + ] + }, + { + "name": "envoy.filters.thrift.router", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.router.v3.Router" + ] + }, + { + "name": "envoy.retry_priorities.previous_priorities", + "category": "envoy.retry_priorities", + "type_urls": [ + "envoy.extensions.retry.priority.previous_priorities.v3.PreviousPrioritiesConfig" + ] + }, + { + "name": "envoy.udp_packet_writer.default", + "category": "envoy.udp_packet_writer", + "type_urls": [ + "envoy.extensions.udp_packet_writer.v3.UdpDefaultWriterFactory" + ] + }, + { + "name": "envoy.udp_packet_writer.gso", + "category": "envoy.udp_packet_writer", + "type_urls": [ + "envoy.extensions.udp_packet_writer.v3.UdpGsoBatchWriterFactory" + ] + }, + { + "name": "default", + "category": "network.connection.client" + }, + { + "name": "envoy_internal", + "category": "network.connection.client" + }, + { + "name": "envoy.route.early_data_policy.default", + "category": "envoy.route.early_data_policy", + "type_urls": [ + "envoy.extensions.early_data.v3.DefaultEarlyDataPolicy" + ] + }, + { + "name": "envoy.transport_sockets.alts", + "category": "envoy.transport_sockets.upstream", + "type_urls": ["envoy.extensions.transport_sockets.alts.v3.Alts"] + }, + { + "name": "envoy.transport_sockets.http_11_proxy", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.http_11_proxy.v3.Http11ProxyUpstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.internal_upstream", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.internal_upstream.v3.InternalUpstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.quic", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.quic.v3.QuicUpstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.raw_buffer", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.raw_buffer.v3.RawBuffer" + ] + }, + { + "name": "envoy.transport_sockets.starttls", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.starttls.v3.UpstreamStartTlsConfig" + ] + }, + { + "name": "envoy.transport_sockets.tap", + "category": "envoy.transport_sockets.upstream", + "type_urls": ["envoy.extensions.transport_sockets.tap.v3.Tap"] + }, + { + "name": "envoy.transport_sockets.tcp_stats", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tcp_stats.v3.Config" + ] + }, + { + "name": "envoy.transport_sockets.tls", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext" + ] + }, + { + "name": "envoy.transport_sockets.upstream_proxy_protocol", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.proxy_protocol.v3.ProxyProtocolUpstreamTransport" + ] + }, + { + "name": "raw_buffer", + "category": "envoy.transport_sockets.upstream" + }, + { + "name": "starttls", + "category": "envoy.transport_sockets.upstream" + }, + { + "name": "tls", + "category": "envoy.transport_sockets.upstream" + }, + { + "name": "envoy.config.validators.minimum_clusters", + "category": "envoy.config.validators" + }, + { + "name": "envoy.config.validators.minimum_clusters_validator", + "category": "envoy.config.validators", + "type_urls": [ + "envoy.extensions.config.validators.minimum_clusters.v3.MinimumClustersValidator" + ] + }, + { + "name": "dubbo.hessian2", + "category": "envoy.dubbo_proxy.serializers" + }, + { + "name": "envoy.cluster.dns", + "category": "envoy.clusters", + "type_urls": ["envoy.extensions.clusters.dns.v3.DnsCluster"] + }, + { + "name": "envoy.cluster.eds", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.logical_dns", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.original_dst", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.static", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.strict_dns", + "category": "envoy.clusters" + }, + { + "name": "envoy.clusters.aggregate", + "category": "envoy.clusters", + "type_urls": [ + "envoy.extensions.clusters.aggregate.v3.ClusterConfig" + ] + }, + { + "name": "envoy.clusters.dynamic_forward_proxy", + "category": "envoy.clusters", + "type_urls": [ + "envoy.extensions.clusters.dynamic_forward_proxy.v3.ClusterConfig" + ] + }, + { + "name": "envoy.clusters.redis", + "category": "envoy.clusters", + "type_urls": [ + "envoy.extensions.clusters.redis.v3.RedisClusterConfig" + ] + }, + { + "name": "envoy.rbac.principals.mtls_authenticated", + "category": "envoy.rbac.principals", + "type_urls": [ + "envoy.extensions.rbac.principals.mtls_authenticated.v3.Config" + ] + }, + { + "name": "envoy.echo", + "category": "envoy.filters.network" + }, + { + "name": "envoy.ext_authz", + "category": "envoy.filters.network" + }, + { + "name": "envoy.filters.network.connection_limit", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.connection_limit.v3.ConnectionLimit" + ] + }, + { + "name": "envoy.filters.network.direct_response", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.direct_response.v3.Config" + ] + }, + { + "name": "envoy.filters.network.dubbo_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.dubbo_proxy.v3.DubboProxy" + ] + }, + { + "name": "envoy.filters.network.echo", + "category": "envoy.filters.network", + "type_urls": ["envoy.extensions.filters.network.echo.v3.Echo"] + }, + { + "name": "envoy.filters.network.ext_authz", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.ext_authz.v3.ExtAuthz" + ] + }, + { + "name": "envoy.filters.network.ext_proc", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.ext_proc.v3.NetworkExternalProcessor" + ] + }, + { + "name": "envoy.filters.network.generic_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.v3.GenericProxy" + ] + }, + { + "name": "envoy.filters.network.http_connection_manager", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager" + ] + }, + { + "name": "envoy.filters.network.local_ratelimit", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.local_ratelimit.v3.LocalRateLimit" + ] + }, + { + "name": "envoy.filters.network.mongo_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.mongo_proxy.v3.MongoProxy" + ] + }, + { + "name": "envoy.filters.network.ratelimit", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.ratelimit.v3.RateLimit" + ] + }, + { + "name": "envoy.filters.network.rbac", + "category": "envoy.filters.network", + "type_urls": ["envoy.extensions.filters.network.rbac.v3.RBAC"] + }, + { + "name": "envoy.filters.network.redis_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.redis_proxy.v3.RedisProxy" + ] + }, + { + "name": "envoy.filters.network.set_filter_state", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.set_filter_state.v3.Config" + ] + }, + { + "name": "envoy.filters.network.sni_cluster", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.sni_cluster.v3.SniCluster" + ] + }, + { + "name": "envoy.filters.network.sni_dynamic_forward_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.sni_dynamic_forward_proxy.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.network.tcp_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy" + ] + }, + { + "name": "envoy.filters.network.thrift_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.v3.ThriftProxy" + ] + }, + { + "name": "envoy.filters.network.wasm", + "category": "envoy.filters.network", + "type_urls": ["envoy.extensions.filters.network.wasm.v3.Wasm"] + }, + { + "name": "envoy.filters.network.zookeeper_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.zookeeper_proxy.v3.ZooKeeperProxy" + ] + }, + { + "name": "envoy.http_connection_manager", + "category": "envoy.filters.network" + }, + { + "name": "envoy.mongo_proxy", + "category": "envoy.filters.network" + }, + { + "name": "envoy.ratelimit", + "category": "envoy.filters.network" + }, + { + "name": "envoy.redis_proxy", + "category": "envoy.filters.network" + }, + { + "name": "envoy.tcp_proxy", + "category": "envoy.filters.network" + }, + { + "name": "envoy.http.original_ip_detection.custom_header", + "category": "envoy.http.original_ip_detection", + "type_urls": [ + "envoy.extensions.http.original_ip_detection.custom_header.v3.CustomHeaderConfig" + ] + }, + { + "name": "envoy.http.original_ip_detection.xff", + "category": "envoy.http.original_ip_detection", + "type_urls": [ + "envoy.extensions.http.original_ip_detection.xff.v3.XffConfig" + ] + }, + { + "name": "envoy.filters.connection_pools.tcp.generic", + "category": "envoy.upstreams", + "type_urls": [ + "envoy.extensions.upstreams.tcp.generic.v3.GenericConnectionPoolProto" + ] + }, + { + "name": "envoy.filters.udp.session.dynamic_forward_proxy", + "category": "envoy.filters.udp.session", + "type_urls": [ + "envoy.extensions.filters.udp.udp_proxy.session.dynamic_forward_proxy.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.udp.session.http_capsule", + "category": "envoy.filters.udp.session", + "type_urls": [ + "envoy.extensions.filters.udp.udp_proxy.session.http_capsule.v3.FilterConfig" + ] + }, + { + "name": "envoy.dog_statsd", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.graphite_statsd", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.metrics_service", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.open_telemetry_stat_sink", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.stat_sinks.dog_statsd", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.DogStatsdSink"] + }, + { + "name": "envoy.stat_sinks.graphite_statsd", + "category": "envoy.stats_sinks", + "type_urls": [ + "envoy.extensions.stat_sinks.graphite_statsd.v3.GraphiteStatsdSink" + ] + }, + { + "name": "envoy.stat_sinks.hystrix", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.HystrixSink"] + }, + { + "name": "envoy.stat_sinks.metrics_service", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.MetricsServiceConfig"] + }, + { + "name": "envoy.stat_sinks.open_telemetry", + "category": "envoy.stats_sinks", + "type_urls": [ + "envoy.extensions.stat_sinks.open_telemetry.v3.SinkConfig" + ] + }, + { + "name": "envoy.stat_sinks.statsd", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.StatsdSink"] + }, + { + "name": "envoy.stat_sinks.wasm", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.extensions.stat_sinks.wasm.v3.Wasm"] + }, + { + "name": "envoy.statsd", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.key_value.file_based", + "category": "envoy.common.key_value", + "type_urls": [ + "envoy.extensions.key_value.file_based.v3.FileBasedKeyValueStoreConfig" + ] + }, + { + "name": "envoy.matching.custom_matchers.domain_matcher", + "category": "envoy.matching.http.custom_matchers", + "type_urls": ["xds.type.matcher.v3.ServerNameMatcher"] + }, + { + "name": "envoy.matching.custom_matchers.trie_matcher", + "category": "envoy.matching.http.custom_matchers", + "type_urls": ["xds.type.matcher.v3.IPMatcher"] + }, + { + "name": "envoy.geoip_providers.maxmind", + "category": "envoy.geoip_providers", + "type_urls": [ + "envoy.extensions.geoip_providers.maxmind.v3.MaxMindConfig" + ] + }, + { + "name": "envoy.resource_monitors.cgroup_memory", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.cgroup_memory.v3.CgroupMemoryConfig" + ] + }, + { + "name": "envoy.resource_monitors.cpu_utilization", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.cpu_utilization.v3.CpuUtilizationConfig" + ] + }, + { + "name": "envoy.resource_monitors.fixed_heap", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.fixed_heap.v3.FixedHeapConfig" + ] + }, + { + "name": "envoy.resource_monitors.injected_resource", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.injected_resource.v3.InjectedResourceConfig" + ] + } + ] + }, + "static_resources": { + "listeners": [ + { + "name": "envoy-gateway-proxy-stats-0.0.0.0-19001", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 19001 + } + }, + "filter_chains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "eg-stats-http", + "route_config": { + "name": "local_route", + "virtual_hosts": [ + { + "name": "prometheus_stats", + "domains": ["*"], + "routes": [ + { + "match": { + "path": "/stats/prometheus", + "headers": [ + { + "name": ":method", + "string_match": { + "exact": "GET" + } + } + ] + }, + "route": { + "cluster": "prometheus_stats" + } + } + ] + } + ] + }, + "http_filters": [ + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router" + } + } + ], + "normalize_path": true + } + } + ] + } + ], + "bypass_overload_manager": true + } + ], + "clusters": [ + { + "name": "prometheus_stats", + "type": "STATIC", + "connect_timeout": "0.250s", + "load_assignment": { + "cluster_name": "prometheus_stats", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "127.0.0.1", + "port_value": 19000 + } + } + } + } + ] + } + ] + } + }, + { + "name": "default/eg", + "type": "EDS", + "eds_cluster_config": { + "eds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "service_name": "default/eg" + }, + "connect_timeout": "10s", + "load_balancing_policy": { + "policies": [ + { + "typed_extension_config": { + "name": "envoy.load_balancing_policies.least_request", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest", + "locality_lb_config": { + "zone_aware_lb_config": { + "min_cluster_size": "1" + } + } + } + } + } + ] + } + }, + { + "name": "xds_cluster", + "type": "STRICT_DNS", + "connect_timeout": "10s", + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext", + "common_tls_context": { + "tls_params": { + "tls_maximum_protocol_version": "TLSv1_3" + }, + "tls_certificate_sds_secret_configs": [ + { + "name": "xds_certificate", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-certificate.json" + } + } + } + ], + "validation_context_sds_secret_config": { + "name": "xds_trusted_ca", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-trusted-ca.json" + } + } + } + } + } + }, + "load_assignment": { + "cluster_name": "xds_cluster", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "envoy-gateway.envoy-gateway-system.svc.cluster.local.", + "port_value": 18000 + } + } + }, + "load_balancing_weight": 1 + } + ], + "load_balancing_weight": 1 + } + ] + }, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": { + "connection_keepalive": { + "interval": "30s", + "timeout": "5s" + } + } + } + } + } + } + ] + }, + "dynamic_resources": { + "lds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "cds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "ads_config": { + "api_type": "DELTA_GRPC", + "grpc_services": [ + { + "envoy_grpc": { + "cluster_name": "xds_cluster" + } + } + ], + "set_node_on_first_message_only": true, + "transport_api_version": "V3" + } + }, + "cluster_manager": { + "local_cluster_name": "default/eg" + }, + "admin": { + "address": { + "socket_address": { + "address": "127.0.0.1", + "port_value": 19000 + } + }, + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ] + }, + "overload_manager": { + "refresh_interval": "0.250s", + "resource_monitors": [ + { + "name": "envoy.resource_monitors.global_downstream_max_connections", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.resource_monitors.downstream_connections.v3.DownstreamConnectionsConfig", + "max_active_downstream_connections": "50000" + } + } + ] + }, + "layered_runtime": { + "layers": [ + { + "name": "global_config", + "static_layer": { + "re2.max_program_size.error_level": "4294967295", + "envoy.restart_features.use_eds_cache_for_ads": true, + "re2.max_program_size.warn_level": 1000 + } + } + ] + } + }, + "last_updated": "2025-10-09T15:40:33.783Z" + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.ClustersConfigDump", + "version_info": "78", + "static_clusters": [ + { + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "default/eg", + "type": "EDS", + "eds_cluster_config": { + "eds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "service_name": "default/eg" + }, + "connect_timeout": "10s", + "load_balancing_policy": { + "policies": [ + { + "typed_extension_config": { + "name": "envoy.load_balancing_policies.least_request", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest", + "locality_lb_config": { + "zone_aware_lb_config": { + "min_cluster_size": "1" + } + } + } + } + } + ] + } + }, + "last_updated": "2025-10-09T15:40:33.793Z" + }, + { + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "prometheus_stats", + "type": "STATIC", + "connect_timeout": "0.250s", + "load_assignment": { + "cluster_name": "prometheus_stats", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "127.0.0.1", + "port_value": 19000 + } + } + } + } + ] + } + ] + } + }, + "last_updated": "2025-10-09T15:40:33.792Z" + }, + { + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "xds_cluster", + "type": "STRICT_DNS", + "connect_timeout": "10s", + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext", + "common_tls_context": { + "tls_params": { + "tls_maximum_protocol_version": "TLSv1_3" + }, + "tls_certificate_sds_secret_configs": [ + { + "name": "xds_certificate", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-certificate.json" + } + } + } + ], + "validation_context_sds_secret_config": { + "name": "xds_trusted_ca", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-trusted-ca.json" + } + } + } + } + } + }, + "load_assignment": { + "cluster_name": "xds_cluster", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "envoy-gateway.envoy-gateway-system.svc.cluster.local.", + "port_value": 18000 + } + } + }, + "load_balancing_weight": 1 + } + ], + "load_balancing_weight": 1 + } + ] + }, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": { + "connection_keepalive": { + "interval": "30s", + "timeout": "5s" + } + } + } + } + } + }, + "last_updated": "2025-10-09T15:40:33.793Z" + } + ], + "dynamic_active_clusters": [ + { + "version_info": "56d841e662a218c31534a1afd1e618486fb226e1fe6357a20afbc84e215b248d", + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "httproute/default/backend/rule/0", + "type": "EDS", + "eds_cluster_config": { + "eds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "service_name": "httproute/default/backend/rule/0" + }, + "connect_timeout": "10s", + "per_connection_buffer_limit_bytes": 32768, + "lb_policy": "LEAST_REQUEST", + "circuit_breakers": { + "thresholds": [ + { + "max_retries": 1024 + } + ] + }, + "dns_lookup_family": "V4_ONLY", + "metadata": { + "filter_metadata": { + "envoy-gateway": { + "resources": [ + { + "kind": "HTTPRoute", + "namespace": "default", + "name": "backend" + } + ] + } + } + }, + "common_lb_config": {}, + "ignore_health_on_host_removal": true, + "load_balancing_policy": { + "policies": [ + { + "typed_extension_config": { + "name": "envoy.load_balancing_policies.least_request", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest", + "locality_lb_config": { + "locality_weighted_lb_config": {} + } + } + } + } + ] + }, + "transport_socket_matches": [ + { + "name": "httproute/default/backend/rule/0/tls/0", + "match": { + "name": "httproute/default/backend/rule/0/tls/0" + }, + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext", + "common_tls_context": { + "tls_certificate_sds_secret_configs": [ + { + "name": "spiffe://examples.extensions.io/aws/us-west-2/envoy-proxy", + "sds_config": { + "api_config_source": { + "api_type": "GRPC", + "grpc_services": [ + { + "envoy_grpc": { + "cluster_name": "spire_agent" + } + } + ], + "transport_api_version": "V3" + }, + "resource_api_version": "V3" + } + } + ], + "combined_validation_context": { + "default_validation_context": { + "match_typed_subject_alt_names": [ + { + "san_type": "DNS", + "matcher": { + "exact": "www.example.com" + } + } + ] + }, + "validation_context_sds_secret_config": { + "name": "enable-backend-tls/default-ca", + "sds_config": { + "ads": {}, + "resource_api_version": "V3" + } + } + } + }, + "sni": "www.example.com" + } + } + } + ] + }, + "last_updated": "2025-10-09T15:40:33.810Z" + }, + { + "version_info": "89e4c1a9bcf332d8b33f5500bf0261bc256b36d38b29235674334e04af252277", + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "spire_agent", + "connect_timeout": "1s", + "http2_protocol_options": {}, + "load_assignment": { + "cluster_name": "spire_agent", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "pipe": { + "path": "/var/run/spiffe-workload-api/spire-agent.sock" + } + } + } + } + ] + } + ] + } + }, + "last_updated": "2025-10-09T15:40:33.809Z" + } + ] + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.ListenersConfigDump", + "version_info": "78", + "static_listeners": [ + { + "listener": { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "envoy-gateway-proxy-stats-0.0.0.0-19001", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 19001 + } + }, + "filter_chains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "eg-stats-http", + "route_config": { + "name": "local_route", + "virtual_hosts": [ + { + "name": "prometheus_stats", + "domains": ["*"], + "routes": [ + { + "match": { + "path": "/stats/prometheus", + "headers": [ + { + "name": ":method", + "string_match": { + "exact": "GET" + } + } + ] + }, + "route": { + "cluster": "prometheus_stats" + } + } + ] + } + ] + }, + "http_filters": [ + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router" + } + } + ], + "normalize_path": true + } + } + ] + } + ], + "bypass_overload_manager": true + }, + "last_updated": "2025-10-09T15:40:33.795Z" + } + ], + "dynamic_listeners": [ + { + "name": "envoy-gateway-proxy-ready-0.0.0.0-19003", + "active_state": { + "version_info": "480eb87881317ebff21162f54e4a9c59c648d67a93fb17232e909ed08547e473", + "listener": { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "envoy-gateway-proxy-ready-0.0.0.0-19003", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 19003 + } + }, + "filter_chains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "eg-ready-http", + "route_config": { + "name": "ready_route", + "virtual_hosts": [ + { + "name": "ready_route", + "domains": ["*"], + "routes": [ + { + "match": { + "prefix": "/" + }, + "direct_response": { + "status": 500 + } + } + ] + } + ] + }, + "http_filters": [ + { + "name": "envoy.filters.http.health_check", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.health_check.v3.HealthCheck", + "pass_through_mode": false, + "headers": [ + { + "name": ":path", + "string_match": { + "exact": "/ready" + } + } + ] + } + }, + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router", + "suppress_envoy_headers": true + } + } + ] + } + } + ] + } + ], + "bypass_overload_manager": true + }, + "last_updated": "2025-10-09T15:40:33.821Z" + } + }, + { + "name": "default/eg/http", + "active_state": { + "version_info": "2e65c7c424aec3131815f6a783c82a5c6b89060f750098ed9d13acc545652abd", + "listener": { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "default/eg/http", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 10080 + } + }, + "per_connection_buffer_limit_bytes": 32768, + "access_log": [ + { + "name": "envoy.access_loggers.file", + "filter": { + "response_flag_filter": { + "flags": ["NR"] + } + }, + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/stdout", + "log_format": { + "json_format": { + "response_code": "%RESPONSE_CODE%", + "response_flags": "%RESPONSE_FLAGS%", + "x-envoy-upstream-service-time": "%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%", + "x-envoy-origin-path": "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%", + "upstream_cluster": "%UPSTREAM_CLUSTER%", + "x-request-id": "%REQ(X-REQUEST-ID)%", + "protocol": "%PROTOCOL%", + "duration": "%DURATION%", + "downstream_remote_address": "%DOWNSTREAM_REMOTE_ADDRESS%", + "upstream_transport_failure_reason": "%UPSTREAM_TRANSPORT_FAILURE_REASON%", + "bytes_received": "%BYTES_RECEIVED%", + "response_code_details": "%RESPONSE_CODE_DETAILS%", + "x-forwarded-for": "%REQ(X-FORWARDED-FOR)%", + "bytes_sent": "%BYTES_SENT%", + "method": "%REQ(:METHOD)%", + "downstream_local_address": "%DOWNSTREAM_LOCAL_ADDRESS%", + "requested_server_name": "%REQUESTED_SERVER_NAME%", + ":authority": "%REQ(:AUTHORITY)%", + "upstream_host": "%UPSTREAM_HOST%", + "connection_termination_details": "%CONNECTION_TERMINATION_DETAILS%", + "user-agent": "%REQ(USER-AGENT)%", + "upstream_local_address": "%UPSTREAM_LOCAL_ADDRESS%", + "route_name": "%ROUTE_NAME%", + "start_time": "%START_TIME%" + } + } + } + } + ], + "default_filter_chain": { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "http-10080", + "rds": { + "config_source": { + "ads": {}, + "resource_api_version": "V3" + }, + "route_config_name": "default/eg/http" + }, + "http_filters": [ + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router", + "suppress_envoy_headers": true + } + } + ], + "http2_protocol_options": { + "max_concurrent_streams": 100, + "initial_stream_window_size": 65536, + "initial_connection_window_size": 1048576 + }, + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/stdout", + "log_format": { + "json_format": { + "response_flags": "%RESPONSE_FLAGS%", + "x-forwarded-for": "%REQ(X-FORWARDED-FOR)%", + "user-agent": "%REQ(USER-AGENT)%", + "x-request-id": "%REQ(X-REQUEST-ID)%", + "protocol": "%PROTOCOL%", + "downstream_remote_address": "%DOWNSTREAM_REMOTE_ADDRESS%", + "start_time": "%START_TIME%", + "upstream_host": "%UPSTREAM_HOST%", + "upstream_local_address": "%UPSTREAM_LOCAL_ADDRESS%", + "duration": "%DURATION%", + "route_name": "%ROUTE_NAME%", + "upstream_transport_failure_reason": "%UPSTREAM_TRANSPORT_FAILURE_REASON%", + "requested_server_name": "%REQUESTED_SERVER_NAME%", + "response_code_details": "%RESPONSE_CODE_DETAILS%", + "downstream_local_address": "%DOWNSTREAM_LOCAL_ADDRESS%", + "x-envoy-origin-path": "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%", + "response_code": "%RESPONSE_CODE%", + "bytes_received": "%BYTES_RECEIVED%", + "x-envoy-upstream-service-time": "%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%", + ":authority": "%REQ(:AUTHORITY)%", + "upstream_cluster": "%UPSTREAM_CLUSTER%", + "connection_termination_details": "%CONNECTION_TERMINATION_DETAILS%", + "bytes_sent": "%BYTES_SENT%", + "method": "%REQ(:METHOD)%" + } + } + } + } + ], + "use_remote_address": true, + "normalize_path": true, + "merge_slashes": true, + "server_header_transformation": "PASS_THROUGH", + "common_http_protocol_options": { + "headers_with_underscores_action": "REJECT_REQUEST" + }, + "path_with_escaped_slashes_action": "UNESCAPE_AND_REDIRECT" + } + } + ], + "name": "default/eg/http" + }, + "max_connections_to_accept_per_socket_event": 1 + }, + "last_updated": "2025-10-09T15:40:33.822Z" + } + } + ] + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.ScopedRoutesConfigDump" + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.RoutesConfigDump", + "static_route_configs": [ + { + "route_config": { + "@type": "type.googleapis.com/envoy.config.route.v3.RouteConfiguration", + "name": "local_route", + "virtual_hosts": [ + { + "name": "prometheus_stats", + "domains": ["*"], + "routes": [ + { + "match": { + "path": "/stats/prometheus", + "headers": [ + { + "name": ":method", + "string_match": { + "exact": "GET" + } + } + ] + }, + "route": { + "cluster": "prometheus_stats" + } + } + ] + } + ] + }, + "last_updated": "2025-10-09T15:40:33.794Z" + }, + { + "route_config": { + "@type": "type.googleapis.com/envoy.config.route.v3.RouteConfiguration", + "name": "ready_route", + "virtual_hosts": [ + { + "name": "ready_route", + "domains": ["*"], + "routes": [ + { + "match": { + "prefix": "/" + }, + "direct_response": { + "status": 500 + } + } + ] + } + ] + }, + "last_updated": "2025-10-09T15:40:33.820Z" + } + ], + "dynamic_route_configs": [ + { + "version_info": "bc44981323d08bcb24abad6867942912675bb35bb674f2ee9ae866efbe1375dd", + "route_config": { + "@type": "type.googleapis.com/envoy.config.route.v3.RouteConfiguration", + "name": "default/eg/http", + "virtual_hosts": [ + { + "name": "default/eg/http/www_example_com", + "domains": ["www.example.com"], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "httproute/default/backend/rule/0", + "upgrade_configs": [ + { + "upgrade_type": "websocket" + } + ] + }, + "metadata": { + "filter_metadata": { + "envoy-gateway": { + "resources": [ + { + "name": "backend", + "namespace": "default", + "kind": "HTTPRoute" + } + ] + } + } + }, + "name": "httproute/default/backend/rule/0/match/0/www_example_com" + } + ], + "metadata": { + "filter_metadata": { + "envoy-gateway": { + "resources": [ + { + "kind": "Gateway", + "namespace": "default", + "name": "eg", + "sectionName": "http" + } + ] + } + } + } + } + ], + "ignore_port_in_host_matching": true + }, + "last_updated": "2025-10-09T15:40:33.824Z" + } + ] + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.SecretsConfigDump", + "dynamic_active_secrets": [ + { + "name": "spiffe://examples.extensions.io/aws/us-west-2/envoy-proxy", + "version_info": "1", + "last_updated": "2025-10-09T15:40:33.818Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "spiffe://examples.extensions.io/aws/us-west-2/envoy-proxy", + "tls_certificate": { + "certificate_chain": { + "inline_string": "-----BEGIN CERTIFICATE-----\nMIIDIjCCAgqgAwIBAgIBADANBgkqhkiG9w0BAQsFADAtMRUwEwYDVQQKDAxleGFt\ncGxlIEluYy4xFDASBgNVBAMMC2V4YW1wbGUuY29tMB4XDTI1MTAwODIwNTgzM1oX\nDTI2MTAwODIwNTgzM1owODEXMBUGA1UEAwwOZXhhbXBsZS1jbGllbnQxHTAbBgNV\nBAoMFGV4YW1wbGUgb3JnYW5pemF0aW9uMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A\nMIIBCgKCAQEAoaRkTGVlKCzfM4O3O55RNFeXCalkPGqEBnt1XHEri8Dt5bbcOqEu\nOL6N6azRqSaYEz8fg5Hr0tR4atmLxs8UQucqveSFjaNgfRrso00miVlS225o7wXa\nVFAnKxQSoLSq3aTqNKxNspMtuakLaOthFS3YI0Z6ifS2A9f35TjDcTXmPJpHpOwY\n7s0zEu8bAlA4r9PWXVD9ylkALRfdH9a5T3eqVdrtgUOr4zxsHaD3xXeoyqXHrZE1\n8sLKXDomjAwQON3/DckbBV1HqjzbEzDGaZEqiJfzwZwvSG+CNfZA8LAbT1bEYc5h\nk//aXVno84bz4G5lRVk2MFwm9Peem86DKQIDAQABo0IwQDAdBgNVHQ4EFgQUrvOn\nbEg0O+i1GKIVfiGZX1fJ60IwHwYDVR0jBBgwFoAU36NYY/EuHhdWNE7pzMkQeFww\nZZYwDQYJKoZIhvcNAQELBQADggEBADCbtfynRDO6Sw+LhdenlJdkid921e7NsLeY\njOnyVT53eZB/14rjGqbjLhz8ZfMgtCaAU8EUy48D/Z8RZNaTWtF44WnzpLkxsGw1\nZNoBb6/LKOGSQBTiet3yeWdr0pfofqkFTZtBVXtOKspGSxYbl6zZfn55WKpX6nGE\nTv49JwFAmW6VOjoE0CqJMOSauTSAkWjGXKfVP+zkVXnGC4WSzKisfJYcZsnHx1q+\nfrSJT0hZdEOrYBwz2OS7XOn9abxwGwHzpF3vhQm9MVC3jU2s1DGjPW3b1y/DJtyg\ne+dm0+r5h7zh4X2TA85TJnPFKDhjPd2Opn2wMzjg8HSxCY/Ze2k=\n-----END CERTIFICATE-----" + }, + "private_key": { + "inline_string": "[redacted]" + } + } + } + }, + { + "name": "xds_certificate", + "last_updated": "2025-10-09T15:40:33.796Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "xds_certificate", + "tls_certificate": { + "certificate_chain": { + "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURLekNDQWhPZ0F3SUJBZ0lFSEsycTVqQU5CZ2txaGtpRzl3MEJBUXNGQURBc01SWXdGQVlEVlFRREV3MWwKYm5admVTMW5ZWFJsZDJGNU1SSXdFQVlEVlFRRkV3azVOalExTnpZd056Y3dIaGNOTWpVeE1EQTNNakF6T0RVegpXaGNOTXpBeE1EQTNNakF6T0RVeFdqQU1NUW93Q0FZRFZRUUREQUVxTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGCkFBT0NBUThBTUlJQkNnS0NBUUVBcW50TVVNNm5kYnJuOGdlSS85SVErR2JHbjkvMDFzS1hLbFl2SlI4eEhRRlAKNjJDZ1ZJNGIxZmdKbmRsU2ZqNUxBTGF6QVY3cU8rZFRDUmhmY3BYVWlPQ3NjdVQrNWpvMUpFTVp5UUgvc2J6VgpYN1hYR1BBOUViYjdxQ1l4VU5OM0ZJSnFteWg1L3NZNHJmSEdmaiszZWxrMlVDQlRiRGkrdncrNWVmU082N1hoCjh5RDZMZnVVUG5aWHF1RUNuTlNsMVFDVFQ2NVpwYWhzQTRYSmJRS0FQMzlMQzMwSXoveDNjM0FmZ0JHQmdDdm8KNEtIcVl2WC9oS1RzMlU1V1ZodStCTVJtUDJJMmNlZHUzNXVMNmpLWFVWak0vUTR6VlduUDJDVkZCYm9yZUtXaApsZXhwNmRaa2NYNTV0NjlJZ3Zxem84cmdTODlvZ3J6Lzd2WWtRWDFIN3dJREFRQUJvM1V3Y3pBT0JnTlZIUThCCkFmOEVCQU1DQlBBd0hRWURWUjBPQkJZRUZDWEVKa2laYzh0R3EwYzJYQ01jTGFTYlUwdXJNQjhHQTFVZEl3UVkKTUJhQUZBUjl1T1FKdkVVZkhWdkRNcWVuKzF2S1ArZ09NQ0VHQTFVZEVRUWFNQmlDRmlvdVpXNTJiM2t0WjJGMApaWGRoZVMxemVYTjBaVzB3RFFZSktvWklodmNOQVFFTEJRQURnZ0VCQUxIc3dxTEJyOFM3OGFSYjRCa2h6Tk92CklLZzV5bllGUSt5ZytxODRmUlczWmZzUXJPRU9ZQTVRMEs1R1lhbWx2RUNDREpZeEwwYnVndmFHbkFnaldleEEKTFVJVFBReWErSDYybnZBeVBFbVZ0UEpEU0Z0ekFoL29LTHdqN25qRk45L1ExZzJTVk9TaHhsQ2xQWXlSTTlwTQpneGc4U2ZWSzN2c0hkb0ZBNXhPUzNTNVpCSDNjakJOVE03eHpscm54c1BZeVBwUEhQUG1SbXdtSmRUZWZaL2pKCk44Wkp2NTFQU0JCQnlQUEhyQkVscGVzcDMzQ0F0cWk3OFdSLzMwMmI0V3ZtWWZjRmRaT0dQWk0yYzNDM0prYTkKejkrTmhVcDErRFJqWWJXbmVjczEzZEdMKzd4TjZZUGlIVHhXZkhrZTVHazFXWldWSXdSZ2E0QkRRUDdDR2l3PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + }, + "private_key": { + "inline_bytes": "W3JlZGFjdGVkXQ==" + } + } + } + }, + { + "name": "enable-backend-tls/default-ca", + "version_info": "4c03e110dd30c78748f7fb429bd12747dd862e7566d94953591f560b745b11d9", + "last_updated": "2025-10-09T15:40:33.814Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "enable-backend-tls/default-ca", + "validation_context": { + "trusted_ca": { + "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURPekNDQWlPZ0F3SUJBZ0lVWXBVR3ZmWVR1V3ZDQmI2ZGY1OEgwYlBkdTI4d0RRWUpLb1pJaHZjTkFRRUwKQlFBd0xURVZNQk1HQTFVRUNnd01aWGhoYlhCc1pTQkpibU11TVJRd0VnWURWUVFEREF0bGVHRnRjR3hsTG1OdgpiVEFlRncweU5URXdNRGd5TURReU5USmFGdzB5TmpFd01EZ3lNRFF5TlRKYU1DMHhGVEFUQmdOVkJBb01ER1Y0CllXMXdiR1VnU1c1akxqRVVNQklHQTFVRUF3d0xaWGhoYlhCc1pTNWpiMjB3Z2dFaU1BMEdDU3FHU0liM0RRRUIKQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURIR2xkUXdzRTE2QkZocXB2eWZKOEkrQ25UOFpEZFNNT3ZUNm1WQUlmYgpIaHY1WHZXUm4zdUlpSjB6YmJ6dWpMVmpyTGt3RFRkWmViaWszYzdNWTIwS1k3eW53SXkyV3hRcktFbytXd3ZlClJIUTdld0FYRVNoemRLeXpCcHZiSWp3V1ZnWXcyRFV0RUY3clF3clQrSGtlTUFPS214d3RCcHRQZWRwNncxQy8KYlgxRTZEclNIRUFRd3JaWDl3Y3UyWitMdDlxU3hHUk9VSys0T1RFbUhMaUllMGI3SWMxanIyZ2hSSVlwL2ZnQwptOExpZk95V25nRURXaS9hSllKUDBEalRjQjlxWWZYK1pCaDVMZGdBSTBXalorM1RtZUw4b05qTWIvcU4zcGlOCnhkMCtiZ28zS09qcERGdFFBai9mcEVZRUF3VFY0Ymh2VWZJajJwZ1g2MkRKQWdNQkFBR2pVekJSTUIwR0ExVWQKRGdRV0JCUmcyR2dKTG5YcU1Fb2dvbzZCRVU0UDhtR0dhekFmQmdOVkhTTUVHREFXZ0JSZzJHZ0pMblhxTUVvZwpvbzZCRVU0UDhtR0dhekFQQmdOVkhSTUJBZjhFQlRBREFRSC9NQTBHQ1NxR1NJYjNEUUVCQ3dVQUE0SUJBUUJuCkpsZlYrZC9mUEVCTk5IUzhNcEU5SWdORFk2SFNwL2VzaTdmVlk4U21Oc3BGMllOY29lcDdFNFB0VnFsMGZFKzAKRTJWVS92TzNkY2JYVWo5QjZEaVBBOCtwS2VDZUQxQ2c4T1hvaHFOSXdmeDRMckczMW55KzRqV2RrcjAzcUhqQwpwK3N5VFcxbHRScUpLbGRZMkRZVkFVNTJKUlpZRTlZVVd3Tm5ldU5KU2tZR01NV0htVUlGek15YUlOYWNxMytFCnpqMmJPK3R5VVVUTW1VL21LUXR1ZHRtU3dqam10MGp5T2lQRUNTUmhhTmY5WDE0QkdvRTI0MFk4Yll0L0tsbTUKUnNGTEdEV3dsTjVQTUxZWXpxcjFISkVoOWJ2UG5LQ0VhaXRHMVNDRlZYN2RUVlkvVkpVaUQ2aDJPSFM0RVR6agpXYmZiaE1ZWkFYcVVDbVJHbk5MVwotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + } + } + } + }, + { + "name": "xds_trusted_ca", + "last_updated": "2025-10-09T15:40:33.797Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "xds_trusted_ca", + "validation_context": { + "trusted_ca": { + "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURHRENDQWdDZ0F3SUJBZ0lFT1g1RFRUQU5CZ2txaGtpRzl3MEJBUXNGQURBc01SWXdGQVlEVlFRREV3MWwKYm5admVTMW5ZWFJsZDJGNU1SSXdFQVlEVlFRRkV3azVOalExTnpZd056Y3dIaGNOTWpVeE1EQTNNakF6T0RVeQpXaGNOTXpBeE1EQTNNakF6T0RVeFdqQXNNUll3RkFZRFZRUURFdzFsYm5admVTMW5ZWFJsZDJGNU1SSXdFQVlEClZRUUZFd2s1TmpRMU56WXdOemN3Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRRFQKWTdhSCtKYkorcU1aU1F0RU53L0w0eTVDS3lDc0hUVHVqeVZiWDJ4ZWlBdEhtN29TZGc1SEtWZzVlTHpQaUhReApOSm9KNXRLZkF2ZlVlQ0NOR0ZPRHAyTjNMRmROK3VLdFN5cjlQYUl3b08zb1gybHhnSTFncUNVc2ZQZVF2TXNJCjlrazg5R080UlZFaXlqa3FOaDR5U1dpekFSQ2xjNDlTQ2Faa3pnSjdIZ1ZsalJkL2tZYWNER2dHcGtSSFBJanQKZ05YeGFZNS9USm1tT2xLbllQaFZpRWcxdFhNQzZTQVVVUlVYc2lpK2hZbTZHaCszSzF4MjBRaHpoSXltN2xuawp5SHZpcXFJTE9LTGhpRWVWQVZjNkxyWWRHNUlNYjVBVjNPSyt3VHVHOHFlTHkvSytUS0ZFUzZXMlA0VmtsQjFhCjh2dG5QQ2FFclQ4SzdjazR5aWFaQWdNQkFBR2pRakJBTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQQmdOVkhSTUIKQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJRRWZiamtDYnhGSHgxYnd6S25wL3RieWovb0RqQU5CZ2txaGtpRwo5dzBCQVFzRkFBT0NBUUVBaTJNcmoyTmJnQ0R1M0Q4WXBrb21JZHdMd2M1UFF4QnJyL0xxR0diemFaSWZrcS83CmR0VjNsdHFqV3VZYUwxMDNPZlRURWlpUmpkL2E1akcvN2FhaVBYLzFFaEgyM0p3Y1hrWjdib3FERjRMc3ZqelEKS3Y5QzRJVVB5QXEvT1llSFphQ3hVZE0rZzBwMzRaVFI3TVRRVDIvaWhkeWZCdUFSMFNkZEhRRk05UFYwNThhagpJUURTSmFKd2FvNnpoTnJXQkNVQk1qWjJLcVRxSFN1Yms3eDh3aUZ5RFRNT0RsWHRqRGxJYXlKMVdaNnlySlNjClB1Q2xPTDV1cWp3QXQ4Q29VUVh1bUwvMW9XV2ZXYkZycWpBK0Z4VXc1Z05zUHJRUWhqTGpMRkNsdk1EYUlaK3UKbXhYa0FnbExrK0QxSHpha0lpR3QwdUxYY0RxcFlEWHlPM1RvT2c9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + }, + "match_typed_subject_alt_names": [ + { + "san_type": "DNS", + "matcher": { + "exact": "envoy-gateway" + } + } + ] + } + } + } + ] + } + ] +} diff --git a/examples/extension-server/envoy-config-dumps/with-mutation.json b/examples/extension-server/envoy-config-dumps/with-mutation.json new file mode 100644 index 00000000000..324575d866e --- /dev/null +++ b/examples/extension-server/envoy-config-dumps/with-mutation.json @@ -0,0 +1,3647 @@ +{ + "configs": [ + { + "@type": "type.googleapis.com/envoy.admin.v3.BootstrapConfigDump", + "bootstrap": { + "node": { + "locality": {}, + "user_agent_name": "envoy", + "user_agent_build_version": { + "version": { + "major_number": 1, + "minor_number": 35, + "patch": 3 + }, + "metadata": { + "revision.status": "Clean", + "revision.sha": "ff3fe7f0bb9e4ac6a283ea38bf9ee3f375530d56", + "build.type": "RELEASE", + "ssl.version": "BoringSSL" + } + }, + "extensions": [ + { + "name": "quic.http_server_connection.default", + "category": "quic.http_server_connection" + }, + { + "name": "envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "category": "envoy.upstream_options", + "type_urls": [ + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions" + ] + }, + { + "name": "envoy.extensions.upstreams.tcp.v3.TcpProtocolOptions", + "category": "envoy.upstream_options", + "type_urls": [ + "envoy.extensions.upstreams.tcp.v3.TcpProtocolOptions" + ] + }, + { + "name": "envoy.upstreams.http.http_protocol_options", + "category": "envoy.upstream_options" + }, + { + "name": "envoy.upstreams.tcp.tcp_protocol_options", + "category": "envoy.upstream_options" + }, + { + "name": "envoy.access_loggers.extension_filters.cel", + "category": "envoy.access_loggers.extension_filters", + "type_urls": [ + "envoy.extensions.access_loggers.filters.cel.v3.ExpressionFilter" + ] + }, + { + "name": "envoy.rds_factory.default", + "category": "envoy.rds_factory" + }, + { + "name": "envoy.matching.common_inputs.environment_variable", + "category": "envoy.matching.common_inputs", + "type_urls": [ + "envoy.extensions.matching.common_inputs.environment_variable.v3.Config" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.always_on", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.AlwaysOnSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.cel", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.CELSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.dynatrace", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.DynatraceSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.parent_based", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.ParentBasedSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.trace_id_ratio_based", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.TraceIdRatioBasedSamplerConfig" + ] + }, + { + "name": "envoy.route_config_update_requester.default", + "category": "envoy.route_config_update_requester" + }, + { + "name": "envoy.bandwidth_limit", + "category": "envoy.filters.http" + }, + { + "name": "envoy.buffer", + "category": "envoy.filters.http" + }, + { + "name": "envoy.cors", + "category": "envoy.filters.http" + }, + { + "name": "envoy.csrf", + "category": "envoy.filters.http" + }, + { + "name": "envoy.ext_authz", + "category": "envoy.filters.http" + }, + { + "name": "envoy.ext_proc", + "category": "envoy.filters.http" + }, + { + "name": "envoy.extensions.filters.http.dynamic_modules", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilter", + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilterPerRoute" + ] + }, + { + "name": "envoy.fault", + "category": "envoy.filters.http" + }, + { + "name": "envoy.filters.http.adaptive_concurrency", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.adaptive_concurrency.v3.AdaptiveConcurrency" + ] + }, + { + "name": "envoy.filters.http.admission_control", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.admission_control.v3.AdmissionControl" + ] + }, + { + "name": "envoy.filters.http.alternate_protocols_cache", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.alternate_protocols_cache.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.http.api_key_auth", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.api_key_auth.v3.ApiKeyAuth", + "envoy.extensions.filters.http.api_key_auth.v3.ApiKeyAuthPerRoute" + ] + }, + { + "name": "envoy.filters.http.aws_lambda", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.aws_lambda.v3.Config", + "envoy.extensions.filters.http.aws_lambda.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.aws_request_signing", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigning", + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigningPerRoute" + ] + }, + { + "name": "envoy.filters.http.bandwidth_limit", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit" + ] + }, + { + "name": "envoy.filters.http.basic_auth", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.basic_auth.v3.BasicAuth", + "envoy.extensions.filters.http.basic_auth.v3.BasicAuthPerRoute" + ] + }, + { + "name": "envoy.filters.http.buffer", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.buffer.v3.Buffer", + "envoy.extensions.filters.http.buffer.v3.BufferPerRoute" + ] + }, + { + "name": "envoy.filters.http.cache", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.cache.v3.CacheConfig" + ] + }, + { + "name": "envoy.filters.http.cdn_loop", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.cdn_loop.v3.CdnLoopConfig" + ] + }, + { + "name": "envoy.filters.http.composite", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.composite.v3.Composite" + ] + }, + { + "name": "envoy.filters.http.compressor", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.compressor.v3.Compressor", + "envoy.extensions.filters.http.compressor.v3.CompressorPerRoute" + ] + }, + { + "name": "envoy.filters.http.connect_grpc_bridge", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.connect_grpc_bridge.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.http.cors", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.cors.v3.Cors", + "envoy.extensions.filters.http.cors.v3.CorsPolicy" + ] + }, + { + "name": "envoy.filters.http.credential_injector", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.credential_injector.v3.CredentialInjector" + ] + }, + { + "name": "envoy.filters.http.csrf", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.csrf.v3.CsrfPolicy"] + }, + { + "name": "envoy.filters.http.custom_response", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.custom_response.v3.CustomResponse" + ] + }, + { + "name": "envoy.filters.http.decompressor", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.decompressor.v3.Decompressor" + ] + }, + { + "name": "envoy.filters.http.dynamic_forward_proxy", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.dynamic_forward_proxy.v3.FilterConfig", + "envoy.extensions.filters.http.dynamic_forward_proxy.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.ext_authz", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ext_authz.v3.ExtAuthz", + "envoy.extensions.filters.http.ext_authz.v3.ExtAuthzPerRoute" + ] + }, + { + "name": "envoy.filters.http.ext_proc", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ext_proc.v3.ExtProcPerRoute", + "envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor" + ] + }, + { + "name": "envoy.filters.http.fault", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.fault.v3.HTTPFault"] + }, + { + "name": "envoy.filters.http.file_system_buffer", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.file_system_buffer.v3.FileSystemBufferFilterConfig" + ] + }, + { + "name": "envoy.filters.http.gcp_authn", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.gcp_authn.v3.GcpAuthnFilterConfig" + ] + }, + { + "name": "envoy.filters.http.geoip", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.geoip.v3.Geoip"] + }, + { + "name": "envoy.filters.http.grpc_field_extraction", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_field_extraction.v3.GrpcFieldExtractionConfig" + ] + }, + { + "name": "envoy.filters.http.grpc_http1_bridge", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_http1_bridge.v3.Config" + ] + }, + { + "name": "envoy.filters.http.grpc_http1_reverse_bridge", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_http1_reverse_bridge.v3.FilterConfig", + "envoy.extensions.filters.http.grpc_http1_reverse_bridge.v3.FilterConfigPerRoute" + ] + }, + { + "name": "envoy.filters.http.grpc_json_reverse_transcoder", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_json_reverse_transcoder.v3.GrpcJsonReverseTranscoder" + ] + }, + { + "name": "envoy.filters.http.grpc_json_transcoder", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_json_transcoder.v3.GrpcJsonTranscoder" + ] + }, + { + "name": "envoy.filters.http.grpc_stats", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_stats.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.http.grpc_web", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.grpc_web.v3.GrpcWeb"] + }, + { + "name": "envoy.filters.http.header_mutation", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutation", + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutationPerRoute" + ] + }, + { + "name": "envoy.filters.http.header_to_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.header_to_metadata.v3.Config" + ] + }, + { + "name": "envoy.filters.http.health_check", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.health_check.v3.HealthCheck" + ] + }, + { + "name": "envoy.filters.http.ip_tagging", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ip_tagging.v3.IPTagging" + ] + }, + { + "name": "envoy.filters.http.json_to_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.json_to_metadata.v3.JsonToMetadata" + ] + }, + { + "name": "envoy.filters.http.jwt_authn", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.jwt_authn.v3.JwtAuthentication", + "envoy.extensions.filters.http.jwt_authn.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.local_ratelimit", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit" + ] + }, + { + "name": "envoy.filters.http.lua", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.lua.v3.Lua", + "envoy.extensions.filters.http.lua.v3.LuaPerRoute" + ] + }, + { + "name": "envoy.filters.http.match_delegate", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.common.matching.v3.ExtensionWithMatcher", + "envoy.extensions.common.matching.v3.ExtensionWithMatcherPerRoute" + ] + }, + { + "name": "envoy.filters.http.oauth2", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.oauth2.v3.OAuth2"] + }, + { + "name": "envoy.filters.http.on_demand", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.on_demand.v3.OnDemand", + "envoy.extensions.filters.http.on_demand.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.original_src", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.original_src.v3.OriginalSrc" + ] + }, + { + "name": "envoy.filters.http.proto_message_extraction", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.proto_message_extraction.v3.ProtoMessageExtractionConfig" + ] + }, + { + "name": "envoy.filters.http.rate_limit_quota", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaFilterConfig", + "envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaOverride" + ] + }, + { + "name": "envoy.filters.http.ratelimit", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ratelimit.v3.RateLimit", + "envoy.extensions.filters.http.ratelimit.v3.RateLimitPerRoute" + ] + }, + { + "name": "envoy.filters.http.rbac", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.rbac.v3.RBAC", + "envoy.extensions.filters.http.rbac.v3.RBACPerRoute" + ] + }, + { + "name": "envoy.filters.http.router", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.router.v3.Router"] + }, + { + "name": "envoy.filters.http.set_filter_state", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.set_filter_state.v3.Config" + ] + }, + { + "name": "envoy.filters.http.set_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.set_metadata.v3.Config" + ] + }, + { + "name": "envoy.filters.http.stateful_session", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.stateful_session.v3.StatefulSession", + "envoy.extensions.filters.http.stateful_session.v3.StatefulSessionPerRoute" + ] + }, + { + "name": "envoy.filters.http.tap", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.tap.v3.Tap"] + }, + { + "name": "envoy.filters.http.thrift_to_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.thrift_to_metadata.v3.ThriftToMetadata" + ] + }, + { + "name": "envoy.filters.http.wasm", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.wasm.v3.Wasm"] + }, + { + "name": "envoy.geoip", + "category": "envoy.filters.http" + }, + { + "name": "envoy.grpc_http1_bridge", + "category": "envoy.filters.http" + }, + { + "name": "envoy.grpc_json_transcoder", + "category": "envoy.filters.http" + }, + { + "name": "envoy.grpc_web", + "category": "envoy.filters.http" + }, + { + "name": "envoy.health_check", + "category": "envoy.filters.http" + }, + { + "name": "envoy.ip_tagging", + "category": "envoy.filters.http" + }, + { + "name": "envoy.local_rate_limit", + "category": "envoy.filters.http" + }, + { + "name": "envoy.lua", + "category": "envoy.filters.http" + }, + { + "name": "envoy.rate_limit", + "category": "envoy.filters.http" + }, + { + "name": "envoy.router", + "category": "envoy.filters.http" + }, + { + "name": "envoy.dog_statsd", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.graphite_statsd", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.metrics_service", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.open_telemetry_stat_sink", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.stat_sinks.dog_statsd", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.DogStatsdSink"] + }, + { + "name": "envoy.stat_sinks.graphite_statsd", + "category": "envoy.stats_sinks", + "type_urls": [ + "envoy.extensions.stat_sinks.graphite_statsd.v3.GraphiteStatsdSink" + ] + }, + { + "name": "envoy.stat_sinks.hystrix", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.HystrixSink"] + }, + { + "name": "envoy.stat_sinks.metrics_service", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.MetricsServiceConfig"] + }, + { + "name": "envoy.stat_sinks.open_telemetry", + "category": "envoy.stats_sinks", + "type_urls": [ + "envoy.extensions.stat_sinks.open_telemetry.v3.SinkConfig" + ] + }, + { + "name": "envoy.stat_sinks.statsd", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.StatsdSink"] + }, + { + "name": "envoy.stat_sinks.wasm", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.extensions.stat_sinks.wasm.v3.Wasm"] + }, + { + "name": "envoy.statsd", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.config_mux.delta_grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "envoy.config_mux.grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "envoy.config_mux.new_grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "envoy.config_mux.sotw_grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "dubbo.hessian2", + "category": "envoy.dubbo_proxy.serializers" + }, + { + "name": "envoy.listener_manager_impl.default", + "category": "envoy.listener_manager_impl", + "type_urls": ["envoy.config.listener.v3.ListenerManager"] + }, + { + "name": "envoy.listener_manager_impl.validation", + "category": "envoy.listener_manager_impl", + "type_urls": [ + "envoy.config.listener.v3.ValidationListenerManager" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.host", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.HostMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.method", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.MethodMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.path", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.PathMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.property", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.PropertyMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.request", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.RequestMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.service", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.ServiceMatchInput" + ] + }, + { + "name": "envoy.compression.brotli.decompressor", + "category": "envoy.compression.decompressor", + "type_urls": [ + "envoy.extensions.compression.brotli.decompressor.v3.Brotli" + ] + }, + { + "name": "envoy.compression.gzip.decompressor", + "category": "envoy.compression.decompressor", + "type_urls": [ + "envoy.extensions.compression.gzip.decompressor.v3.Gzip" + ] + }, + { + "name": "envoy.compression.zstd.decompressor", + "category": "envoy.compression.decompressor", + "type_urls": [ + "envoy.extensions.compression.zstd.decompressor.v3.Zstd" + ] + }, + { + "name": "envoy.bootstrap.internal_listener", + "category": "envoy.bootstrap", + "type_urls": [ + "envoy.extensions.bootstrap.internal_listener.v3.InternalListener" + ] + }, + { + "name": "envoy.bootstrap.wasm", + "category": "envoy.bootstrap", + "type_urls": ["envoy.extensions.wasm.v3.WasmService"] + }, + { + "name": "envoy.extensions.network.socket_interface.default_socket_interface", + "category": "envoy.bootstrap", + "type_urls": [ + "envoy.extensions.network.socket_interface.v3.DefaultSocketInterface" + ] + }, + { + "name": "envoy.transport_sockets.alts", + "category": "envoy.transport_sockets.downstream", + "type_urls": ["envoy.extensions.transport_sockets.alts.v3.Alts"] + }, + { + "name": "envoy.transport_sockets.quic", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.quic.v3.QuicDownstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.raw_buffer", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.raw_buffer.v3.RawBuffer" + ] + }, + { + "name": "envoy.transport_sockets.starttls", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.starttls.v3.StartTlsConfig" + ] + }, + { + "name": "envoy.transport_sockets.tap", + "category": "envoy.transport_sockets.downstream", + "type_urls": ["envoy.extensions.transport_sockets.tap.v3.Tap"] + }, + { + "name": "envoy.transport_sockets.tcp_stats", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tcp_stats.v3.Config" + ] + }, + { + "name": "envoy.transport_sockets.tls", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext" + ] + }, + { + "name": "raw_buffer", + "category": "envoy.transport_sockets.downstream" + }, + { + "name": "starttls", + "category": "envoy.transport_sockets.downstream" + }, + { + "name": "tls", + "category": "envoy.transport_sockets.downstream" + }, + { + "name": "envoy.retry_host_predicates.omit_canary_hosts", + "category": "envoy.retry_host_predicates", + "type_urls": [ + "envoy.extensions.retry.host.omit_canary_hosts.v3.OmitCanaryHostsPredicate" + ] + }, + { + "name": "envoy.retry_host_predicates.omit_host_metadata", + "category": "envoy.retry_host_predicates", + "type_urls": [ + "envoy.extensions.retry.host.omit_host_metadata.v3.OmitHostMetadataConfig" + ] + }, + { + "name": "envoy.retry_host_predicates.previous_hosts", + "category": "envoy.retry_host_predicates", + "type_urls": [ + "envoy.extensions.retry.host.previous_hosts.v3.PreviousHostsPredicate" + ] + }, + { + "name": "envoy.key_value.file_based", + "category": "envoy.common.key_value", + "type_urls": [ + "envoy.extensions.key_value.file_based.v3.FileBasedKeyValueStoreConfig" + ] + }, + { + "name": "envoy.config_subscription.ads", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.ads_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.aggregated_grpc_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.delta_grpc", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.delta_grpc_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.filesystem", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.filesystem_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.grpc", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.rest", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.route.early_data_policy.default", + "category": "envoy.route.early_data_policy", + "type_urls": [ + "envoy.extensions.early_data.v3.DefaultEarlyDataPolicy" + ] + }, + { + "name": "default", + "category": "network.connection.client" + }, + { + "name": "envoy_internal", + "category": "network.connection.client" + }, + { + "name": "envoy.extensions.http.cache.file_system_http_cache", + "category": "envoy.http.cache", + "type_urls": [ + "envoy.extensions.http.cache.file_system_http_cache.v3.FileSystemHttpCacheConfig" + ] + }, + { + "name": "envoy.extensions.http.cache.simple", + "category": "envoy.http.cache", + "type_urls": [ + "envoy.extensions.http.cache.simple_http_cache.v3.SimpleHttpCacheConfig" + ] + }, + { + "name": "envoy.cluster.dns", + "category": "envoy.clusters", + "type_urls": ["envoy.extensions.clusters.dns.v3.DnsCluster"] + }, + { + "name": "envoy.cluster.eds", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.logical_dns", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.original_dst", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.static", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.strict_dns", + "category": "envoy.clusters" + }, + { + "name": "envoy.clusters.aggregate", + "category": "envoy.clusters", + "type_urls": [ + "envoy.extensions.clusters.aggregate.v3.ClusterConfig" + ] + }, + { + "name": "envoy.clusters.dynamic_forward_proxy", + "category": "envoy.clusters", + "type_urls": [ + "envoy.extensions.clusters.dynamic_forward_proxy.v3.ClusterConfig" + ] + }, + { + "name": "envoy.clusters.redis", + "category": "envoy.clusters", + "type_urls": [ + "envoy.extensions.clusters.redis.v3.RedisClusterConfig" + ] + }, + { + "name": "envoy.wasm.runtime.null", + "category": "envoy.wasm.runtime" + }, + { + "name": "envoy.wasm.runtime.v8", + "category": "envoy.wasm.runtime" + }, + { + "name": "envoy.rbac.matchers.upstream_ip_port", + "category": "envoy.rbac.matchers", + "type_urls": [ + "envoy.extensions.rbac.matchers.upstream_ip_port.v3.UpstreamIpPortMatcher" + ] + }, + { + "name": "envoy.tls.cert_validator.default", + "category": "envoy.tls.cert_validator" + }, + { + "name": "envoy.tls.cert_validator.spiffe", + "category": "envoy.tls.cert_validator" + }, + { + "name": "envoy.quic.connection_id_generator.quic_lb", + "category": "envoy.quic.connection_id_generator", + "type_urls": [ + "envoy.extensions.quic.connection_id_generator.quic_lb.v3.Config" + ] + }, + { + "name": "envoy.quic.deterministic_connection_id_generator", + "category": "envoy.quic.connection_id_generator", + "type_urls": [ + "envoy.extensions.quic.connection_id_generator.v3.DeterministicConnectionIdGeneratorConfig" + ] + }, + { + "name": "envoy.buffer", + "category": "envoy.filters.http.upstream" + }, + { + "name": "envoy.ext_proc", + "category": "envoy.filters.http.upstream" + }, + { + "name": "envoy.extensions.filters.http.dynamic_modules", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilter", + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilterPerRoute" + ] + }, + { + "name": "envoy.filters.http.admission_control", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.admission_control.v3.AdmissionControl" + ] + }, + { + "name": "envoy.filters.http.aws_lambda", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.aws_lambda.v3.Config", + "envoy.extensions.filters.http.aws_lambda.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.aws_request_signing", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigning", + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigningPerRoute" + ] + }, + { + "name": "envoy.filters.http.buffer", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.buffer.v3.Buffer", + "envoy.extensions.filters.http.buffer.v3.BufferPerRoute" + ] + }, + { + "name": "envoy.filters.http.composite", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.composite.v3.Composite" + ] + }, + { + "name": "envoy.filters.http.credential_injector", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.credential_injector.v3.CredentialInjector" + ] + }, + { + "name": "envoy.filters.http.ext_proc", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.ext_proc.v3.ExtProcPerRoute", + "envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor" + ] + }, + { + "name": "envoy.filters.http.header_mutation", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutation", + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutationPerRoute" + ] + }, + { + "name": "envoy.filters.http.lua", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.lua.v3.Lua", + "envoy.extensions.filters.http.lua.v3.LuaPerRoute" + ] + }, + { + "name": "envoy.filters.http.match_delegate", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.common.matching.v3.ExtensionWithMatcher", + "envoy.extensions.common.matching.v3.ExtensionWithMatcherPerRoute" + ] + }, + { + "name": "envoy.filters.http.upstream_codec", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.upstream_codec.v3.UpstreamCodec" + ] + }, + { + "name": "envoy.filters.http.wasm", + "category": "envoy.filters.http.upstream", + "type_urls": ["envoy.extensions.filters.http.wasm.v3.Wasm"] + }, + { + "name": "envoy.filters.thrift.header_to_metadata", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.filters.header_to_metadata.v3.HeaderToMetadata" + ] + }, + { + "name": "envoy.filters.thrift.payload_to_metadata", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.filters.payload_to_metadata.v3.PayloadToMetadata" + ] + }, + { + "name": "envoy.filters.thrift.rate_limit", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.filters.ratelimit.v3.RateLimit" + ] + }, + { + "name": "envoy.filters.thrift.router", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.router.v3.Router" + ] + }, + { + "name": "auto", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "framed", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "header", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "unframed", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "envoy.network.dns_resolver.cares", + "category": "envoy.network.dns_resolver", + "type_urls": [ + "envoy.extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig" + ] + }, + { + "name": "envoy.network.dns_resolver.getaddrinfo", + "category": "envoy.network.dns_resolver", + "type_urls": [ + "envoy.extensions.network.dns_resolver.getaddrinfo.v3.GetAddrInfoDnsResolverConfig" + ] + }, + { + "name": "envoy.filters.listener.http_inspector", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.http_inspector.v3.HttpInspector" + ] + }, + { + "name": "envoy.filters.listener.local_ratelimit", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.local_ratelimit.v3.LocalRateLimit" + ] + }, + { + "name": "envoy.filters.listener.original_dst", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.original_dst.v3.OriginalDst" + ] + }, + { + "name": "envoy.filters.listener.original_src", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.original_src.v3.OriginalSrc" + ] + }, + { + "name": "envoy.filters.listener.proxy_protocol", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.proxy_protocol.v3.ProxyProtocol" + ] + }, + { + "name": "envoy.filters.listener.tls_inspector", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.tls_inspector.v3.TlsInspector" + ] + }, + { + "name": "envoy.listener.http_inspector", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.original_dst", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.original_src", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.proxy_protocol", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.tls_inspector", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.http.stateful_session.cookie", + "category": "envoy.http.stateful_session", + "type_urls": [ + "envoy.extensions.http.stateful_session.cookie.v3.CookieBasedSessionState" + ] + }, + { + "name": "envoy.http.stateful_session.envelope", + "category": "envoy.http.stateful_session", + "type_urls": [ + "envoy.extensions.http.stateful_session.envelope.v3.EnvelopeSessionState" + ] + }, + { + "name": "envoy.http.stateful_session.header", + "category": "envoy.http.stateful_session", + "type_urls": [ + "envoy.extensions.http.stateful_session.header.v3.HeaderBasedSessionState" + ] + }, + { + "name": "envoy.matching.inputs.application_protocol", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.ApplicationProtocolInput" + ] + }, + { + "name": "envoy.matching.inputs.destination_ip", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationIPInput" + ] + }, + { + "name": "envoy.matching.inputs.destination_port", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationPortInput" + ] + }, + { + "name": "envoy.matching.inputs.direct_source_ip", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DirectSourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.dns_san", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.DnsSanInput" + ] + }, + { + "name": "envoy.matching.inputs.filter_state", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.FilterStateInput" + ] + }, + { + "name": "envoy.matching.inputs.server_name", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.ServerNameInput" + ] + }, + { + "name": "envoy.matching.inputs.source_ip", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.source_port", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourcePortInput" + ] + }, + { + "name": "envoy.matching.inputs.source_type", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceTypeInput" + ] + }, + { + "name": "envoy.matching.inputs.subject", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.SubjectInput" + ] + }, + { + "name": "envoy.matching.inputs.transport_protocol", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.TransportProtocolInput" + ] + }, + { + "name": "envoy.matching.inputs.uri_san", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.UriSanInput" + ] + }, + { + "name": "envoy.string_matcher.lua", + "category": "envoy.string_matcher", + "type_urls": ["envoy.extensions.string_matcher.lua.v3.Lua"] + }, + { + "name": "envoy.filters.udp.session.dynamic_forward_proxy", + "category": "envoy.filters.udp.session", + "type_urls": [ + "envoy.extensions.filters.udp.udp_proxy.session.dynamic_forward_proxy.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.udp.session.http_capsule", + "category": "envoy.filters.udp.session", + "type_urls": [ + "envoy.extensions.filters.udp.udp_proxy.session.http_capsule.v3.FilterConfig" + ] + }, + { + "name": "envoy.resource_monitors.cgroup_memory", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.cgroup_memory.v3.CgroupMemoryConfig" + ] + }, + { + "name": "envoy.resource_monitors.cpu_utilization", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.cpu_utilization.v3.CpuUtilizationConfig" + ] + }, + { + "name": "envoy.resource_monitors.fixed_heap", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.fixed_heap.v3.FixedHeapConfig" + ] + }, + { + "name": "envoy.resource_monitors.injected_resource", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.injected_resource.v3.InjectedResourceConfig" + ] + }, + { + "name": "envoy.path.match.uri_template.uri_template_matcher", + "category": "envoy.path.match", + "type_urls": [ + "envoy.extensions.path.match.uri_template.v3.UriTemplateMatchConfig" + ] + }, + { + "name": "envoy.echo", + "category": "envoy.filters.network" + }, + { + "name": "envoy.ext_authz", + "category": "envoy.filters.network" + }, + { + "name": "envoy.filters.network.connection_limit", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.connection_limit.v3.ConnectionLimit" + ] + }, + { + "name": "envoy.filters.network.direct_response", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.direct_response.v3.Config" + ] + }, + { + "name": "envoy.filters.network.dubbo_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.dubbo_proxy.v3.DubboProxy" + ] + }, + { + "name": "envoy.filters.network.echo", + "category": "envoy.filters.network", + "type_urls": ["envoy.extensions.filters.network.echo.v3.Echo"] + }, + { + "name": "envoy.filters.network.ext_authz", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.ext_authz.v3.ExtAuthz" + ] + }, + { + "name": "envoy.filters.network.ext_proc", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.ext_proc.v3.NetworkExternalProcessor" + ] + }, + { + "name": "envoy.filters.network.generic_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.v3.GenericProxy" + ] + }, + { + "name": "envoy.filters.network.http_connection_manager", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager" + ] + }, + { + "name": "envoy.filters.network.local_ratelimit", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.local_ratelimit.v3.LocalRateLimit" + ] + }, + { + "name": "envoy.filters.network.mongo_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.mongo_proxy.v3.MongoProxy" + ] + }, + { + "name": "envoy.filters.network.ratelimit", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.ratelimit.v3.RateLimit" + ] + }, + { + "name": "envoy.filters.network.rbac", + "category": "envoy.filters.network", + "type_urls": ["envoy.extensions.filters.network.rbac.v3.RBAC"] + }, + { + "name": "envoy.filters.network.redis_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.redis_proxy.v3.RedisProxy" + ] + }, + { + "name": "envoy.filters.network.set_filter_state", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.set_filter_state.v3.Config" + ] + }, + { + "name": "envoy.filters.network.sni_cluster", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.sni_cluster.v3.SniCluster" + ] + }, + { + "name": "envoy.filters.network.sni_dynamic_forward_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.sni_dynamic_forward_proxy.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.network.tcp_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy" + ] + }, + { + "name": "envoy.filters.network.thrift_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.v3.ThriftProxy" + ] + }, + { + "name": "envoy.filters.network.wasm", + "category": "envoy.filters.network", + "type_urls": ["envoy.extensions.filters.network.wasm.v3.Wasm"] + }, + { + "name": "envoy.filters.network.zookeeper_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.zookeeper_proxy.v3.ZooKeeperProxy" + ] + }, + { + "name": "envoy.http_connection_manager", + "category": "envoy.filters.network" + }, + { + "name": "envoy.mongo_proxy", + "category": "envoy.filters.network" + }, + { + "name": "envoy.ratelimit", + "category": "envoy.filters.network" + }, + { + "name": "envoy.redis_proxy", + "category": "envoy.filters.network" + }, + { + "name": "envoy.tcp_proxy", + "category": "envoy.filters.network" + }, + { + "name": "envoy.formatter.cel", + "category": "envoy.formatter", + "type_urls": ["envoy.extensions.formatter.cel.v3.Cel"] + }, + { + "name": "envoy.formatter.metadata", + "category": "envoy.formatter", + "type_urls": ["envoy.extensions.formatter.metadata.v3.Metadata"] + }, + { + "name": "envoy.formatter.req_without_query", + "category": "envoy.formatter", + "type_urls": [ + "envoy.extensions.formatter.req_without_query.v3.ReqWithoutQuery" + ] + }, + { + "name": "envoy.http.early_header_mutation.header_mutation", + "category": "envoy.http.early_header_mutation", + "type_urls": [ + "envoy.extensions.http.early_header_mutation.header_mutation.v3.HeaderMutation" + ] + }, + { + "name": "envoy.filters.connection_pools.tcp.generic", + "category": "envoy.upstreams", + "type_urls": [ + "envoy.extensions.upstreams.tcp.generic.v3.GenericConnectionPoolProto" + ] + }, + { + "name": "envoy.regex_engines.google_re2", + "category": "envoy.regex_engines", + "type_urls": ["envoy.extensions.regex_engines.v3.GoogleRE2"] + }, + { + "name": "dubbo", + "category": "envoy.dubbo_proxy.protocols" + }, + { + "name": "envoy.health_check.event_sink.file", + "category": "envoy.health_check.event_sinks", + "type_urls": [ + "envoy.extensions.health_check.event_sinks.file.v3.HealthCheckEventFileSink" + ] + }, + { + "name": "envoy.srds_factory.default", + "category": "envoy.srds_factory" + }, + { + "name": "envoy.matching.custom_matchers.domain_matcher", + "category": "envoy.matching.http.custom_matchers", + "type_urls": ["xds.type.matcher.v3.ServerNameMatcher"] + }, + { + "name": "envoy.matching.custom_matchers.trie_matcher", + "category": "envoy.matching.http.custom_matchers", + "type_urls": ["xds.type.matcher.v3.IPMatcher"] + }, + { + "name": "envoy.config.validators.minimum_clusters", + "category": "envoy.config.validators" + }, + { + "name": "envoy.config.validators.minimum_clusters_validator", + "category": "envoy.config.validators", + "type_urls": [ + "envoy.extensions.config.validators.minimum_clusters.v3.MinimumClustersValidator" + ] + }, + { + "name": "envoy.access_loggers.file", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.file.v3.FileAccessLog" + ] + }, + { + "name": "envoy.access_loggers.fluentd", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.fluentd.v3.FluentdAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.http_grpc", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.grpc.v3.HttpGrpcAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.open_telemetry", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.open_telemetry.v3.OpenTelemetryAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.stderr", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.stream.v3.StderrAccessLog" + ] + }, + { + "name": "envoy.access_loggers.stdout", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.stream.v3.StdoutAccessLog" + ] + }, + { + "name": "envoy.access_loggers.tcp_grpc", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.grpc.v3.TcpGrpcAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.wasm", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.wasm.v3.WasmAccessLog" + ] + }, + { + "name": "envoy.file_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.fluentd_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.http_grpc_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.open_telemetry_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.stderr_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.stdout_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.tcp_grpc_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.wasm_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.load_balancing_policies.client_side_weighted_round_robin", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.client_side_weighted_round_robin.v3.ClientSideWeightedRoundRobin" + ] + }, + { + "name": "envoy.load_balancing_policies.cluster_provided", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.cluster_provided.v3.ClusterProvided" + ] + }, + { + "name": "envoy.load_balancing_policies.least_request", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest" + ] + }, + { + "name": "envoy.load_balancing_policies.maglev", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.maglev.v3.Maglev" + ] + }, + { + "name": "envoy.load_balancing_policies.override_host", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.override_host.v3.OverrideHost" + ] + }, + { + "name": "envoy.load_balancing_policies.random", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.random.v3.Random" + ] + }, + { + "name": "envoy.load_balancing_policies.ring_hash", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.ring_hash.v3.RingHash" + ] + }, + { + "name": "envoy.load_balancing_policies.round_robin", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.round_robin.v3.RoundRobin" + ] + }, + { + "name": "envoy.load_balancing_policies.subset", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.subset.v3.Subset" + ] + }, + { + "name": "envoy.filters.listener.original_dst.local_ip", + "category": "filter_state.object" + }, + { + "name": "envoy.filters.listener.original_dst.remote_ip", + "category": "filter_state.object" + }, + { + "name": "envoy.network.application_protocols", + "category": "filter_state.object" + }, + { + "name": "envoy.network.ip", + "category": "filter_state.object" + }, + { + "name": "envoy.network.transport_socket.original_dst_address", + "category": "filter_state.object" + }, + { + "name": "envoy.network.upstream_server_name", + "category": "filter_state.object" + }, + { + "name": "envoy.network.upstream_subject_alt_names", + "category": "filter_state.object" + }, + { + "name": "envoy.ratelimit.hits_addend", + "category": "filter_state.object" + }, + { + "name": "envoy.router.debug_config", + "category": "filter_state.object" + }, + { + "name": "envoy.string", + "category": "filter_state.object" + }, + { + "name": "envoy.tcp_proxy.cluster", + "category": "filter_state.object" + }, + { + "name": "envoy.tcp_proxy.disable_tunneling", + "category": "filter_state.object" + }, + { + "name": "envoy.tcp_proxy.per_connection_idle_timeout_ms", + "category": "filter_state.object" + }, + { + "name": "envoy.upstream.dynamic_host", + "category": "filter_state.object" + }, + { + "name": "envoy.upstream.dynamic_port", + "category": "filter_state.object" + }, + { + "name": "envoy.tracers.opentelemetry.resource_detectors.dynatrace", + "category": "envoy.tracers.opentelemetry.resource_detectors", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.resource_detectors.v3.DynatraceResourceDetectorConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.resource_detectors.environment", + "category": "envoy.tracers.opentelemetry.resource_detectors", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.resource_detectors.v3.EnvironmentResourceDetectorConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.resource_detectors.static_config", + "category": "envoy.tracers.opentelemetry.resource_detectors", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.resource_detectors.v3.StaticConfigResourceDetectorConfig" + ] + }, + { + "name": "envoy.matching.inputs.cel_data_input", + "category": "envoy.matching.http.input", + "type_urls": ["xds.type.matcher.v3.HttpAttributesCelMatchInput"] + }, + { + "name": "envoy.matching.inputs.destination_ip", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationIPInput" + ] + }, + { + "name": "envoy.matching.inputs.destination_port", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationPortInput" + ] + }, + { + "name": "envoy.matching.inputs.direct_source_ip", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DirectSourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.dns_san", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.DnsSanInput" + ] + }, + { + "name": "envoy.matching.inputs.dynamic_metadata", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DynamicMetadataInput" + ] + }, + { + "name": "envoy.matching.inputs.filter_state", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.FilterStateInput" + ] + }, + { + "name": "envoy.matching.inputs.request_headers", + "category": "envoy.matching.http.input", + "type_urls": ["envoy.type.matcher.v3.HttpRequestHeaderMatchInput"] + }, + { + "name": "envoy.matching.inputs.request_trailers", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpRequestTrailerMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.response_headers", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseHeaderMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.response_trailers", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseTrailerMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.server_name", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.ServerNameInput" + ] + }, + { + "name": "envoy.matching.inputs.source_ip", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.source_port", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourcePortInput" + ] + }, + { + "name": "envoy.matching.inputs.source_type", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceTypeInput" + ] + }, + { + "name": "envoy.matching.inputs.status_code_class_input", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseStatusCodeClassMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.status_code_input", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseStatusCodeMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.subject", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.SubjectInput" + ] + }, + { + "name": "envoy.matching.inputs.uri_san", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.UriSanInput" + ] + }, + { + "name": "query_params", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpRequestQueryParamMatchInput" + ] + }, + { + "name": "envoy.extensions.http.custom_response.local_response_policy", + "category": "envoy.http.custom_response", + "type_urls": [ + "envoy.extensions.http.custom_response.local_response_policy.v3.LocalResponsePolicy" + ] + }, + { + "name": "envoy.extensions.http.custom_response.redirect_policy", + "category": "envoy.http.custom_response", + "type_urls": [ + "envoy.extensions.http.custom_response.redirect_policy.v3.RedirectPolicy" + ] + }, + { + "name": "quic.server_preferred_address.datasource", + "category": "envoy.quic.server_preferred_address", + "type_urls": [ + "envoy.extensions.quic.server_preferred_address.v3.DataSourceServerPreferredAddressConfig" + ] + }, + { + "name": "quic.server_preferred_address.fixed", + "category": "envoy.quic.server_preferred_address", + "type_urls": [ + "envoy.extensions.quic.server_preferred_address.v3.FixedServerPreferredAddressConfig" + ] + }, + { + "name": "envoy.matching.input_matchers.generic_request_matcher", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.RequestMatcher" + ] + }, + { + "name": "envoy.matching.matchers.cel_matcher", + "category": "envoy.matching.input_matchers", + "type_urls": ["xds.type.matcher.v3.CelMatcher"] + }, + { + "name": "envoy.matching.matchers.consistent_hashing", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.matching.input_matchers.consistent_hashing.v3.ConsistentHashing" + ] + }, + { + "name": "envoy.matching.matchers.ip", + "category": "envoy.matching.input_matchers", + "type_urls": ["envoy.extensions.matching.input_matchers.ip.v3.Ip"] + }, + { + "name": "envoy.matching.matchers.metadata_matcher", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.matching.input_matchers.metadata.v3.Metadata" + ] + }, + { + "name": "envoy.matching.matchers.runtime_fraction", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.matching.input_matchers.runtime_fraction.v3.RuntimeFraction" + ] + }, + { + "name": "envoy.tracers.datadog", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.DatadogConfig"] + }, + { + "name": "envoy.tracers.fluentd", + "category": "envoy.tracers", + "type_urls": ["envoy.extensions.tracers.fluentd.v3.FluentdConfig"] + }, + { + "name": "envoy.tracers.opentelemetry", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.OpenTelemetryConfig"] + }, + { + "name": "envoy.tracers.skywalking", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.SkyWalkingConfig"] + }, + { + "name": "envoy.tracers.xray", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.XRayConfig"] + }, + { + "name": "envoy.tracers.zipkin", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.ZipkinConfig"] + }, + { + "name": "envoy.zipkin", + "category": "envoy.tracers" + }, + { + "name": "auto", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "binary", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "binary/non-strict", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "compact", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "twitter", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "envoy.http.original_ip_detection.custom_header", + "category": "envoy.http.original_ip_detection", + "type_urls": [ + "envoy.extensions.http.original_ip_detection.custom_header.v3.CustomHeaderConfig" + ] + }, + { + "name": "envoy.http.original_ip_detection.xff", + "category": "envoy.http.original_ip_detection", + "type_urls": [ + "envoy.extensions.http.original_ip_detection.xff.v3.XffConfig" + ] + }, + { + "name": "envoy.filters.udp.dns_filter", + "category": "envoy.filters.udp_listener", + "type_urls": [ + "envoy.extensions.filters.udp.dns_filter.v3.DnsFilterConfig" + ] + }, + { + "name": "envoy.filters.udp_listener.udp_proxy", + "category": "envoy.filters.udp_listener", + "type_urls": [ + "envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig" + ] + }, + { + "name": "envoy.grpc_credentials.default", + "category": "envoy.grpc_credentials" + }, + { + "name": "envoy.grpc_credentials.file_based_metadata", + "category": "envoy.grpc_credentials" + }, + { + "name": "envoy.filters.generic.router", + "category": "envoy.generic_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.router.v3.Router" + ] + }, + { + "name": "envoy.connection_handler.default", + "category": "envoy.connection_handler" + }, + { + "name": "envoy.transport_sockets.alts", + "category": "envoy.transport_sockets.upstream", + "type_urls": ["envoy.extensions.transport_sockets.alts.v3.Alts"] + }, + { + "name": "envoy.transport_sockets.http_11_proxy", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.http_11_proxy.v3.Http11ProxyUpstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.internal_upstream", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.internal_upstream.v3.InternalUpstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.quic", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.quic.v3.QuicUpstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.raw_buffer", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.raw_buffer.v3.RawBuffer" + ] + }, + { + "name": "envoy.transport_sockets.starttls", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.starttls.v3.UpstreamStartTlsConfig" + ] + }, + { + "name": "envoy.transport_sockets.tap", + "category": "envoy.transport_sockets.upstream", + "type_urls": ["envoy.extensions.transport_sockets.tap.v3.Tap"] + }, + { + "name": "envoy.transport_sockets.tcp_stats", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tcp_stats.v3.Config" + ] + }, + { + "name": "envoy.transport_sockets.tls", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext" + ] + }, + { + "name": "envoy.transport_sockets.upstream_proxy_protocol", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.proxy_protocol.v3.ProxyProtocolUpstreamTransport" + ] + }, + { + "name": "raw_buffer", + "category": "envoy.transport_sockets.upstream" + }, + { + "name": "starttls", + "category": "envoy.transport_sockets.upstream" + }, + { + "name": "tls", + "category": "envoy.transport_sockets.upstream" + }, + { + "name": "envoy.router.cluster_specifier_plugin.lua", + "category": "envoy.router.cluster_specifier_plugin", + "type_urls": [ + "envoy.extensions.router.cluster_specifiers.lua.v3.LuaConfig" + ] + }, + { + "name": "envoy.router.cluster_specifier_plugin.matcher", + "category": "envoy.router.cluster_specifier_plugin", + "type_urls": [ + "envoy.extensions.router.cluster_specifiers.matcher.v3.MatcherClusterSpecifier" + ] + }, + { + "name": "envoy.retry_priorities.previous_priorities", + "category": "envoy.retry_priorities", + "type_urls": [ + "envoy.extensions.retry.priority.previous_priorities.v3.PreviousPrioritiesConfig" + ] + }, + { + "name": "envoy.udp_packet_writer.default", + "category": "envoy.udp_packet_writer", + "type_urls": [ + "envoy.extensions.udp_packet_writer.v3.UdpDefaultWriterFactory" + ] + }, + { + "name": "envoy.udp_packet_writer.gso", + "category": "envoy.udp_packet_writer", + "type_urls": [ + "envoy.extensions.udp_packet_writer.v3.UdpGsoBatchWriterFactory" + ] + }, + { + "name": "envoy.geoip_providers.maxmind", + "category": "envoy.geoip_providers", + "type_urls": [ + "envoy.extensions.geoip_providers.maxmind.v3.MaxMindConfig" + ] + }, + { + "name": "envoy.path.rewrite.uri_template.uri_template_rewriter", + "category": "envoy.path.rewrite", + "type_urls": [ + "envoy.extensions.path.rewrite.uri_template.v3.UriTemplateRewriteConfig" + ] + }, + { + "name": "envoy.filters.dubbo.router", + "category": "envoy.dubbo_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.dubbo_proxy.router.v3.Router" + ] + }, + { + "name": "envoy.internal_redirect_predicates.allow_listed_routes", + "category": "envoy.internal_redirect_predicates", + "type_urls": [ + "envoy.extensions.internal_redirect.allow_listed_routes.v3.AllowListedRoutesConfig" + ] + }, + { + "name": "envoy.internal_redirect_predicates.previous_routes", + "category": "envoy.internal_redirect_predicates", + "type_urls": [ + "envoy.extensions.internal_redirect.previous_routes.v3.PreviousRoutesConfig" + ] + }, + { + "name": "envoy.internal_redirect_predicates.safe_cross_scheme", + "category": "envoy.internal_redirect_predicates", + "type_urls": [ + "envoy.extensions.internal_redirect.safe_cross_scheme.v3.SafeCrossSchemeConfig" + ] + }, + { + "name": "envoy.watchdog.abort_action", + "category": "envoy.guarddog_actions", + "type_urls": ["envoy.watchdog.v3.AbortActionConfig"] + }, + { + "name": "envoy.watchdog.profile_action", + "category": "envoy.guarddog_actions", + "type_urls": [ + "envoy.extensions.watchdog.profile_action.v3.ProfileActionConfig" + ] + }, + { + "name": "envoy.rate_limit_descriptors.expr", + "category": "envoy.rate_limit_descriptors", + "type_urls": [ + "envoy.extensions.rate_limit_descriptors.expr.v3.Descriptor" + ] + }, + { + "name": "envoy.built_in_formatters.cel", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.built_in_formatters.http.default", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.built_in_formatters.metadata", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.built_in_formatters.stream_info.default", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.generic_proxy.codecs.dubbo", + "category": "envoy.generic_proxy.codecs", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.codecs.dubbo.v3.DubboCodecConfig" + ] + }, + { + "name": "envoy.generic_proxy.codecs.http1", + "category": "envoy.generic_proxy.codecs", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.codecs.http1.v3.Http1CodecConfig" + ] + }, + { + "name": "envoy.upstream.local_address_selector.default_local_address_selector", + "category": "envoy.upstream.local_address_selector", + "type_urls": [ + "envoy.config.upstream.local_address_selector.v3.DefaultLocalAddressSelector" + ] + }, + { + "name": "envoy.matching.custom_matchers.domain_matcher", + "category": "envoy.matching.network.custom_matchers", + "type_urls": ["xds.type.matcher.v3.ServerNameMatcher"] + }, + { + "name": "envoy.matching.custom_matchers.trie_matcher", + "category": "envoy.matching.network.custom_matchers", + "type_urls": ["xds.type.matcher.v3.IPMatcher"] + }, + { + "name": "envoy.http.stateful_header_formatters.preserve_case", + "category": "envoy.http.stateful_header_formatters", + "type_urls": [ + "envoy.extensions.http.header_formatters.preserve_case.v3.PreserveCaseFormatterConfig" + ] + }, + { + "name": "preserve_case", + "category": "envoy.http.stateful_header_formatters" + }, + { + "name": "envoy.quic.proof_source.filter_chain", + "category": "envoy.quic.proof_source", + "type_urls": [ + "envoy.extensions.quic.proof_source.v3.ProofSourceConfig" + ] + }, + { + "name": "envoy.compression.brotli.compressor", + "category": "envoy.compression.compressor", + "type_urls": [ + "envoy.extensions.compression.brotli.compressor.v3.Brotli" + ] + }, + { + "name": "envoy.compression.gzip.compressor", + "category": "envoy.compression.compressor", + "type_urls": [ + "envoy.extensions.compression.gzip.compressor.v3.Gzip" + ] + }, + { + "name": "envoy.compression.zstd.compressor", + "category": "envoy.compression.compressor", + "type_urls": [ + "envoy.extensions.compression.zstd.compressor.v3.Zstd" + ] + }, + { + "name": "envoy.ssl.server_context_factory.default", + "category": "envoy.ssl.server_context_factory" + }, + { + "name": "envoy.health_checkers.grpc", + "category": "envoy.health_checkers", + "type_urls": ["envoy.config.core.v3.HealthCheck.GrpcHealthCheck"] + }, + { + "name": "envoy.health_checkers.http", + "category": "envoy.health_checkers", + "type_urls": ["envoy.config.core.v3.HealthCheck.HttpHealthCheck"] + }, + { + "name": "envoy.health_checkers.redis", + "category": "envoy.health_checkers", + "type_urls": ["envoy.extensions.health_checkers.redis.v3.Redis"] + }, + { + "name": "envoy.health_checkers.tcp", + "category": "envoy.health_checkers", + "type_urls": ["envoy.config.core.v3.HealthCheck.TcpHealthCheck"] + }, + { + "name": "envoy.health_checkers.thrift", + "category": "envoy.health_checkers", + "type_urls": ["envoy.extensions.health_checkers.thrift.v3.Thrift"] + }, + { + "name": "envoy.quic.crypto_stream.server.quiche", + "category": "envoy.quic.server.crypto_stream", + "type_urls": [ + "envoy.extensions.quic.crypto_stream.v3.CryptoServerStreamConfig" + ] + }, + { + "name": "envoy.request_id.uuid", + "category": "envoy.request_id", + "type_urls": [ + "envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig" + ] + }, + { + "name": "envoy.http.header_validators.envoy_default", + "category": "envoy.http.header_validators", + "type_urls": [ + "envoy.extensions.http.header_validators.envoy_default.v3.HeaderValidatorConfig" + ] + }, + { + "name": "envoy.http.injected_credentials.generic", + "category": "envoy.http.injected_credentials", + "type_urls": [ + "envoy.extensions.http.injected_credentials.generic.v3.Generic" + ] + }, + { + "name": "envoy.http.injected_credentials.oauth2", + "category": "envoy.http.injected_credentials", + "type_urls": [ + "envoy.extensions.http.injected_credentials.oauth2.v3.OAuth2" + ] + }, + { + "name": "envoy.matching.actions.format_string", + "category": "envoy.matching.action", + "type_urls": ["envoy.config.core.v3.SubstitutionFormatString"] + }, + { + "name": "filter-chain-name", + "category": "envoy.matching.action", + "type_urls": ["google.protobuf.StringValue"] + }, + { + "name": "envoy.quic.connection_debug_visitor.basic", + "category": "envoy.quic.connection_debug_visitor", + "type_urls": [ + "envoy.extensions.quic.connection_debug_visitor.v3.BasicConfig" + ] + }, + { + "name": "envoy.quic.connection_debug_visitor.quic_stats", + "category": "envoy.quic.connection_debug_visitor", + "type_urls": [ + "envoy.extensions.quic.connection_debug_visitor.quic_stats.v3.Config" + ] + }, + { + "name": "envoy.extensions.http.ext_proc.save_processing_response", + "category": "envoy.http.ext_proc.response_processors", + "type_urls": [ + "envoy.extensions.http.ext_proc.response_processors.save_processing_response.v3.SaveProcessingResponse" + ] + }, + { + "name": "envoy.rbac.principals.mtls_authenticated", + "category": "envoy.rbac.principals", + "type_urls": [ + "envoy.extensions.rbac.principals.mtls_authenticated.v3.Config" + ] + }, + { + "name": "envoy.ip", + "category": "envoy.resolvers" + } + ] + }, + "static_resources": { + "listeners": [ + { + "name": "envoy-gateway-proxy-stats-0.0.0.0-19001", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 19001 + } + }, + "filter_chains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "eg-stats-http", + "route_config": { + "name": "local_route", + "virtual_hosts": [ + { + "name": "prometheus_stats", + "domains": ["*"], + "routes": [ + { + "match": { + "path": "/stats/prometheus", + "headers": [ + { + "name": ":method", + "string_match": { + "exact": "GET" + } + } + ] + }, + "route": { + "cluster": "prometheus_stats" + } + } + ] + } + ] + }, + "http_filters": [ + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router" + } + } + ], + "normalize_path": true + } + } + ] + } + ], + "bypass_overload_manager": true + } + ], + "clusters": [ + { + "name": "prometheus_stats", + "type": "STATIC", + "connect_timeout": "0.250s", + "load_assignment": { + "cluster_name": "prometheus_stats", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "127.0.0.1", + "port_value": 19000 + } + } + } + } + ] + } + ] + } + }, + { + "name": "default/eg", + "type": "EDS", + "eds_cluster_config": { + "eds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "service_name": "default/eg" + }, + "connect_timeout": "10s", + "load_balancing_policy": { + "policies": [ + { + "typed_extension_config": { + "name": "envoy.load_balancing_policies.least_request", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest", + "locality_lb_config": { + "zone_aware_lb_config": { + "min_cluster_size": "1" + } + } + } + } + } + ] + } + }, + { + "name": "xds_cluster", + "type": "STRICT_DNS", + "connect_timeout": "10s", + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext", + "common_tls_context": { + "tls_params": { + "tls_maximum_protocol_version": "TLSv1_3" + }, + "tls_certificate_sds_secret_configs": [ + { + "name": "xds_certificate", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-certificate.json" + } + } + } + ], + "validation_context_sds_secret_config": { + "name": "xds_trusted_ca", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-trusted-ca.json" + } + } + } + } + } + }, + "load_assignment": { + "cluster_name": "xds_cluster", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "envoy-gateway.envoy-gateway-system.svc.cluster.local.", + "port_value": 18000 + } + } + }, + "load_balancing_weight": 1 + } + ], + "load_balancing_weight": 1 + } + ] + }, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": { + "connection_keepalive": { + "interval": "30s", + "timeout": "5s" + } + } + } + } + } + } + ] + }, + "dynamic_resources": { + "lds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "cds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "ads_config": { + "api_type": "DELTA_GRPC", + "grpc_services": [ + { + "envoy_grpc": { + "cluster_name": "xds_cluster" + } + } + ], + "set_node_on_first_message_only": true, + "transport_api_version": "V3" + } + }, + "cluster_manager": { + "local_cluster_name": "default/eg" + }, + "admin": { + "address": { + "socket_address": { + "address": "127.0.0.1", + "port_value": 19000 + } + }, + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ] + }, + "overload_manager": { + "refresh_interval": "0.250s", + "resource_monitors": [ + { + "name": "envoy.resource_monitors.global_downstream_max_connections", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.resource_monitors.downstream_connections.v3.DownstreamConnectionsConfig", + "max_active_downstream_connections": "50000" + } + } + ] + }, + "layered_runtime": { + "layers": [ + { + "name": "global_config", + "static_layer": { + "re2.max_program_size.warn_level": 1000, + "envoy.restart_features.use_eds_cache_for_ads": true, + "re2.max_program_size.error_level": "4294967295" + } + } + ] + } + }, + "last_updated": "2025-10-09T04:27:24.355Z" + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.ClustersConfigDump", + "version_info": "22", + "static_clusters": [ + { + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "default/eg", + "type": "EDS", + "eds_cluster_config": { + "eds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "service_name": "default/eg" + }, + "connect_timeout": "10s", + "load_balancing_policy": { + "policies": [ + { + "typed_extension_config": { + "name": "envoy.load_balancing_policies.least_request", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest", + "locality_lb_config": { + "zone_aware_lb_config": { + "min_cluster_size": "1" + } + } + } + } + } + ] + } + }, + "last_updated": "2025-10-09T04:27:24.365Z" + }, + { + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "prometheus_stats", + "type": "STATIC", + "connect_timeout": "0.250s", + "load_assignment": { + "cluster_name": "prometheus_stats", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "127.0.0.1", + "port_value": 19000 + } + } + } + } + ] + } + ] + } + }, + "last_updated": "2025-10-09T04:27:24.364Z" + }, + { + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "xds_cluster", + "type": "STRICT_DNS", + "connect_timeout": "10s", + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext", + "common_tls_context": { + "tls_params": { + "tls_maximum_protocol_version": "TLSv1_3" + }, + "tls_certificate_sds_secret_configs": [ + { + "name": "xds_certificate", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-certificate.json" + } + } + } + ], + "validation_context_sds_secret_config": { + "name": "xds_trusted_ca", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-trusted-ca.json" + } + } + } + } + } + }, + "load_assignment": { + "cluster_name": "xds_cluster", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "envoy-gateway.envoy-gateway-system.svc.cluster.local.", + "port_value": 18000 + } + } + }, + "load_balancing_weight": 1 + } + ], + "load_balancing_weight": 1 + } + ] + }, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": { + "connection_keepalive": { + "interval": "30s", + "timeout": "5s" + } + } + } + } + } + }, + "last_updated": "2025-10-09T04:27:24.364Z" + } + ], + "dynamic_active_clusters": [ + { + "version_info": "bf469f35f4e24e980125e62de15dccd58be8bd57ed391fb56af9ef8fed805baf", + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "httproute/default/backend/rule/0", + "type": "EDS", + "eds_cluster_config": { + "eds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "service_name": "httproute/default/backend/rule/0" + }, + "connect_timeout": "10s", + "per_connection_buffer_limit_bytes": 32768, + "lb_policy": "LEAST_REQUEST", + "circuit_breakers": { + "thresholds": [ + { + "max_retries": 1024 + } + ] + }, + "dns_lookup_family": "V4_ONLY", + "metadata": { + "filter_metadata": { + "envoy-gateway": { + "resources": [ + { + "name": "backend", + "kind": "HTTPRoute", + "namespace": "default" + } + ] + } + } + }, + "common_lb_config": {}, + "ignore_health_on_host_removal": true, + "load_balancing_policy": { + "policies": [ + { + "typed_extension_config": { + "name": "envoy.load_balancing_policies.least_request", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest", + "locality_lb_config": { + "locality_weighted_lb_config": {} + } + } + } + } + ] + }, + "transport_socket_matches": [ + { + "name": "httproute/default/backend/rule/0/tls/0", + "match": { + "name": "httproute/default/backend/rule/0/tls/0" + }, + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext", + "common_tls_context": { + "tls_certificate_sds_secret_configs": [ + { + "name": "envoy-gateway-system/example-client-cert", + "sds_config": { + "ads": {}, + "resource_api_version": "V3" + } + } + ], + "combined_validation_context": { + "default_validation_context": { + "match_typed_subject_alt_names": [ + { + "san_type": "DNS", + "matcher": { + "exact": "www.example.com" + } + } + ] + }, + "validation_context_sds_secret_config": { + "name": "enable-backend-tls/default-ca", + "sds_config": { + "ads": {}, + "resource_api_version": "V3" + } + } + } + }, + "sni": "www.example.com" + } + } + } + ] + }, + "last_updated": "2025-10-09T04:49:49.232Z" + }, + { + "version_info": "89e4c1a9bcf332d8b33f5500bf0261bc256b36d38b29235674334e04af252277", + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "spire_agent", + "connect_timeout": "1s", + "http2_protocol_options": {}, + "load_assignment": { + "cluster_name": "spire_agent", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "pipe": { + "path": "/var/run/spiffe-workload-api/spire-agent.sock" + } + } + } + } + ] + } + ] + } + }, + "last_updated": "2025-10-09T04:27:24.383Z" + } + ], + "dynamic_warming_clusters": [ + { + "version_info": "56d841e662a218c31534a1afd1e618486fb226e1fe6357a20afbc84e215b248d", + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "httproute/default/backend/rule/0", + "type": "EDS", + "eds_cluster_config": { + "eds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "service_name": "httproute/default/backend/rule/0" + }, + "connect_timeout": "10s", + "per_connection_buffer_limit_bytes": 32768, + "lb_policy": "LEAST_REQUEST", + "circuit_breakers": { + "thresholds": [ + { + "max_retries": 1024 + } + ] + }, + "dns_lookup_family": "V4_ONLY", + "metadata": { + "filter_metadata": { + "envoy-gateway": { + "resources": [ + { + "name": "backend", + "kind": "HTTPRoute", + "namespace": "default" + } + ] + } + } + }, + "common_lb_config": {}, + "ignore_health_on_host_removal": true, + "load_balancing_policy": { + "policies": [ + { + "typed_extension_config": { + "name": "envoy.load_balancing_policies.least_request", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest", + "locality_lb_config": { + "locality_weighted_lb_config": {} + } + } + } + } + ] + }, + "transport_socket_matches": [ + { + "name": "httproute/default/backend/rule/0/tls/0", + "match": { + "name": "httproute/default/backend/rule/0/tls/0" + }, + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext", + "common_tls_context": { + "tls_certificate_sds_secret_configs": [ + { + "name": "spiffe://examples.extensions.io/aws/us-west-2/envoy-proxy", + "sds_config": { + "api_config_source": { + "api_type": "GRPC", + "grpc_services": [ + { + "envoy_grpc": { + "cluster_name": "spire_agent" + } + } + ], + "transport_api_version": "V3" + }, + "resource_api_version": "V3" + } + } + ], + "combined_validation_context": { + "default_validation_context": { + "match_typed_subject_alt_names": [ + { + "san_type": "DNS", + "matcher": { + "exact": "www.example.com" + } + } + ] + }, + "validation_context_sds_secret_config": { + "name": "enable-backend-tls/default-ca", + "sds_config": { + "ads": {}, + "resource_api_version": "V3" + } + } + } + }, + "sni": "www.example.com" + } + } + } + ] + }, + "last_updated": "2025-10-09T05:00:06.460Z" + } + ] + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.ListenersConfigDump", + "version_info": "14", + "static_listeners": [ + { + "listener": { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "envoy-gateway-proxy-stats-0.0.0.0-19001", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 19001 + } + }, + "filter_chains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "eg-stats-http", + "route_config": { + "name": "local_route", + "virtual_hosts": [ + { + "name": "prometheus_stats", + "domains": ["*"], + "routes": [ + { + "match": { + "path": "/stats/prometheus", + "headers": [ + { + "name": ":method", + "string_match": { + "exact": "GET" + } + } + ] + }, + "route": { + "cluster": "prometheus_stats" + } + } + ] + } + ] + }, + "http_filters": [ + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router" + } + } + ], + "normalize_path": true + } + } + ] + } + ], + "bypass_overload_manager": true + }, + "last_updated": "2025-10-09T04:27:24.367Z" + } + ], + "dynamic_listeners": [ + { + "name": "envoy-gateway-proxy-ready-0.0.0.0-19003", + "active_state": { + "version_info": "480eb87881317ebff21162f54e4a9c59c648d67a93fb17232e909ed08547e473", + "listener": { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "envoy-gateway-proxy-ready-0.0.0.0-19003", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 19003 + } + }, + "filter_chains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "eg-ready-http", + "route_config": { + "name": "ready_route", + "virtual_hosts": [ + { + "name": "ready_route", + "domains": ["*"], + "routes": [ + { + "match": { + "prefix": "/" + }, + "direct_response": { + "status": 500 + } + } + ] + } + ] + }, + "http_filters": [ + { + "name": "envoy.filters.http.health_check", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.health_check.v3.HealthCheck", + "pass_through_mode": false, + "headers": [ + { + "name": ":path", + "string_match": { + "exact": "/ready" + } + } + ] + } + }, + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router", + "suppress_envoy_headers": true + } + } + ] + } + } + ] + } + ], + "bypass_overload_manager": true + }, + "last_updated": "2025-10-09T04:27:24.393Z" + } + }, + { + "name": "default/eg/http", + "active_state": { + "version_info": "6c120184248901e0afc05f493d1b00699bc9d90108b76d5289eb213ef4b5706a", + "listener": { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "default/eg/http", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 10080 + } + }, + "per_connection_buffer_limit_bytes": 32768, + "access_log": [ + { + "name": "envoy.access_loggers.file", + "filter": { + "response_flag_filter": { + "flags": ["NR"] + } + }, + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/stdout", + "log_format": { + "json_format": { + "upstream_host": "%UPSTREAM_HOST%", + "bytes_sent": "%BYTES_SENT%", + "user-agent": "%REQ(USER-AGENT)%", + "upstream_local_address": "%UPSTREAM_LOCAL_ADDRESS%", + "method": "%REQ(:METHOD)%", + "downstream_local_address": "%DOWNSTREAM_LOCAL_ADDRESS%", + "response_code_details": "%RESPONSE_CODE_DETAILS%", + "x-envoy-upstream-service-time": "%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%", + "protocol": "%PROTOCOL%", + "duration": "%DURATION%", + "downstream_remote_address": "%DOWNSTREAM_REMOTE_ADDRESS%", + "route_name": "%ROUTE_NAME%", + "start_time": "%START_TIME%", + "bytes_received": "%BYTES_RECEIVED%", + "response_flags": "%RESPONSE_FLAGS%", + ":authority": "%REQ(:AUTHORITY)%", + "upstream_cluster": "%UPSTREAM_CLUSTER%", + "connection_termination_details": "%CONNECTION_TERMINATION_DETAILS%", + "upstream_transport_failure_reason": "%UPSTREAM_TRANSPORT_FAILURE_REASON%", + "requested_server_name": "%REQUESTED_SERVER_NAME%", + "x-forwarded-for": "%REQ(X-FORWARDED-FOR)%", + "x-request-id": "%REQ(X-REQUEST-ID)%", + "x-envoy-origin-path": "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%", + "response_code": "%RESPONSE_CODE%" + } + } + } + } + ], + "default_filter_chain": { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "http-10080", + "rds": { + "config_source": { + "ads": {}, + "resource_api_version": "V3" + }, + "route_config_name": "default/eg/http" + }, + "http_filters": [ + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router", + "suppress_envoy_headers": true + } + } + ], + "http2_protocol_options": { + "max_concurrent_streams": 100, + "initial_stream_window_size": 65536, + "initial_connection_window_size": 1048576 + }, + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/stdout", + "log_format": { + "json_format": { + "connection_termination_details": "%CONNECTION_TERMINATION_DETAILS%", + "protocol": "%PROTOCOL%", + "start_time": "%START_TIME%", + "x-envoy-origin-path": "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%", + "x-envoy-upstream-service-time": "%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%", + "bytes_sent": "%BYTES_SENT%", + "method": "%REQ(:METHOD)%", + "downstream_remote_address": "%DOWNSTREAM_REMOTE_ADDRESS%", + "bytes_received": "%BYTES_RECEIVED%", + "response_code_details": "%RESPONSE_CODE_DETAILS%", + "upstream_host": "%UPSTREAM_HOST%", + "upstream_cluster": "%UPSTREAM_CLUSTER%", + "x-request-id": "%REQ(X-REQUEST-ID)%", + "upstream_local_address": "%UPSTREAM_LOCAL_ADDRESS%", + "route_name": "%ROUTE_NAME%", + "requested_server_name": "%REQUESTED_SERVER_NAME%", + "user-agent": "%REQ(USER-AGENT)%", + "duration": "%DURATION%", + "downstream_local_address": "%DOWNSTREAM_LOCAL_ADDRESS%", + "response_code": "%RESPONSE_CODE%", + "upstream_transport_failure_reason": "%UPSTREAM_TRANSPORT_FAILURE_REASON%", + "response_flags": "%RESPONSE_FLAGS%", + "x-forwarded-for": "%REQ(X-FORWARDED-FOR)%", + ":authority": "%REQ(:AUTHORITY)%" + } + } + } + } + ], + "use_remote_address": true, + "normalize_path": true, + "merge_slashes": true, + "server_header_transformation": "PASS_THROUGH", + "common_http_protocol_options": { + "headers_with_underscores_action": "REJECT_REQUEST" + }, + "path_with_escaped_slashes_action": "UNESCAPE_AND_REDIRECT" + } + } + ], + "name": "default/eg/http" + }, + "max_connections_to_accept_per_socket_event": 1 + }, + "last_updated": "2025-10-09T04:27:24.394Z" + } + } + ] + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.ScopedRoutesConfigDump" + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.RoutesConfigDump", + "static_route_configs": [ + { + "route_config": { + "@type": "type.googleapis.com/envoy.config.route.v3.RouteConfiguration", + "name": "ready_route", + "virtual_hosts": [ + { + "name": "ready_route", + "domains": ["*"], + "routes": [ + { + "match": { + "prefix": "/" + }, + "direct_response": { + "status": 500 + } + } + ] + } + ] + }, + "last_updated": "2025-10-09T04:27:24.392Z" + }, + { + "route_config": { + "@type": "type.googleapis.com/envoy.config.route.v3.RouteConfiguration", + "name": "local_route", + "virtual_hosts": [ + { + "name": "prometheus_stats", + "domains": ["*"], + "routes": [ + { + "match": { + "path": "/stats/prometheus", + "headers": [ + { + "name": ":method", + "string_match": { + "exact": "GET" + } + } + ] + }, + "route": { + "cluster": "prometheus_stats" + } + } + ] + } + ] + }, + "last_updated": "2025-10-09T04:27:24.366Z" + } + ], + "dynamic_route_configs": [ + { + "version_info": "bc44981323d08bcb24abad6867942912675bb35bb674f2ee9ae866efbe1375dd", + "route_config": { + "@type": "type.googleapis.com/envoy.config.route.v3.RouteConfiguration", + "name": "default/eg/http", + "virtual_hosts": [ + { + "name": "default/eg/http/www_example_com", + "domains": ["www.example.com"], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "httproute/default/backend/rule/0", + "upgrade_configs": [ + { + "upgrade_type": "websocket" + } + ] + }, + "metadata": { + "filter_metadata": { + "envoy-gateway": { + "resources": [ + { + "namespace": "default", + "name": "backend", + "kind": "HTTPRoute" + } + ] + } + } + }, + "name": "httproute/default/backend/rule/0/match/0/www_example_com" + } + ], + "metadata": { + "filter_metadata": { + "envoy-gateway": { + "resources": [ + { + "name": "eg", + "kind": "Gateway", + "namespace": "default", + "sectionName": "http" + } + ] + } + } + } + } + ], + "ignore_port_in_host_matching": true + }, + "last_updated": "2025-10-09T04:49:49.233Z" + } + ] + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.SecretsConfigDump", + "dynamic_active_secrets": [ + { + "name": "xds_certificate", + "last_updated": "2025-10-09T04:27:24.371Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "xds_certificate", + "tls_certificate": { + "certificate_chain": { + "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURLekNDQWhPZ0F3SUJBZ0lFSEsycTVqQU5CZ2txaGtpRzl3MEJBUXNGQURBc01SWXdGQVlEVlFRREV3MWwKYm5admVTMW5ZWFJsZDJGNU1SSXdFQVlEVlFRRkV3azVOalExTnpZd056Y3dIaGNOTWpVeE1EQTNNakF6T0RVegpXaGNOTXpBeE1EQTNNakF6T0RVeFdqQU1NUW93Q0FZRFZRUUREQUVxTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGCkFBT0NBUThBTUlJQkNnS0NBUUVBcW50TVVNNm5kYnJuOGdlSS85SVErR2JHbjkvMDFzS1hLbFl2SlI4eEhRRlAKNjJDZ1ZJNGIxZmdKbmRsU2ZqNUxBTGF6QVY3cU8rZFRDUmhmY3BYVWlPQ3NjdVQrNWpvMUpFTVp5UUgvc2J6VgpYN1hYR1BBOUViYjdxQ1l4VU5OM0ZJSnFteWg1L3NZNHJmSEdmaiszZWxrMlVDQlRiRGkrdncrNWVmU082N1hoCjh5RDZMZnVVUG5aWHF1RUNuTlNsMVFDVFQ2NVpwYWhzQTRYSmJRS0FQMzlMQzMwSXoveDNjM0FmZ0JHQmdDdm8KNEtIcVl2WC9oS1RzMlU1V1ZodStCTVJtUDJJMmNlZHUzNXVMNmpLWFVWak0vUTR6VlduUDJDVkZCYm9yZUtXaApsZXhwNmRaa2NYNTV0NjlJZ3Zxem84cmdTODlvZ3J6Lzd2WWtRWDFIN3dJREFRQUJvM1V3Y3pBT0JnTlZIUThCCkFmOEVCQU1DQlBBd0hRWURWUjBPQkJZRUZDWEVKa2laYzh0R3EwYzJYQ01jTGFTYlUwdXJNQjhHQTFVZEl3UVkKTUJhQUZBUjl1T1FKdkVVZkhWdkRNcWVuKzF2S1ArZ09NQ0VHQTFVZEVRUWFNQmlDRmlvdVpXNTJiM2t0WjJGMApaWGRoZVMxemVYTjBaVzB3RFFZSktvWklodmNOQVFFTEJRQURnZ0VCQUxIc3dxTEJyOFM3OGFSYjRCa2h6Tk92CklLZzV5bllGUSt5ZytxODRmUlczWmZzUXJPRU9ZQTVRMEs1R1lhbWx2RUNDREpZeEwwYnVndmFHbkFnaldleEEKTFVJVFBReWErSDYybnZBeVBFbVZ0UEpEU0Z0ekFoL29LTHdqN25qRk45L1ExZzJTVk9TaHhsQ2xQWXlSTTlwTQpneGc4U2ZWSzN2c0hkb0ZBNXhPUzNTNVpCSDNjakJOVE03eHpscm54c1BZeVBwUEhQUG1SbXdtSmRUZWZaL2pKCk44Wkp2NTFQU0JCQnlQUEhyQkVscGVzcDMzQ0F0cWk3OFdSLzMwMmI0V3ZtWWZjRmRaT0dQWk0yYzNDM0prYTkKejkrTmhVcDErRFJqWWJXbmVjczEzZEdMKzd4TjZZUGlIVHhXZkhrZTVHazFXWldWSXdSZ2E0QkRRUDdDR2l3PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + }, + "private_key": { + "inline_bytes": "W3JlZGFjdGVkXQ==" + } + } + } + }, + { + "name": "envoy-gateway-system/example-client-cert", + "version_info": "a74d29fe8003baddff48a056a1446c4315cddbaf88e522058db7c2d03476ac89", + "last_updated": "2025-10-09T04:49:49.236Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "envoy-gateway-system/example-client-cert", + "tls_certificate": { + "certificate_chain": { + "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURJakNDQWdxZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREF0TVJVd0V3WURWUVFLREF4bGVHRnQKY0d4bElFbHVZeTR4RkRBU0JnTlZCQU1NQzJWNFlXMXdiR1V1WTI5dE1CNFhEVEkxTVRBd09ESXdOVGd6TTFvWApEVEkyTVRBd09ESXdOVGd6TTFvd09ERVhNQlVHQTFVRUF3d09aWGhoYlhCc1pTMWpiR2xsYm5ReEhUQWJCZ05WCkJBb01GR1Y0WVcxd2JHVWdiM0puWVc1cGVtRjBhVzl1TUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEEKTUlJQkNnS0NBUUVBb2FSa1RHVmxLQ3pmTTRPM081NVJORmVYQ2Fsa1BHcUVCbnQxWEhFcmk4RHQ1YmJjT3FFdQpPTDZONmF6UnFTYVlFejhmZzVIcjB0UjRhdG1MeHM4VVF1Y3F2ZVNGamFOZ2ZScnNvMDBtaVZsUzIyNW83d1hhClZGQW5LeFFTb0xTcTNhVHFOS3hOc3BNdHVha0xhT3RoRlMzWUkwWjZpZlMyQTlmMzVUakRjVFhtUEpwSHBPd1kKN3MwekV1OGJBbEE0cjlQV1hWRDl5bGtBTFJmZEg5YTVUM2VxVmRydGdVT3I0enhzSGFEM3hYZW95cVhIclpFMQo4c0xLWERvbWpBd1FPTjMvRGNrYkJWMUhxanpiRXpER2FaRXFpSmZ6d1p3dlNHK0NOZlpBOExBYlQxYkVZYzVoCmsvL2FYVm5vODRiejRHNWxSVmsyTUZ3bTlQZWVtODZES1FJREFRQUJvMEl3UURBZEJnTlZIUTRFRmdRVXJ2T24KYkVnME8raTFHS0lWZmlHWlgxZko2MEl3SHdZRFZSMGpCQmd3Rm9BVTM2TllZL0V1SGhkV05FN3B6TWtRZUZ3dwpaWll3RFFZSktvWklodmNOQVFFTEJRQURnZ0VCQURDYnRmeW5SRE82U3crTGhkZW5sSmRraWQ5MjFlN05zTGVZCmpPbnlWVDUzZVpCLzE0cmpHcWJqTGh6OFpmTWd0Q2FBVThFVXk0OEQvWjhSWk5hVFd0RjQ0V256cExreHNHdzEKWk5vQmI2L0xLT0dTUUJUaWV0M3llV2RyMHBmb2Zxa0ZUWnRCVlh0T0tzcEdTeFlibDZ6WmZuNTVXS3BYNm5HRQpUdjQ5SndGQW1XNlZPam9FMENxSk1PU2F1VFNBa1dqR1hLZlZQK3prVlhuR0M0V1N6S2lzZkpZY1pzbkh4MXErCmZyU0pUMGhaZEVPcllCd3oyT1M3WE9uOWFieHdHd0h6cEYzdmhRbTlNVkMzalUyczFER2pQVzNiMXkvREp0eWcKZStkbTArcjVoN3poNFgyVEE4NVRKblBGS0RoalBkMk9wbjJ3TXpqZzhIU3hDWS9aZTJrPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + }, + "private_key": { + "inline_bytes": "W3JlZGFjdGVkXQ==" + } + } + } + }, + { + "name": "enable-backend-tls/default-ca", + "version_info": "4c03e110dd30c78748f7fb429bd12747dd862e7566d94953591f560b745b11d9", + "last_updated": "2025-10-09T04:49:49.237Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "enable-backend-tls/default-ca", + "validation_context": { + "trusted_ca": { + "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURPekNDQWlPZ0F3SUJBZ0lVWXBVR3ZmWVR1V3ZDQmI2ZGY1OEgwYlBkdTI4d0RRWUpLb1pJaHZjTkFRRUwKQlFBd0xURVZNQk1HQTFVRUNnd01aWGhoYlhCc1pTQkpibU11TVJRd0VnWURWUVFEREF0bGVHRnRjR3hsTG1OdgpiVEFlRncweU5URXdNRGd5TURReU5USmFGdzB5TmpFd01EZ3lNRFF5TlRKYU1DMHhGVEFUQmdOVkJBb01ER1Y0CllXMXdiR1VnU1c1akxqRVVNQklHQTFVRUF3d0xaWGhoYlhCc1pTNWpiMjB3Z2dFaU1BMEdDU3FHU0liM0RRRUIKQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURIR2xkUXdzRTE2QkZocXB2eWZKOEkrQ25UOFpEZFNNT3ZUNm1WQUlmYgpIaHY1WHZXUm4zdUlpSjB6YmJ6dWpMVmpyTGt3RFRkWmViaWszYzdNWTIwS1k3eW53SXkyV3hRcktFbytXd3ZlClJIUTdld0FYRVNoemRLeXpCcHZiSWp3V1ZnWXcyRFV0RUY3clF3clQrSGtlTUFPS214d3RCcHRQZWRwNncxQy8KYlgxRTZEclNIRUFRd3JaWDl3Y3UyWitMdDlxU3hHUk9VSys0T1RFbUhMaUllMGI3SWMxanIyZ2hSSVlwL2ZnQwptOExpZk95V25nRURXaS9hSllKUDBEalRjQjlxWWZYK1pCaDVMZGdBSTBXalorM1RtZUw4b05qTWIvcU4zcGlOCnhkMCtiZ28zS09qcERGdFFBai9mcEVZRUF3VFY0Ymh2VWZJajJwZ1g2MkRKQWdNQkFBR2pVekJSTUIwR0ExVWQKRGdRV0JCUmcyR2dKTG5YcU1Fb2dvbzZCRVU0UDhtR0dhekFmQmdOVkhTTUVHREFXZ0JSZzJHZ0pMblhxTUVvZwpvbzZCRVU0UDhtR0dhekFQQmdOVkhSTUJBZjhFQlRBREFRSC9NQTBHQ1NxR1NJYjNEUUVCQ3dVQUE0SUJBUUJuCkpsZlYrZC9mUEVCTk5IUzhNcEU5SWdORFk2SFNwL2VzaTdmVlk4U21Oc3BGMllOY29lcDdFNFB0VnFsMGZFKzAKRTJWVS92TzNkY2JYVWo5QjZEaVBBOCtwS2VDZUQxQ2c4T1hvaHFOSXdmeDRMckczMW55KzRqV2RrcjAzcUhqQwpwK3N5VFcxbHRScUpLbGRZMkRZVkFVNTJKUlpZRTlZVVd3Tm5ldU5KU2tZR01NV0htVUlGek15YUlOYWNxMytFCnpqMmJPK3R5VVVUTW1VL21LUXR1ZHRtU3dqam10MGp5T2lQRUNTUmhhTmY5WDE0QkdvRTI0MFk4Yll0L0tsbTUKUnNGTEdEV3dsTjVQTUxZWXpxcjFISkVoOWJ2UG5LQ0VhaXRHMVNDRlZYN2RUVlkvVkpVaUQ2aDJPSFM0RVR6agpXYmZiaE1ZWkFYcVVDbVJHbk5MVwotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + } + } + } + }, + { + "name": "xds_trusted_ca", + "last_updated": "2025-10-09T04:27:24.371Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "xds_trusted_ca", + "validation_context": { + "trusted_ca": { + "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURHRENDQWdDZ0F3SUJBZ0lFT1g1RFRUQU5CZ2txaGtpRzl3MEJBUXNGQURBc01SWXdGQVlEVlFRREV3MWwKYm5admVTMW5ZWFJsZDJGNU1SSXdFQVlEVlFRRkV3azVOalExTnpZd056Y3dIaGNOTWpVeE1EQTNNakF6T0RVeQpXaGNOTXpBeE1EQTNNakF6T0RVeFdqQXNNUll3RkFZRFZRUURFdzFsYm5admVTMW5ZWFJsZDJGNU1SSXdFQVlEClZRUUZFd2s1TmpRMU56WXdOemN3Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRRFQKWTdhSCtKYkorcU1aU1F0RU53L0w0eTVDS3lDc0hUVHVqeVZiWDJ4ZWlBdEhtN29TZGc1SEtWZzVlTHpQaUhReApOSm9KNXRLZkF2ZlVlQ0NOR0ZPRHAyTjNMRmROK3VLdFN5cjlQYUl3b08zb1gybHhnSTFncUNVc2ZQZVF2TXNJCjlrazg5R080UlZFaXlqa3FOaDR5U1dpekFSQ2xjNDlTQ2Faa3pnSjdIZ1ZsalJkL2tZYWNER2dHcGtSSFBJanQKZ05YeGFZNS9USm1tT2xLbllQaFZpRWcxdFhNQzZTQVVVUlVYc2lpK2hZbTZHaCszSzF4MjBRaHpoSXltN2xuawp5SHZpcXFJTE9LTGhpRWVWQVZjNkxyWWRHNUlNYjVBVjNPSyt3VHVHOHFlTHkvSytUS0ZFUzZXMlA0VmtsQjFhCjh2dG5QQ2FFclQ4SzdjazR5aWFaQWdNQkFBR2pRakJBTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQQmdOVkhSTUIKQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJRRWZiamtDYnhGSHgxYnd6S25wL3RieWovb0RqQU5CZ2txaGtpRwo5dzBCQVFzRkFBT0NBUUVBaTJNcmoyTmJnQ0R1M0Q4WXBrb21JZHdMd2M1UFF4QnJyL0xxR0diemFaSWZrcS83CmR0VjNsdHFqV3VZYUwxMDNPZlRURWlpUmpkL2E1akcvN2FhaVBYLzFFaEgyM0p3Y1hrWjdib3FERjRMc3ZqelEKS3Y5QzRJVVB5QXEvT1llSFphQ3hVZE0rZzBwMzRaVFI3TVRRVDIvaWhkeWZCdUFSMFNkZEhRRk05UFYwNThhagpJUURTSmFKd2FvNnpoTnJXQkNVQk1qWjJLcVRxSFN1Yms3eDh3aUZ5RFRNT0RsWHRqRGxJYXlKMVdaNnlySlNjClB1Q2xPTDV1cWp3QXQ4Q29VUVh1bUwvMW9XV2ZXYkZycWpBK0Z4VXc1Z05zUHJRUWhqTGpMRkNsdk1EYUlaK3UKbXhYa0FnbExrK0QxSHpha0lpR3QwdUxYY0RxcFlEWHlPM1RvT2c9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + }, + "match_typed_subject_alt_names": [ + { + "san_type": "DNS", + "matcher": { + "exact": "envoy-gateway" + } + } + ] + } + } + } + ], + "dynamic_warming_secrets": [ + { + "name": "spiffe://examples.extensions.io/aws/us-west-2/envoy-proxy", + "version_info": "uninitialized", + "last_updated": "2025-10-09T05:00:06.460Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "spiffe://examples.extensions.io/aws/us-west-2/envoy-proxy" + } + } + ] + } + ] +} diff --git a/examples/extension-server/envoy-config-dumps/without_envoyproxy_mtls.json b/examples/extension-server/envoy-config-dumps/without_envoyproxy_mtls.json new file mode 100644 index 00000000000..bb82e2c61f0 --- /dev/null +++ b/examples/extension-server/envoy-config-dumps/without_envoyproxy_mtls.json @@ -0,0 +1,3468 @@ +{ + "configs": [ + { + "@type": "type.googleapis.com/envoy.admin.v3.BootstrapConfigDump", + "bootstrap": { + "node": { + "locality": {}, + "user_agent_name": "envoy", + "user_agent_build_version": { + "version": { + "major_number": 1, + "minor_number": 35, + "patch": 3 + }, + "metadata": { + "build.type": "RELEASE", + "ssl.version": "BoringSSL", + "revision.sha": "ff3fe7f0bb9e4ac6a283ea38bf9ee3f375530d56", + "revision.status": "Clean" + } + }, + "extensions": [ + { + "name": "quic.http_server_connection.default", + "category": "quic.http_server_connection" + }, + { + "name": "envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "category": "envoy.upstream_options", + "type_urls": [ + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions" + ] + }, + { + "name": "envoy.extensions.upstreams.tcp.v3.TcpProtocolOptions", + "category": "envoy.upstream_options", + "type_urls": [ + "envoy.extensions.upstreams.tcp.v3.TcpProtocolOptions" + ] + }, + { + "name": "envoy.upstreams.http.http_protocol_options", + "category": "envoy.upstream_options" + }, + { + "name": "envoy.upstreams.tcp.tcp_protocol_options", + "category": "envoy.upstream_options" + }, + { + "name": "envoy.access_loggers.extension_filters.cel", + "category": "envoy.access_loggers.extension_filters", + "type_urls": [ + "envoy.extensions.access_loggers.filters.cel.v3.ExpressionFilter" + ] + }, + { + "name": "envoy.rds_factory.default", + "category": "envoy.rds_factory" + }, + { + "name": "envoy.matching.common_inputs.environment_variable", + "category": "envoy.matching.common_inputs", + "type_urls": [ + "envoy.extensions.matching.common_inputs.environment_variable.v3.Config" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.always_on", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.AlwaysOnSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.cel", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.CELSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.dynatrace", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.DynatraceSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.parent_based", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.ParentBasedSamplerConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.samplers.trace_id_ratio_based", + "category": "envoy.tracers.opentelemetry.samplers", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.samplers.v3.TraceIdRatioBasedSamplerConfig" + ] + }, + { + "name": "envoy.route_config_update_requester.default", + "category": "envoy.route_config_update_requester" + }, + { + "name": "envoy.bandwidth_limit", + "category": "envoy.filters.http" + }, + { + "name": "envoy.buffer", + "category": "envoy.filters.http" + }, + { + "name": "envoy.cors", + "category": "envoy.filters.http" + }, + { + "name": "envoy.csrf", + "category": "envoy.filters.http" + }, + { + "name": "envoy.ext_authz", + "category": "envoy.filters.http" + }, + { + "name": "envoy.ext_proc", + "category": "envoy.filters.http" + }, + { + "name": "envoy.extensions.filters.http.dynamic_modules", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilter", + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilterPerRoute" + ] + }, + { + "name": "envoy.fault", + "category": "envoy.filters.http" + }, + { + "name": "envoy.filters.http.adaptive_concurrency", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.adaptive_concurrency.v3.AdaptiveConcurrency" + ] + }, + { + "name": "envoy.filters.http.admission_control", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.admission_control.v3.AdmissionControl" + ] + }, + { + "name": "envoy.filters.http.alternate_protocols_cache", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.alternate_protocols_cache.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.http.api_key_auth", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.api_key_auth.v3.ApiKeyAuth", + "envoy.extensions.filters.http.api_key_auth.v3.ApiKeyAuthPerRoute" + ] + }, + { + "name": "envoy.filters.http.aws_lambda", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.aws_lambda.v3.Config", + "envoy.extensions.filters.http.aws_lambda.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.aws_request_signing", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigning", + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigningPerRoute" + ] + }, + { + "name": "envoy.filters.http.bandwidth_limit", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit" + ] + }, + { + "name": "envoy.filters.http.basic_auth", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.basic_auth.v3.BasicAuth", + "envoy.extensions.filters.http.basic_auth.v3.BasicAuthPerRoute" + ] + }, + { + "name": "envoy.filters.http.buffer", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.buffer.v3.Buffer", + "envoy.extensions.filters.http.buffer.v3.BufferPerRoute" + ] + }, + { + "name": "envoy.filters.http.cache", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.cache.v3.CacheConfig" + ] + }, + { + "name": "envoy.filters.http.cdn_loop", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.cdn_loop.v3.CdnLoopConfig" + ] + }, + { + "name": "envoy.filters.http.composite", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.composite.v3.Composite" + ] + }, + { + "name": "envoy.filters.http.compressor", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.compressor.v3.Compressor", + "envoy.extensions.filters.http.compressor.v3.CompressorPerRoute" + ] + }, + { + "name": "envoy.filters.http.connect_grpc_bridge", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.connect_grpc_bridge.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.http.cors", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.cors.v3.Cors", + "envoy.extensions.filters.http.cors.v3.CorsPolicy" + ] + }, + { + "name": "envoy.filters.http.credential_injector", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.credential_injector.v3.CredentialInjector" + ] + }, + { + "name": "envoy.filters.http.csrf", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.csrf.v3.CsrfPolicy"] + }, + { + "name": "envoy.filters.http.custom_response", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.custom_response.v3.CustomResponse" + ] + }, + { + "name": "envoy.filters.http.decompressor", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.decompressor.v3.Decompressor" + ] + }, + { + "name": "envoy.filters.http.dynamic_forward_proxy", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.dynamic_forward_proxy.v3.FilterConfig", + "envoy.extensions.filters.http.dynamic_forward_proxy.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.ext_authz", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ext_authz.v3.ExtAuthz", + "envoy.extensions.filters.http.ext_authz.v3.ExtAuthzPerRoute" + ] + }, + { + "name": "envoy.filters.http.ext_proc", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ext_proc.v3.ExtProcPerRoute", + "envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor" + ] + }, + { + "name": "envoy.filters.http.fault", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.fault.v3.HTTPFault"] + }, + { + "name": "envoy.filters.http.file_system_buffer", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.file_system_buffer.v3.FileSystemBufferFilterConfig" + ] + }, + { + "name": "envoy.filters.http.gcp_authn", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.gcp_authn.v3.GcpAuthnFilterConfig" + ] + }, + { + "name": "envoy.filters.http.geoip", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.geoip.v3.Geoip"] + }, + { + "name": "envoy.filters.http.grpc_field_extraction", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_field_extraction.v3.GrpcFieldExtractionConfig" + ] + }, + { + "name": "envoy.filters.http.grpc_http1_bridge", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_http1_bridge.v3.Config" + ] + }, + { + "name": "envoy.filters.http.grpc_http1_reverse_bridge", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_http1_reverse_bridge.v3.FilterConfig", + "envoy.extensions.filters.http.grpc_http1_reverse_bridge.v3.FilterConfigPerRoute" + ] + }, + { + "name": "envoy.filters.http.grpc_json_reverse_transcoder", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_json_reverse_transcoder.v3.GrpcJsonReverseTranscoder" + ] + }, + { + "name": "envoy.filters.http.grpc_json_transcoder", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_json_transcoder.v3.GrpcJsonTranscoder" + ] + }, + { + "name": "envoy.filters.http.grpc_stats", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.grpc_stats.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.http.grpc_web", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.grpc_web.v3.GrpcWeb"] + }, + { + "name": "envoy.filters.http.header_mutation", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutation", + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutationPerRoute" + ] + }, + { + "name": "envoy.filters.http.header_to_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.header_to_metadata.v3.Config" + ] + }, + { + "name": "envoy.filters.http.health_check", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.health_check.v3.HealthCheck" + ] + }, + { + "name": "envoy.filters.http.ip_tagging", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ip_tagging.v3.IPTagging" + ] + }, + { + "name": "envoy.filters.http.json_to_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.json_to_metadata.v3.JsonToMetadata" + ] + }, + { + "name": "envoy.filters.http.jwt_authn", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.jwt_authn.v3.JwtAuthentication", + "envoy.extensions.filters.http.jwt_authn.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.local_ratelimit", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit" + ] + }, + { + "name": "envoy.filters.http.lua", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.lua.v3.Lua", + "envoy.extensions.filters.http.lua.v3.LuaPerRoute" + ] + }, + { + "name": "envoy.filters.http.match_delegate", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.common.matching.v3.ExtensionWithMatcher", + "envoy.extensions.common.matching.v3.ExtensionWithMatcherPerRoute" + ] + }, + { + "name": "envoy.filters.http.oauth2", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.oauth2.v3.OAuth2"] + }, + { + "name": "envoy.filters.http.on_demand", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.on_demand.v3.OnDemand", + "envoy.extensions.filters.http.on_demand.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.original_src", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.original_src.v3.OriginalSrc" + ] + }, + { + "name": "envoy.filters.http.proto_message_extraction", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.proto_message_extraction.v3.ProtoMessageExtractionConfig" + ] + }, + { + "name": "envoy.filters.http.rate_limit_quota", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaFilterConfig", + "envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaOverride" + ] + }, + { + "name": "envoy.filters.http.ratelimit", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.ratelimit.v3.RateLimit", + "envoy.extensions.filters.http.ratelimit.v3.RateLimitPerRoute" + ] + }, + { + "name": "envoy.filters.http.rbac", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.rbac.v3.RBAC", + "envoy.extensions.filters.http.rbac.v3.RBACPerRoute" + ] + }, + { + "name": "envoy.filters.http.router", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.router.v3.Router"] + }, + { + "name": "envoy.filters.http.set_filter_state", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.set_filter_state.v3.Config" + ] + }, + { + "name": "envoy.filters.http.set_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.set_metadata.v3.Config" + ] + }, + { + "name": "envoy.filters.http.stateful_session", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.stateful_session.v3.StatefulSession", + "envoy.extensions.filters.http.stateful_session.v3.StatefulSessionPerRoute" + ] + }, + { + "name": "envoy.filters.http.tap", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.tap.v3.Tap"] + }, + { + "name": "envoy.filters.http.thrift_to_metadata", + "category": "envoy.filters.http", + "type_urls": [ + "envoy.extensions.filters.http.thrift_to_metadata.v3.ThriftToMetadata" + ] + }, + { + "name": "envoy.filters.http.wasm", + "category": "envoy.filters.http", + "type_urls": ["envoy.extensions.filters.http.wasm.v3.Wasm"] + }, + { + "name": "envoy.geoip", + "category": "envoy.filters.http" + }, + { + "name": "envoy.grpc_http1_bridge", + "category": "envoy.filters.http" + }, + { + "name": "envoy.grpc_json_transcoder", + "category": "envoy.filters.http" + }, + { + "name": "envoy.grpc_web", + "category": "envoy.filters.http" + }, + { + "name": "envoy.health_check", + "category": "envoy.filters.http" + }, + { + "name": "envoy.ip_tagging", + "category": "envoy.filters.http" + }, + { + "name": "envoy.local_rate_limit", + "category": "envoy.filters.http" + }, + { + "name": "envoy.lua", + "category": "envoy.filters.http" + }, + { + "name": "envoy.rate_limit", + "category": "envoy.filters.http" + }, + { + "name": "envoy.router", + "category": "envoy.filters.http" + }, + { + "name": "envoy.dog_statsd", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.graphite_statsd", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.metrics_service", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.open_telemetry_stat_sink", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.stat_sinks.dog_statsd", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.DogStatsdSink"] + }, + { + "name": "envoy.stat_sinks.graphite_statsd", + "category": "envoy.stats_sinks", + "type_urls": [ + "envoy.extensions.stat_sinks.graphite_statsd.v3.GraphiteStatsdSink" + ] + }, + { + "name": "envoy.stat_sinks.hystrix", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.HystrixSink"] + }, + { + "name": "envoy.stat_sinks.metrics_service", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.MetricsServiceConfig"] + }, + { + "name": "envoy.stat_sinks.open_telemetry", + "category": "envoy.stats_sinks", + "type_urls": [ + "envoy.extensions.stat_sinks.open_telemetry.v3.SinkConfig" + ] + }, + { + "name": "envoy.stat_sinks.statsd", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.config.metrics.v3.StatsdSink"] + }, + { + "name": "envoy.stat_sinks.wasm", + "category": "envoy.stats_sinks", + "type_urls": ["envoy.extensions.stat_sinks.wasm.v3.Wasm"] + }, + { + "name": "envoy.statsd", + "category": "envoy.stats_sinks" + }, + { + "name": "envoy.config_mux.delta_grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "envoy.config_mux.grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "envoy.config_mux.new_grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "envoy.config_mux.sotw_grpc_mux_factory", + "category": "envoy.config_mux" + }, + { + "name": "dubbo.hessian2", + "category": "envoy.dubbo_proxy.serializers" + }, + { + "name": "envoy.listener_manager_impl.default", + "category": "envoy.listener_manager_impl", + "type_urls": ["envoy.config.listener.v3.ListenerManager"] + }, + { + "name": "envoy.listener_manager_impl.validation", + "category": "envoy.listener_manager_impl", + "type_urls": [ + "envoy.config.listener.v3.ValidationListenerManager" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.host", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.HostMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.method", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.MethodMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.path", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.PathMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.property", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.PropertyMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.request", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.RequestMatchInput" + ] + }, + { + "name": "envoy.matching.generic_proxy.input.service", + "category": "envoy.matching.generic_proxy_request_input.input", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.ServiceMatchInput" + ] + }, + { + "name": "envoy.compression.brotli.decompressor", + "category": "envoy.compression.decompressor", + "type_urls": [ + "envoy.extensions.compression.brotli.decompressor.v3.Brotli" + ] + }, + { + "name": "envoy.compression.gzip.decompressor", + "category": "envoy.compression.decompressor", + "type_urls": [ + "envoy.extensions.compression.gzip.decompressor.v3.Gzip" + ] + }, + { + "name": "envoy.compression.zstd.decompressor", + "category": "envoy.compression.decompressor", + "type_urls": [ + "envoy.extensions.compression.zstd.decompressor.v3.Zstd" + ] + }, + { + "name": "envoy.bootstrap.internal_listener", + "category": "envoy.bootstrap", + "type_urls": [ + "envoy.extensions.bootstrap.internal_listener.v3.InternalListener" + ] + }, + { + "name": "envoy.bootstrap.wasm", + "category": "envoy.bootstrap", + "type_urls": ["envoy.extensions.wasm.v3.WasmService"] + }, + { + "name": "envoy.extensions.network.socket_interface.default_socket_interface", + "category": "envoy.bootstrap", + "type_urls": [ + "envoy.extensions.network.socket_interface.v3.DefaultSocketInterface" + ] + }, + { + "name": "envoy.transport_sockets.alts", + "category": "envoy.transport_sockets.downstream", + "type_urls": ["envoy.extensions.transport_sockets.alts.v3.Alts"] + }, + { + "name": "envoy.transport_sockets.quic", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.quic.v3.QuicDownstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.raw_buffer", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.raw_buffer.v3.RawBuffer" + ] + }, + { + "name": "envoy.transport_sockets.starttls", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.starttls.v3.StartTlsConfig" + ] + }, + { + "name": "envoy.transport_sockets.tap", + "category": "envoy.transport_sockets.downstream", + "type_urls": ["envoy.extensions.transport_sockets.tap.v3.Tap"] + }, + { + "name": "envoy.transport_sockets.tcp_stats", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tcp_stats.v3.Config" + ] + }, + { + "name": "envoy.transport_sockets.tls", + "category": "envoy.transport_sockets.downstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext" + ] + }, + { + "name": "raw_buffer", + "category": "envoy.transport_sockets.downstream" + }, + { + "name": "starttls", + "category": "envoy.transport_sockets.downstream" + }, + { + "name": "tls", + "category": "envoy.transport_sockets.downstream" + }, + { + "name": "envoy.retry_host_predicates.omit_canary_hosts", + "category": "envoy.retry_host_predicates", + "type_urls": [ + "envoy.extensions.retry.host.omit_canary_hosts.v3.OmitCanaryHostsPredicate" + ] + }, + { + "name": "envoy.retry_host_predicates.omit_host_metadata", + "category": "envoy.retry_host_predicates", + "type_urls": [ + "envoy.extensions.retry.host.omit_host_metadata.v3.OmitHostMetadataConfig" + ] + }, + { + "name": "envoy.retry_host_predicates.previous_hosts", + "category": "envoy.retry_host_predicates", + "type_urls": [ + "envoy.extensions.retry.host.previous_hosts.v3.PreviousHostsPredicate" + ] + }, + { + "name": "envoy.key_value.file_based", + "category": "envoy.common.key_value", + "type_urls": [ + "envoy.extensions.key_value.file_based.v3.FileBasedKeyValueStoreConfig" + ] + }, + { + "name": "envoy.config_subscription.ads", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.ads_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.aggregated_grpc_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.delta_grpc", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.delta_grpc_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.filesystem", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.filesystem_collection", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.grpc", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.config_subscription.rest", + "category": "envoy.config_subscription" + }, + { + "name": "envoy.route.early_data_policy.default", + "category": "envoy.route.early_data_policy", + "type_urls": [ + "envoy.extensions.early_data.v3.DefaultEarlyDataPolicy" + ] + }, + { + "name": "default", + "category": "network.connection.client" + }, + { + "name": "envoy_internal", + "category": "network.connection.client" + }, + { + "name": "envoy.extensions.http.cache.file_system_http_cache", + "category": "envoy.http.cache", + "type_urls": [ + "envoy.extensions.http.cache.file_system_http_cache.v3.FileSystemHttpCacheConfig" + ] + }, + { + "name": "envoy.extensions.http.cache.simple", + "category": "envoy.http.cache", + "type_urls": [ + "envoy.extensions.http.cache.simple_http_cache.v3.SimpleHttpCacheConfig" + ] + }, + { + "name": "envoy.cluster.dns", + "category": "envoy.clusters", + "type_urls": ["envoy.extensions.clusters.dns.v3.DnsCluster"] + }, + { + "name": "envoy.cluster.eds", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.logical_dns", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.original_dst", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.static", + "category": "envoy.clusters" + }, + { + "name": "envoy.cluster.strict_dns", + "category": "envoy.clusters" + }, + { + "name": "envoy.clusters.aggregate", + "category": "envoy.clusters", + "type_urls": [ + "envoy.extensions.clusters.aggregate.v3.ClusterConfig" + ] + }, + { + "name": "envoy.clusters.dynamic_forward_proxy", + "category": "envoy.clusters", + "type_urls": [ + "envoy.extensions.clusters.dynamic_forward_proxy.v3.ClusterConfig" + ] + }, + { + "name": "envoy.clusters.redis", + "category": "envoy.clusters", + "type_urls": [ + "envoy.extensions.clusters.redis.v3.RedisClusterConfig" + ] + }, + { + "name": "envoy.wasm.runtime.null", + "category": "envoy.wasm.runtime" + }, + { + "name": "envoy.wasm.runtime.v8", + "category": "envoy.wasm.runtime" + }, + { + "name": "envoy.rbac.matchers.upstream_ip_port", + "category": "envoy.rbac.matchers", + "type_urls": [ + "envoy.extensions.rbac.matchers.upstream_ip_port.v3.UpstreamIpPortMatcher" + ] + }, + { + "name": "envoy.tls.cert_validator.default", + "category": "envoy.tls.cert_validator" + }, + { + "name": "envoy.tls.cert_validator.spiffe", + "category": "envoy.tls.cert_validator" + }, + { + "name": "envoy.quic.connection_id_generator.quic_lb", + "category": "envoy.quic.connection_id_generator", + "type_urls": [ + "envoy.extensions.quic.connection_id_generator.quic_lb.v3.Config" + ] + }, + { + "name": "envoy.quic.deterministic_connection_id_generator", + "category": "envoy.quic.connection_id_generator", + "type_urls": [ + "envoy.extensions.quic.connection_id_generator.v3.DeterministicConnectionIdGeneratorConfig" + ] + }, + { + "name": "envoy.buffer", + "category": "envoy.filters.http.upstream" + }, + { + "name": "envoy.ext_proc", + "category": "envoy.filters.http.upstream" + }, + { + "name": "envoy.extensions.filters.http.dynamic_modules", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilter", + "envoy.extensions.filters.http.dynamic_modules.v3.DynamicModuleFilterPerRoute" + ] + }, + { + "name": "envoy.filters.http.admission_control", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.admission_control.v3.AdmissionControl" + ] + }, + { + "name": "envoy.filters.http.aws_lambda", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.aws_lambda.v3.Config", + "envoy.extensions.filters.http.aws_lambda.v3.PerRouteConfig" + ] + }, + { + "name": "envoy.filters.http.aws_request_signing", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigning", + "envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigningPerRoute" + ] + }, + { + "name": "envoy.filters.http.buffer", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.buffer.v3.Buffer", + "envoy.extensions.filters.http.buffer.v3.BufferPerRoute" + ] + }, + { + "name": "envoy.filters.http.composite", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.composite.v3.Composite" + ] + }, + { + "name": "envoy.filters.http.credential_injector", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.credential_injector.v3.CredentialInjector" + ] + }, + { + "name": "envoy.filters.http.ext_proc", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.ext_proc.v3.ExtProcPerRoute", + "envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor" + ] + }, + { + "name": "envoy.filters.http.header_mutation", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutation", + "envoy.extensions.filters.http.header_mutation.v3.HeaderMutationPerRoute" + ] + }, + { + "name": "envoy.filters.http.lua", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.lua.v3.Lua", + "envoy.extensions.filters.http.lua.v3.LuaPerRoute" + ] + }, + { + "name": "envoy.filters.http.match_delegate", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.common.matching.v3.ExtensionWithMatcher", + "envoy.extensions.common.matching.v3.ExtensionWithMatcherPerRoute" + ] + }, + { + "name": "envoy.filters.http.upstream_codec", + "category": "envoy.filters.http.upstream", + "type_urls": [ + "envoy.extensions.filters.http.upstream_codec.v3.UpstreamCodec" + ] + }, + { + "name": "envoy.filters.http.wasm", + "category": "envoy.filters.http.upstream", + "type_urls": ["envoy.extensions.filters.http.wasm.v3.Wasm"] + }, + { + "name": "envoy.filters.thrift.header_to_metadata", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.filters.header_to_metadata.v3.HeaderToMetadata" + ] + }, + { + "name": "envoy.filters.thrift.payload_to_metadata", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.filters.payload_to_metadata.v3.PayloadToMetadata" + ] + }, + { + "name": "envoy.filters.thrift.rate_limit", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.filters.ratelimit.v3.RateLimit" + ] + }, + { + "name": "envoy.filters.thrift.router", + "category": "envoy.thrift_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.router.v3.Router" + ] + }, + { + "name": "auto", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "framed", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "header", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "unframed", + "category": "envoy.thrift_proxy.transports" + }, + { + "name": "envoy.network.dns_resolver.cares", + "category": "envoy.network.dns_resolver", + "type_urls": [ + "envoy.extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig" + ] + }, + { + "name": "envoy.network.dns_resolver.getaddrinfo", + "category": "envoy.network.dns_resolver", + "type_urls": [ + "envoy.extensions.network.dns_resolver.getaddrinfo.v3.GetAddrInfoDnsResolverConfig" + ] + }, + { + "name": "envoy.filters.listener.http_inspector", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.http_inspector.v3.HttpInspector" + ] + }, + { + "name": "envoy.filters.listener.local_ratelimit", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.local_ratelimit.v3.LocalRateLimit" + ] + }, + { + "name": "envoy.filters.listener.original_dst", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.original_dst.v3.OriginalDst" + ] + }, + { + "name": "envoy.filters.listener.original_src", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.original_src.v3.OriginalSrc" + ] + }, + { + "name": "envoy.filters.listener.proxy_protocol", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.proxy_protocol.v3.ProxyProtocol" + ] + }, + { + "name": "envoy.filters.listener.tls_inspector", + "category": "envoy.filters.listener", + "type_urls": [ + "envoy.extensions.filters.listener.tls_inspector.v3.TlsInspector" + ] + }, + { + "name": "envoy.listener.http_inspector", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.original_dst", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.original_src", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.proxy_protocol", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.listener.tls_inspector", + "category": "envoy.filters.listener" + }, + { + "name": "envoy.http.stateful_session.cookie", + "category": "envoy.http.stateful_session", + "type_urls": [ + "envoy.extensions.http.stateful_session.cookie.v3.CookieBasedSessionState" + ] + }, + { + "name": "envoy.http.stateful_session.envelope", + "category": "envoy.http.stateful_session", + "type_urls": [ + "envoy.extensions.http.stateful_session.envelope.v3.EnvelopeSessionState" + ] + }, + { + "name": "envoy.http.stateful_session.header", + "category": "envoy.http.stateful_session", + "type_urls": [ + "envoy.extensions.http.stateful_session.header.v3.HeaderBasedSessionState" + ] + }, + { + "name": "envoy.matching.inputs.application_protocol", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.ApplicationProtocolInput" + ] + }, + { + "name": "envoy.matching.inputs.destination_ip", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationIPInput" + ] + }, + { + "name": "envoy.matching.inputs.destination_port", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationPortInput" + ] + }, + { + "name": "envoy.matching.inputs.direct_source_ip", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DirectSourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.dns_san", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.DnsSanInput" + ] + }, + { + "name": "envoy.matching.inputs.filter_state", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.FilterStateInput" + ] + }, + { + "name": "envoy.matching.inputs.server_name", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.ServerNameInput" + ] + }, + { + "name": "envoy.matching.inputs.source_ip", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.source_port", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourcePortInput" + ] + }, + { + "name": "envoy.matching.inputs.source_type", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceTypeInput" + ] + }, + { + "name": "envoy.matching.inputs.subject", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.SubjectInput" + ] + }, + { + "name": "envoy.matching.inputs.transport_protocol", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.TransportProtocolInput" + ] + }, + { + "name": "envoy.matching.inputs.uri_san", + "category": "envoy.matching.network.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.UriSanInput" + ] + }, + { + "name": "envoy.string_matcher.lua", + "category": "envoy.string_matcher", + "type_urls": ["envoy.extensions.string_matcher.lua.v3.Lua"] + }, + { + "name": "envoy.filters.udp.session.dynamic_forward_proxy", + "category": "envoy.filters.udp.session", + "type_urls": [ + "envoy.extensions.filters.udp.udp_proxy.session.dynamic_forward_proxy.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.udp.session.http_capsule", + "category": "envoy.filters.udp.session", + "type_urls": [ + "envoy.extensions.filters.udp.udp_proxy.session.http_capsule.v3.FilterConfig" + ] + }, + { + "name": "envoy.resource_monitors.cgroup_memory", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.cgroup_memory.v3.CgroupMemoryConfig" + ] + }, + { + "name": "envoy.resource_monitors.cpu_utilization", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.cpu_utilization.v3.CpuUtilizationConfig" + ] + }, + { + "name": "envoy.resource_monitors.fixed_heap", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.fixed_heap.v3.FixedHeapConfig" + ] + }, + { + "name": "envoy.resource_monitors.injected_resource", + "category": "envoy.resource_monitors", + "type_urls": [ + "envoy.extensions.resource_monitors.injected_resource.v3.InjectedResourceConfig" + ] + }, + { + "name": "envoy.path.match.uri_template.uri_template_matcher", + "category": "envoy.path.match", + "type_urls": [ + "envoy.extensions.path.match.uri_template.v3.UriTemplateMatchConfig" + ] + }, + { + "name": "envoy.echo", + "category": "envoy.filters.network" + }, + { + "name": "envoy.ext_authz", + "category": "envoy.filters.network" + }, + { + "name": "envoy.filters.network.connection_limit", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.connection_limit.v3.ConnectionLimit" + ] + }, + { + "name": "envoy.filters.network.direct_response", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.direct_response.v3.Config" + ] + }, + { + "name": "envoy.filters.network.dubbo_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.dubbo_proxy.v3.DubboProxy" + ] + }, + { + "name": "envoy.filters.network.echo", + "category": "envoy.filters.network", + "type_urls": ["envoy.extensions.filters.network.echo.v3.Echo"] + }, + { + "name": "envoy.filters.network.ext_authz", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.ext_authz.v3.ExtAuthz" + ] + }, + { + "name": "envoy.filters.network.ext_proc", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.ext_proc.v3.NetworkExternalProcessor" + ] + }, + { + "name": "envoy.filters.network.generic_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.v3.GenericProxy" + ] + }, + { + "name": "envoy.filters.network.http_connection_manager", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager" + ] + }, + { + "name": "envoy.filters.network.local_ratelimit", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.local_ratelimit.v3.LocalRateLimit" + ] + }, + { + "name": "envoy.filters.network.mongo_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.mongo_proxy.v3.MongoProxy" + ] + }, + { + "name": "envoy.filters.network.ratelimit", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.ratelimit.v3.RateLimit" + ] + }, + { + "name": "envoy.filters.network.rbac", + "category": "envoy.filters.network", + "type_urls": ["envoy.extensions.filters.network.rbac.v3.RBAC"] + }, + { + "name": "envoy.filters.network.redis_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.redis_proxy.v3.RedisProxy" + ] + }, + { + "name": "envoy.filters.network.set_filter_state", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.set_filter_state.v3.Config" + ] + }, + { + "name": "envoy.filters.network.sni_cluster", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.sni_cluster.v3.SniCluster" + ] + }, + { + "name": "envoy.filters.network.sni_dynamic_forward_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.sni_dynamic_forward_proxy.v3.FilterConfig" + ] + }, + { + "name": "envoy.filters.network.tcp_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy" + ] + }, + { + "name": "envoy.filters.network.thrift_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.thrift_proxy.v3.ThriftProxy" + ] + }, + { + "name": "envoy.filters.network.wasm", + "category": "envoy.filters.network", + "type_urls": ["envoy.extensions.filters.network.wasm.v3.Wasm"] + }, + { + "name": "envoy.filters.network.zookeeper_proxy", + "category": "envoy.filters.network", + "type_urls": [ + "envoy.extensions.filters.network.zookeeper_proxy.v3.ZooKeeperProxy" + ] + }, + { + "name": "envoy.http_connection_manager", + "category": "envoy.filters.network" + }, + { + "name": "envoy.mongo_proxy", + "category": "envoy.filters.network" + }, + { + "name": "envoy.ratelimit", + "category": "envoy.filters.network" + }, + { + "name": "envoy.redis_proxy", + "category": "envoy.filters.network" + }, + { + "name": "envoy.tcp_proxy", + "category": "envoy.filters.network" + }, + { + "name": "envoy.formatter.cel", + "category": "envoy.formatter", + "type_urls": ["envoy.extensions.formatter.cel.v3.Cel"] + }, + { + "name": "envoy.formatter.metadata", + "category": "envoy.formatter", + "type_urls": ["envoy.extensions.formatter.metadata.v3.Metadata"] + }, + { + "name": "envoy.formatter.req_without_query", + "category": "envoy.formatter", + "type_urls": [ + "envoy.extensions.formatter.req_without_query.v3.ReqWithoutQuery" + ] + }, + { + "name": "envoy.http.early_header_mutation.header_mutation", + "category": "envoy.http.early_header_mutation", + "type_urls": [ + "envoy.extensions.http.early_header_mutation.header_mutation.v3.HeaderMutation" + ] + }, + { + "name": "envoy.filters.connection_pools.tcp.generic", + "category": "envoy.upstreams", + "type_urls": [ + "envoy.extensions.upstreams.tcp.generic.v3.GenericConnectionPoolProto" + ] + }, + { + "name": "envoy.regex_engines.google_re2", + "category": "envoy.regex_engines", + "type_urls": ["envoy.extensions.regex_engines.v3.GoogleRE2"] + }, + { + "name": "dubbo", + "category": "envoy.dubbo_proxy.protocols" + }, + { + "name": "envoy.health_check.event_sink.file", + "category": "envoy.health_check.event_sinks", + "type_urls": [ + "envoy.extensions.health_check.event_sinks.file.v3.HealthCheckEventFileSink" + ] + }, + { + "name": "envoy.srds_factory.default", + "category": "envoy.srds_factory" + }, + { + "name": "envoy.matching.custom_matchers.domain_matcher", + "category": "envoy.matching.http.custom_matchers", + "type_urls": ["xds.type.matcher.v3.ServerNameMatcher"] + }, + { + "name": "envoy.matching.custom_matchers.trie_matcher", + "category": "envoy.matching.http.custom_matchers", + "type_urls": ["xds.type.matcher.v3.IPMatcher"] + }, + { + "name": "envoy.config.validators.minimum_clusters", + "category": "envoy.config.validators" + }, + { + "name": "envoy.config.validators.minimum_clusters_validator", + "category": "envoy.config.validators", + "type_urls": [ + "envoy.extensions.config.validators.minimum_clusters.v3.MinimumClustersValidator" + ] + }, + { + "name": "envoy.access_loggers.file", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.file.v3.FileAccessLog" + ] + }, + { + "name": "envoy.access_loggers.fluentd", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.fluentd.v3.FluentdAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.http_grpc", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.grpc.v3.HttpGrpcAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.open_telemetry", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.open_telemetry.v3.OpenTelemetryAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.stderr", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.stream.v3.StderrAccessLog" + ] + }, + { + "name": "envoy.access_loggers.stdout", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.stream.v3.StdoutAccessLog" + ] + }, + { + "name": "envoy.access_loggers.tcp_grpc", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.grpc.v3.TcpGrpcAccessLogConfig" + ] + }, + { + "name": "envoy.access_loggers.wasm", + "category": "envoy.access_loggers", + "type_urls": [ + "envoy.extensions.access_loggers.wasm.v3.WasmAccessLog" + ] + }, + { + "name": "envoy.file_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.fluentd_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.http_grpc_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.open_telemetry_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.stderr_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.stdout_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.tcp_grpc_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.wasm_access_log", + "category": "envoy.access_loggers" + }, + { + "name": "envoy.load_balancing_policies.client_side_weighted_round_robin", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.client_side_weighted_round_robin.v3.ClientSideWeightedRoundRobin" + ] + }, + { + "name": "envoy.load_balancing_policies.cluster_provided", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.cluster_provided.v3.ClusterProvided" + ] + }, + { + "name": "envoy.load_balancing_policies.least_request", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest" + ] + }, + { + "name": "envoy.load_balancing_policies.maglev", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.maglev.v3.Maglev" + ] + }, + { + "name": "envoy.load_balancing_policies.override_host", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.override_host.v3.OverrideHost" + ] + }, + { + "name": "envoy.load_balancing_policies.random", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.random.v3.Random" + ] + }, + { + "name": "envoy.load_balancing_policies.ring_hash", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.ring_hash.v3.RingHash" + ] + }, + { + "name": "envoy.load_balancing_policies.round_robin", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.round_robin.v3.RoundRobin" + ] + }, + { + "name": "envoy.load_balancing_policies.subset", + "category": "envoy.load_balancing_policies", + "type_urls": [ + "envoy.extensions.load_balancing_policies.subset.v3.Subset" + ] + }, + { + "name": "envoy.filters.listener.original_dst.local_ip", + "category": "filter_state.object" + }, + { + "name": "envoy.filters.listener.original_dst.remote_ip", + "category": "filter_state.object" + }, + { + "name": "envoy.network.application_protocols", + "category": "filter_state.object" + }, + { + "name": "envoy.network.ip", + "category": "filter_state.object" + }, + { + "name": "envoy.network.transport_socket.original_dst_address", + "category": "filter_state.object" + }, + { + "name": "envoy.network.upstream_server_name", + "category": "filter_state.object" + }, + { + "name": "envoy.network.upstream_subject_alt_names", + "category": "filter_state.object" + }, + { + "name": "envoy.ratelimit.hits_addend", + "category": "filter_state.object" + }, + { + "name": "envoy.router.debug_config", + "category": "filter_state.object" + }, + { + "name": "envoy.string", + "category": "filter_state.object" + }, + { + "name": "envoy.tcp_proxy.cluster", + "category": "filter_state.object" + }, + { + "name": "envoy.tcp_proxy.disable_tunneling", + "category": "filter_state.object" + }, + { + "name": "envoy.tcp_proxy.per_connection_idle_timeout_ms", + "category": "filter_state.object" + }, + { + "name": "envoy.upstream.dynamic_host", + "category": "filter_state.object" + }, + { + "name": "envoy.upstream.dynamic_port", + "category": "filter_state.object" + }, + { + "name": "envoy.tracers.opentelemetry.resource_detectors.dynatrace", + "category": "envoy.tracers.opentelemetry.resource_detectors", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.resource_detectors.v3.DynatraceResourceDetectorConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.resource_detectors.environment", + "category": "envoy.tracers.opentelemetry.resource_detectors", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.resource_detectors.v3.EnvironmentResourceDetectorConfig" + ] + }, + { + "name": "envoy.tracers.opentelemetry.resource_detectors.static_config", + "category": "envoy.tracers.opentelemetry.resource_detectors", + "type_urls": [ + "envoy.extensions.tracers.opentelemetry.resource_detectors.v3.StaticConfigResourceDetectorConfig" + ] + }, + { + "name": "envoy.matching.inputs.cel_data_input", + "category": "envoy.matching.http.input", + "type_urls": ["xds.type.matcher.v3.HttpAttributesCelMatchInput"] + }, + { + "name": "envoy.matching.inputs.destination_ip", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationIPInput" + ] + }, + { + "name": "envoy.matching.inputs.destination_port", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DestinationPortInput" + ] + }, + { + "name": "envoy.matching.inputs.direct_source_ip", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DirectSourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.dns_san", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.DnsSanInput" + ] + }, + { + "name": "envoy.matching.inputs.dynamic_metadata", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.DynamicMetadataInput" + ] + }, + { + "name": "envoy.matching.inputs.filter_state", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.FilterStateInput" + ] + }, + { + "name": "envoy.matching.inputs.request_headers", + "category": "envoy.matching.http.input", + "type_urls": ["envoy.type.matcher.v3.HttpRequestHeaderMatchInput"] + }, + { + "name": "envoy.matching.inputs.request_trailers", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpRequestTrailerMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.response_headers", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseHeaderMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.response_trailers", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseTrailerMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.server_name", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.ServerNameInput" + ] + }, + { + "name": "envoy.matching.inputs.source_ip", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceIPInput" + ] + }, + { + "name": "envoy.matching.inputs.source_port", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourcePortInput" + ] + }, + { + "name": "envoy.matching.inputs.source_type", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.network.v3.SourceTypeInput" + ] + }, + { + "name": "envoy.matching.inputs.status_code_class_input", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseStatusCodeClassMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.status_code_input", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpResponseStatusCodeMatchInput" + ] + }, + { + "name": "envoy.matching.inputs.subject", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.SubjectInput" + ] + }, + { + "name": "envoy.matching.inputs.uri_san", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.extensions.matching.common_inputs.ssl.v3.UriSanInput" + ] + }, + { + "name": "query_params", + "category": "envoy.matching.http.input", + "type_urls": [ + "envoy.type.matcher.v3.HttpRequestQueryParamMatchInput" + ] + }, + { + "name": "envoy.extensions.http.custom_response.local_response_policy", + "category": "envoy.http.custom_response", + "type_urls": [ + "envoy.extensions.http.custom_response.local_response_policy.v3.LocalResponsePolicy" + ] + }, + { + "name": "envoy.extensions.http.custom_response.redirect_policy", + "category": "envoy.http.custom_response", + "type_urls": [ + "envoy.extensions.http.custom_response.redirect_policy.v3.RedirectPolicy" + ] + }, + { + "name": "quic.server_preferred_address.datasource", + "category": "envoy.quic.server_preferred_address", + "type_urls": [ + "envoy.extensions.quic.server_preferred_address.v3.DataSourceServerPreferredAddressConfig" + ] + }, + { + "name": "quic.server_preferred_address.fixed", + "category": "envoy.quic.server_preferred_address", + "type_urls": [ + "envoy.extensions.quic.server_preferred_address.v3.FixedServerPreferredAddressConfig" + ] + }, + { + "name": "envoy.matching.input_matchers.generic_request_matcher", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.matcher.v3.RequestMatcher" + ] + }, + { + "name": "envoy.matching.matchers.cel_matcher", + "category": "envoy.matching.input_matchers", + "type_urls": ["xds.type.matcher.v3.CelMatcher"] + }, + { + "name": "envoy.matching.matchers.consistent_hashing", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.matching.input_matchers.consistent_hashing.v3.ConsistentHashing" + ] + }, + { + "name": "envoy.matching.matchers.ip", + "category": "envoy.matching.input_matchers", + "type_urls": ["envoy.extensions.matching.input_matchers.ip.v3.Ip"] + }, + { + "name": "envoy.matching.matchers.metadata_matcher", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.matching.input_matchers.metadata.v3.Metadata" + ] + }, + { + "name": "envoy.matching.matchers.runtime_fraction", + "category": "envoy.matching.input_matchers", + "type_urls": [ + "envoy.extensions.matching.input_matchers.runtime_fraction.v3.RuntimeFraction" + ] + }, + { + "name": "envoy.tracers.datadog", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.DatadogConfig"] + }, + { + "name": "envoy.tracers.fluentd", + "category": "envoy.tracers", + "type_urls": ["envoy.extensions.tracers.fluentd.v3.FluentdConfig"] + }, + { + "name": "envoy.tracers.opentelemetry", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.OpenTelemetryConfig"] + }, + { + "name": "envoy.tracers.skywalking", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.SkyWalkingConfig"] + }, + { + "name": "envoy.tracers.xray", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.XRayConfig"] + }, + { + "name": "envoy.tracers.zipkin", + "category": "envoy.tracers", + "type_urls": ["envoy.config.trace.v3.ZipkinConfig"] + }, + { + "name": "envoy.zipkin", + "category": "envoy.tracers" + }, + { + "name": "auto", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "binary", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "binary/non-strict", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "compact", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "twitter", + "category": "envoy.thrift_proxy.protocols" + }, + { + "name": "envoy.http.original_ip_detection.custom_header", + "category": "envoy.http.original_ip_detection", + "type_urls": [ + "envoy.extensions.http.original_ip_detection.custom_header.v3.CustomHeaderConfig" + ] + }, + { + "name": "envoy.http.original_ip_detection.xff", + "category": "envoy.http.original_ip_detection", + "type_urls": [ + "envoy.extensions.http.original_ip_detection.xff.v3.XffConfig" + ] + }, + { + "name": "envoy.filters.udp.dns_filter", + "category": "envoy.filters.udp_listener", + "type_urls": [ + "envoy.extensions.filters.udp.dns_filter.v3.DnsFilterConfig" + ] + }, + { + "name": "envoy.filters.udp_listener.udp_proxy", + "category": "envoy.filters.udp_listener", + "type_urls": [ + "envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig" + ] + }, + { + "name": "envoy.grpc_credentials.default", + "category": "envoy.grpc_credentials" + }, + { + "name": "envoy.grpc_credentials.file_based_metadata", + "category": "envoy.grpc_credentials" + }, + { + "name": "envoy.filters.generic.router", + "category": "envoy.generic_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.router.v3.Router" + ] + }, + { + "name": "envoy.connection_handler.default", + "category": "envoy.connection_handler" + }, + { + "name": "envoy.transport_sockets.alts", + "category": "envoy.transport_sockets.upstream", + "type_urls": ["envoy.extensions.transport_sockets.alts.v3.Alts"] + }, + { + "name": "envoy.transport_sockets.http_11_proxy", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.http_11_proxy.v3.Http11ProxyUpstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.internal_upstream", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.internal_upstream.v3.InternalUpstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.quic", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.quic.v3.QuicUpstreamTransport" + ] + }, + { + "name": "envoy.transport_sockets.raw_buffer", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.raw_buffer.v3.RawBuffer" + ] + }, + { + "name": "envoy.transport_sockets.starttls", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.starttls.v3.UpstreamStartTlsConfig" + ] + }, + { + "name": "envoy.transport_sockets.tap", + "category": "envoy.transport_sockets.upstream", + "type_urls": ["envoy.extensions.transport_sockets.tap.v3.Tap"] + }, + { + "name": "envoy.transport_sockets.tcp_stats", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tcp_stats.v3.Config" + ] + }, + { + "name": "envoy.transport_sockets.tls", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext" + ] + }, + { + "name": "envoy.transport_sockets.upstream_proxy_protocol", + "category": "envoy.transport_sockets.upstream", + "type_urls": [ + "envoy.extensions.transport_sockets.proxy_protocol.v3.ProxyProtocolUpstreamTransport" + ] + }, + { + "name": "raw_buffer", + "category": "envoy.transport_sockets.upstream" + }, + { + "name": "starttls", + "category": "envoy.transport_sockets.upstream" + }, + { + "name": "tls", + "category": "envoy.transport_sockets.upstream" + }, + { + "name": "envoy.router.cluster_specifier_plugin.lua", + "category": "envoy.router.cluster_specifier_plugin", + "type_urls": [ + "envoy.extensions.router.cluster_specifiers.lua.v3.LuaConfig" + ] + }, + { + "name": "envoy.router.cluster_specifier_plugin.matcher", + "category": "envoy.router.cluster_specifier_plugin", + "type_urls": [ + "envoy.extensions.router.cluster_specifiers.matcher.v3.MatcherClusterSpecifier" + ] + }, + { + "name": "envoy.retry_priorities.previous_priorities", + "category": "envoy.retry_priorities", + "type_urls": [ + "envoy.extensions.retry.priority.previous_priorities.v3.PreviousPrioritiesConfig" + ] + }, + { + "name": "envoy.udp_packet_writer.default", + "category": "envoy.udp_packet_writer", + "type_urls": [ + "envoy.extensions.udp_packet_writer.v3.UdpDefaultWriterFactory" + ] + }, + { + "name": "envoy.udp_packet_writer.gso", + "category": "envoy.udp_packet_writer", + "type_urls": [ + "envoy.extensions.udp_packet_writer.v3.UdpGsoBatchWriterFactory" + ] + }, + { + "name": "envoy.geoip_providers.maxmind", + "category": "envoy.geoip_providers", + "type_urls": [ + "envoy.extensions.geoip_providers.maxmind.v3.MaxMindConfig" + ] + }, + { + "name": "envoy.path.rewrite.uri_template.uri_template_rewriter", + "category": "envoy.path.rewrite", + "type_urls": [ + "envoy.extensions.path.rewrite.uri_template.v3.UriTemplateRewriteConfig" + ] + }, + { + "name": "envoy.filters.dubbo.router", + "category": "envoy.dubbo_proxy.filters", + "type_urls": [ + "envoy.extensions.filters.network.dubbo_proxy.router.v3.Router" + ] + }, + { + "name": "envoy.internal_redirect_predicates.allow_listed_routes", + "category": "envoy.internal_redirect_predicates", + "type_urls": [ + "envoy.extensions.internal_redirect.allow_listed_routes.v3.AllowListedRoutesConfig" + ] + }, + { + "name": "envoy.internal_redirect_predicates.previous_routes", + "category": "envoy.internal_redirect_predicates", + "type_urls": [ + "envoy.extensions.internal_redirect.previous_routes.v3.PreviousRoutesConfig" + ] + }, + { + "name": "envoy.internal_redirect_predicates.safe_cross_scheme", + "category": "envoy.internal_redirect_predicates", + "type_urls": [ + "envoy.extensions.internal_redirect.safe_cross_scheme.v3.SafeCrossSchemeConfig" + ] + }, + { + "name": "envoy.watchdog.abort_action", + "category": "envoy.guarddog_actions", + "type_urls": ["envoy.watchdog.v3.AbortActionConfig"] + }, + { + "name": "envoy.watchdog.profile_action", + "category": "envoy.guarddog_actions", + "type_urls": [ + "envoy.extensions.watchdog.profile_action.v3.ProfileActionConfig" + ] + }, + { + "name": "envoy.rate_limit_descriptors.expr", + "category": "envoy.rate_limit_descriptors", + "type_urls": [ + "envoy.extensions.rate_limit_descriptors.expr.v3.Descriptor" + ] + }, + { + "name": "envoy.built_in_formatters.cel", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.built_in_formatters.http.default", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.built_in_formatters.metadata", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.built_in_formatters.stream_info.default", + "category": "envoy.built_in_formatters" + }, + { + "name": "envoy.generic_proxy.codecs.dubbo", + "category": "envoy.generic_proxy.codecs", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.codecs.dubbo.v3.DubboCodecConfig" + ] + }, + { + "name": "envoy.generic_proxy.codecs.http1", + "category": "envoy.generic_proxy.codecs", + "type_urls": [ + "envoy.extensions.filters.network.generic_proxy.codecs.http1.v3.Http1CodecConfig" + ] + }, + { + "name": "envoy.upstream.local_address_selector.default_local_address_selector", + "category": "envoy.upstream.local_address_selector", + "type_urls": [ + "envoy.config.upstream.local_address_selector.v3.DefaultLocalAddressSelector" + ] + }, + { + "name": "envoy.matching.custom_matchers.domain_matcher", + "category": "envoy.matching.network.custom_matchers", + "type_urls": ["xds.type.matcher.v3.ServerNameMatcher"] + }, + { + "name": "envoy.matching.custom_matchers.trie_matcher", + "category": "envoy.matching.network.custom_matchers", + "type_urls": ["xds.type.matcher.v3.IPMatcher"] + }, + { + "name": "envoy.http.stateful_header_formatters.preserve_case", + "category": "envoy.http.stateful_header_formatters", + "type_urls": [ + "envoy.extensions.http.header_formatters.preserve_case.v3.PreserveCaseFormatterConfig" + ] + }, + { + "name": "preserve_case", + "category": "envoy.http.stateful_header_formatters" + }, + { + "name": "envoy.quic.proof_source.filter_chain", + "category": "envoy.quic.proof_source", + "type_urls": [ + "envoy.extensions.quic.proof_source.v3.ProofSourceConfig" + ] + }, + { + "name": "envoy.compression.brotli.compressor", + "category": "envoy.compression.compressor", + "type_urls": [ + "envoy.extensions.compression.brotli.compressor.v3.Brotli" + ] + }, + { + "name": "envoy.compression.gzip.compressor", + "category": "envoy.compression.compressor", + "type_urls": [ + "envoy.extensions.compression.gzip.compressor.v3.Gzip" + ] + }, + { + "name": "envoy.compression.zstd.compressor", + "category": "envoy.compression.compressor", + "type_urls": [ + "envoy.extensions.compression.zstd.compressor.v3.Zstd" + ] + }, + { + "name": "envoy.ssl.server_context_factory.default", + "category": "envoy.ssl.server_context_factory" + }, + { + "name": "envoy.health_checkers.grpc", + "category": "envoy.health_checkers", + "type_urls": ["envoy.config.core.v3.HealthCheck.GrpcHealthCheck"] + }, + { + "name": "envoy.health_checkers.http", + "category": "envoy.health_checkers", + "type_urls": ["envoy.config.core.v3.HealthCheck.HttpHealthCheck"] + }, + { + "name": "envoy.health_checkers.redis", + "category": "envoy.health_checkers", + "type_urls": ["envoy.extensions.health_checkers.redis.v3.Redis"] + }, + { + "name": "envoy.health_checkers.tcp", + "category": "envoy.health_checkers", + "type_urls": ["envoy.config.core.v3.HealthCheck.TcpHealthCheck"] + }, + { + "name": "envoy.health_checkers.thrift", + "category": "envoy.health_checkers", + "type_urls": ["envoy.extensions.health_checkers.thrift.v3.Thrift"] + }, + { + "name": "envoy.quic.crypto_stream.server.quiche", + "category": "envoy.quic.server.crypto_stream", + "type_urls": [ + "envoy.extensions.quic.crypto_stream.v3.CryptoServerStreamConfig" + ] + }, + { + "name": "envoy.request_id.uuid", + "category": "envoy.request_id", + "type_urls": [ + "envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig" + ] + }, + { + "name": "envoy.http.header_validators.envoy_default", + "category": "envoy.http.header_validators", + "type_urls": [ + "envoy.extensions.http.header_validators.envoy_default.v3.HeaderValidatorConfig" + ] + }, + { + "name": "envoy.http.injected_credentials.generic", + "category": "envoy.http.injected_credentials", + "type_urls": [ + "envoy.extensions.http.injected_credentials.generic.v3.Generic" + ] + }, + { + "name": "envoy.http.injected_credentials.oauth2", + "category": "envoy.http.injected_credentials", + "type_urls": [ + "envoy.extensions.http.injected_credentials.oauth2.v3.OAuth2" + ] + }, + { + "name": "envoy.matching.actions.format_string", + "category": "envoy.matching.action", + "type_urls": ["envoy.config.core.v3.SubstitutionFormatString"] + }, + { + "name": "filter-chain-name", + "category": "envoy.matching.action", + "type_urls": ["google.protobuf.StringValue"] + }, + { + "name": "envoy.quic.connection_debug_visitor.basic", + "category": "envoy.quic.connection_debug_visitor", + "type_urls": [ + "envoy.extensions.quic.connection_debug_visitor.v3.BasicConfig" + ] + }, + { + "name": "envoy.quic.connection_debug_visitor.quic_stats", + "category": "envoy.quic.connection_debug_visitor", + "type_urls": [ + "envoy.extensions.quic.connection_debug_visitor.quic_stats.v3.Config" + ] + }, + { + "name": "envoy.extensions.http.ext_proc.save_processing_response", + "category": "envoy.http.ext_proc.response_processors", + "type_urls": [ + "envoy.extensions.http.ext_proc.response_processors.save_processing_response.v3.SaveProcessingResponse" + ] + }, + { + "name": "envoy.rbac.principals.mtls_authenticated", + "category": "envoy.rbac.principals", + "type_urls": [ + "envoy.extensions.rbac.principals.mtls_authenticated.v3.Config" + ] + }, + { + "name": "envoy.ip", + "category": "envoy.resolvers" + } + ] + }, + "static_resources": { + "listeners": [ + { + "name": "envoy-gateway-proxy-stats-0.0.0.0-19001", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 19001 + } + }, + "filter_chains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "eg-stats-http", + "route_config": { + "name": "local_route", + "virtual_hosts": [ + { + "name": "prometheus_stats", + "domains": ["*"], + "routes": [ + { + "match": { + "path": "/stats/prometheus", + "headers": [ + { + "name": ":method", + "string_match": { + "exact": "GET" + } + } + ] + }, + "route": { + "cluster": "prometheus_stats" + } + } + ] + } + ] + }, + "http_filters": [ + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router" + } + } + ], + "normalize_path": true + } + } + ] + } + ], + "bypass_overload_manager": true + } + ], + "clusters": [ + { + "name": "prometheus_stats", + "type": "STATIC", + "connect_timeout": "0.250s", + "load_assignment": { + "cluster_name": "prometheus_stats", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "127.0.0.1", + "port_value": 19000 + } + } + } + } + ] + } + ] + } + }, + { + "name": "default/eg", + "type": "EDS", + "eds_cluster_config": { + "eds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "service_name": "default/eg" + }, + "connect_timeout": "10s", + "load_balancing_policy": { + "policies": [ + { + "typed_extension_config": { + "name": "envoy.load_balancing_policies.least_request", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest", + "locality_lb_config": { + "zone_aware_lb_config": { + "min_cluster_size": "1" + } + } + } + } + } + ] + } + }, + { + "name": "xds_cluster", + "type": "STRICT_DNS", + "connect_timeout": "10s", + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext", + "common_tls_context": { + "tls_params": { + "tls_maximum_protocol_version": "TLSv1_3" + }, + "tls_certificate_sds_secret_configs": [ + { + "name": "xds_certificate", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-certificate.json" + } + } + } + ], + "validation_context_sds_secret_config": { + "name": "xds_trusted_ca", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-trusted-ca.json" + } + } + } + } + } + }, + "load_assignment": { + "cluster_name": "xds_cluster", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "envoy-gateway.envoy-gateway-system.svc.cluster.local.", + "port_value": 18000 + } + } + }, + "load_balancing_weight": 1 + } + ], + "load_balancing_weight": 1 + } + ] + }, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": { + "connection_keepalive": { + "interval": "30s", + "timeout": "5s" + } + } + } + } + } + } + ] + }, + "dynamic_resources": { + "lds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "cds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "ads_config": { + "api_type": "DELTA_GRPC", + "grpc_services": [ + { + "envoy_grpc": { + "cluster_name": "xds_cluster" + } + } + ], + "set_node_on_first_message_only": true, + "transport_api_version": "V3" + } + }, + "cluster_manager": { + "local_cluster_name": "default/eg" + }, + "admin": { + "address": { + "socket_address": { + "address": "127.0.0.1", + "port_value": 19000 + } + }, + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ] + }, + "overload_manager": { + "refresh_interval": "0.250s", + "resource_monitors": [ + { + "name": "envoy.resource_monitors.global_downstream_max_connections", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.resource_monitors.downstream_connections.v3.DownstreamConnectionsConfig", + "max_active_downstream_connections": "50000" + } + } + ] + }, + "layered_runtime": { + "layers": [ + { + "name": "global_config", + "static_layer": { + "envoy.restart_features.use_eds_cache_for_ads": true, + "re2.max_program_size.warn_level": 1000, + "re2.max_program_size.error_level": "4294967295" + } + } + ] + } + }, + "last_updated": "2025-10-09T04:27:24.355Z" + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.ClustersConfigDump", + "version_info": "32", + "static_clusters": [ + { + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "default/eg", + "type": "EDS", + "eds_cluster_config": { + "eds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "service_name": "default/eg" + }, + "connect_timeout": "10s", + "load_balancing_policy": { + "policies": [ + { + "typed_extension_config": { + "name": "envoy.load_balancing_policies.least_request", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest", + "locality_lb_config": { + "zone_aware_lb_config": { + "min_cluster_size": "1" + } + } + } + } + } + ] + } + }, + "last_updated": "2025-10-09T04:27:24.365Z" + }, + { + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "prometheus_stats", + "type": "STATIC", + "connect_timeout": "0.250s", + "load_assignment": { + "cluster_name": "prometheus_stats", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "127.0.0.1", + "port_value": 19000 + } + } + } + } + ] + } + ] + } + }, + "last_updated": "2025-10-09T04:27:24.364Z" + }, + { + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "xds_cluster", + "type": "STRICT_DNS", + "connect_timeout": "10s", + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext", + "common_tls_context": { + "tls_params": { + "tls_maximum_protocol_version": "TLSv1_3" + }, + "tls_certificate_sds_secret_configs": [ + { + "name": "xds_certificate", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-certificate.json" + } + } + } + ], + "validation_context_sds_secret_config": { + "name": "xds_trusted_ca", + "sds_config": { + "resource_api_version": "V3", + "path_config_source": { + "path": "/sds/xds-trusted-ca.json" + } + } + } + } + } + }, + "load_assignment": { + "cluster_name": "xds_cluster", + "endpoints": [ + { + "lb_endpoints": [ + { + "endpoint": { + "address": { + "socket_address": { + "address": "envoy-gateway.envoy-gateway-system.svc.cluster.local.", + "port_value": 18000 + } + } + }, + "load_balancing_weight": 1 + } + ], + "load_balancing_weight": 1 + } + ] + }, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": { + "connection_keepalive": { + "interval": "30s", + "timeout": "5s" + } + } + } + } + } + }, + "last_updated": "2025-10-09T04:27:24.364Z" + } + ], + "dynamic_active_clusters": [ + { + "version_info": "a213ca16b3c7256ea3504f356946d588e02ad8fab519f8026d1312f2262b9674", + "cluster": { + "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster", + "name": "httproute/default/backend/rule/0", + "type": "EDS", + "eds_cluster_config": { + "eds_config": { + "ads": {}, + "resource_api_version": "V3" + }, + "service_name": "httproute/default/backend/rule/0" + }, + "connect_timeout": "10s", + "per_connection_buffer_limit_bytes": 32768, + "lb_policy": "LEAST_REQUEST", + "circuit_breakers": { + "thresholds": [ + { + "max_retries": 1024 + } + ] + }, + "dns_lookup_family": "V4_ONLY", + "metadata": { + "filter_metadata": { + "envoy-gateway": { + "resources": [ + { + "name": "backend", + "namespace": "default", + "kind": "HTTPRoute" + } + ] + } + } + }, + "common_lb_config": {}, + "ignore_health_on_host_removal": true, + "load_balancing_policy": { + "policies": [ + { + "typed_extension_config": { + "name": "envoy.load_balancing_policies.least_request", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest", + "locality_lb_config": { + "locality_weighted_lb_config": {} + } + } + } + } + ] + }, + "transport_socket_matches": [ + { + "name": "httproute/default/backend/rule/0/tls/0", + "match": { + "name": "httproute/default/backend/rule/0/tls/0" + }, + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext", + "common_tls_context": { + "combined_validation_context": { + "default_validation_context": { + "match_typed_subject_alt_names": [ + { + "san_type": "DNS", + "matcher": { + "exact": "www.example.com" + } + } + ] + }, + "validation_context_sds_secret_config": { + "name": "enable-backend-tls/default-ca", + "sds_config": { + "ads": {}, + "resource_api_version": "V3" + } + } + } + }, + "sni": "www.example.com" + } + } + } + ] + }, + "last_updated": "2025-10-09T05:03:24.781Z" + } + ] + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.ListenersConfigDump", + "version_info": "14", + "static_listeners": [ + { + "listener": { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "envoy-gateway-proxy-stats-0.0.0.0-19001", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 19001 + } + }, + "filter_chains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "eg-stats-http", + "route_config": { + "name": "local_route", + "virtual_hosts": [ + { + "name": "prometheus_stats", + "domains": ["*"], + "routes": [ + { + "match": { + "path": "/stats/prometheus", + "headers": [ + { + "name": ":method", + "string_match": { + "exact": "GET" + } + } + ] + }, + "route": { + "cluster": "prometheus_stats" + } + } + ] + } + ] + }, + "http_filters": [ + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router" + } + } + ], + "normalize_path": true + } + } + ] + } + ], + "bypass_overload_manager": true + }, + "last_updated": "2025-10-09T04:27:24.367Z" + } + ], + "dynamic_listeners": [ + { + "name": "envoy-gateway-proxy-ready-0.0.0.0-19003", + "active_state": { + "version_info": "480eb87881317ebff21162f54e4a9c59c648d67a93fb17232e909ed08547e473", + "listener": { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "envoy-gateway-proxy-ready-0.0.0.0-19003", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 19003 + } + }, + "filter_chains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "eg-ready-http", + "route_config": { + "name": "ready_route", + "virtual_hosts": [ + { + "name": "ready_route", + "domains": ["*"], + "routes": [ + { + "match": { + "prefix": "/" + }, + "direct_response": { + "status": 500 + } + } + ] + } + ] + }, + "http_filters": [ + { + "name": "envoy.filters.http.health_check", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.health_check.v3.HealthCheck", + "pass_through_mode": false, + "headers": [ + { + "name": ":path", + "string_match": { + "exact": "/ready" + } + } + ] + } + }, + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router", + "suppress_envoy_headers": true + } + } + ] + } + } + ] + } + ], + "bypass_overload_manager": true + }, + "last_updated": "2025-10-09T04:27:24.393Z" + } + }, + { + "name": "default/eg/http", + "active_state": { + "version_info": "6c120184248901e0afc05f493d1b00699bc9d90108b76d5289eb213ef4b5706a", + "listener": { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "default/eg/http", + "address": { + "socket_address": { + "address": "0.0.0.0", + "port_value": 10080 + } + }, + "per_connection_buffer_limit_bytes": 32768, + "access_log": [ + { + "name": "envoy.access_loggers.file", + "filter": { + "response_flag_filter": { + "flags": ["NR"] + } + }, + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/stdout", + "log_format": { + "json_format": { + "upstream_host": "%UPSTREAM_HOST%", + "bytes_sent": "%BYTES_SENT%", + "user-agent": "%REQ(USER-AGENT)%", + "upstream_local_address": "%UPSTREAM_LOCAL_ADDRESS%", + "method": "%REQ(:METHOD)%", + "downstream_local_address": "%DOWNSTREAM_LOCAL_ADDRESS%", + "response_code_details": "%RESPONSE_CODE_DETAILS%", + "x-envoy-upstream-service-time": "%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%", + "protocol": "%PROTOCOL%", + "duration": "%DURATION%", + "downstream_remote_address": "%DOWNSTREAM_REMOTE_ADDRESS%", + "route_name": "%ROUTE_NAME%", + "start_time": "%START_TIME%", + "bytes_received": "%BYTES_RECEIVED%", + "response_flags": "%RESPONSE_FLAGS%", + ":authority": "%REQ(:AUTHORITY)%", + "upstream_cluster": "%UPSTREAM_CLUSTER%", + "connection_termination_details": "%CONNECTION_TERMINATION_DETAILS%", + "upstream_transport_failure_reason": "%UPSTREAM_TRANSPORT_FAILURE_REASON%", + "requested_server_name": "%REQUESTED_SERVER_NAME%", + "x-forwarded-for": "%REQ(X-FORWARDED-FOR)%", + "x-request-id": "%REQ(X-REQUEST-ID)%", + "x-envoy-origin-path": "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%", + "response_code": "%RESPONSE_CODE%" + } + } + } + } + ], + "default_filter_chain": { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "stat_prefix": "http-10080", + "rds": { + "config_source": { + "ads": {}, + "resource_api_version": "V3" + }, + "route_config_name": "default/eg/http" + }, + "http_filters": [ + { + "name": "envoy.filters.http.router", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router", + "suppress_envoy_headers": true + } + } + ], + "http2_protocol_options": { + "max_concurrent_streams": 100, + "initial_stream_window_size": 65536, + "initial_connection_window_size": 1048576 + }, + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/stdout", + "log_format": { + "json_format": { + "connection_termination_details": "%CONNECTION_TERMINATION_DETAILS%", + "protocol": "%PROTOCOL%", + "start_time": "%START_TIME%", + "x-envoy-origin-path": "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%", + "x-envoy-upstream-service-time": "%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%", + "bytes_sent": "%BYTES_SENT%", + "method": "%REQ(:METHOD)%", + "downstream_remote_address": "%DOWNSTREAM_REMOTE_ADDRESS%", + "bytes_received": "%BYTES_RECEIVED%", + "response_code_details": "%RESPONSE_CODE_DETAILS%", + "upstream_host": "%UPSTREAM_HOST%", + "upstream_cluster": "%UPSTREAM_CLUSTER%", + "x-request-id": "%REQ(X-REQUEST-ID)%", + "upstream_local_address": "%UPSTREAM_LOCAL_ADDRESS%", + "route_name": "%ROUTE_NAME%", + "requested_server_name": "%REQUESTED_SERVER_NAME%", + "user-agent": "%REQ(USER-AGENT)%", + "duration": "%DURATION%", + "downstream_local_address": "%DOWNSTREAM_LOCAL_ADDRESS%", + "response_code": "%RESPONSE_CODE%", + "upstream_transport_failure_reason": "%UPSTREAM_TRANSPORT_FAILURE_REASON%", + "response_flags": "%RESPONSE_FLAGS%", + "x-forwarded-for": "%REQ(X-FORWARDED-FOR)%", + ":authority": "%REQ(:AUTHORITY)%" + } + } + } + } + ], + "use_remote_address": true, + "normalize_path": true, + "merge_slashes": true, + "server_header_transformation": "PASS_THROUGH", + "common_http_protocol_options": { + "headers_with_underscores_action": "REJECT_REQUEST" + }, + "path_with_escaped_slashes_action": "UNESCAPE_AND_REDIRECT" + } + } + ], + "name": "default/eg/http" + }, + "max_connections_to_accept_per_socket_event": 1 + }, + "last_updated": "2025-10-09T04:27:24.394Z" + } + } + ] + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.ScopedRoutesConfigDump" + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.RoutesConfigDump", + "static_route_configs": [ + { + "route_config": { + "@type": "type.googleapis.com/envoy.config.route.v3.RouteConfiguration", + "name": "ready_route", + "virtual_hosts": [ + { + "name": "ready_route", + "domains": ["*"], + "routes": [ + { + "match": { + "prefix": "/" + }, + "direct_response": { + "status": 500 + } + } + ] + } + ] + }, + "last_updated": "2025-10-09T04:27:24.392Z" + }, + { + "route_config": { + "@type": "type.googleapis.com/envoy.config.route.v3.RouteConfiguration", + "name": "local_route", + "virtual_hosts": [ + { + "name": "prometheus_stats", + "domains": ["*"], + "routes": [ + { + "match": { + "path": "/stats/prometheus", + "headers": [ + { + "name": ":method", + "string_match": { + "exact": "GET" + } + } + ] + }, + "route": { + "cluster": "prometheus_stats" + } + } + ] + } + ] + }, + "last_updated": "2025-10-09T04:27:24.366Z" + } + ], + "dynamic_route_configs": [ + { + "version_info": "bc44981323d08bcb24abad6867942912675bb35bb674f2ee9ae866efbe1375dd", + "route_config": { + "@type": "type.googleapis.com/envoy.config.route.v3.RouteConfiguration", + "name": "default/eg/http", + "virtual_hosts": [ + { + "name": "default/eg/http/www_example_com", + "domains": ["www.example.com"], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "httproute/default/backend/rule/0", + "upgrade_configs": [ + { + "upgrade_type": "websocket" + } + ] + }, + "metadata": { + "filter_metadata": { + "envoy-gateway": { + "resources": [ + { + "namespace": "default", + "name": "backend", + "kind": "HTTPRoute" + } + ] + } + } + }, + "name": "httproute/default/backend/rule/0/match/0/www_example_com" + } + ], + "metadata": { + "filter_metadata": { + "envoy-gateway": { + "resources": [ + { + "name": "eg", + "kind": "Gateway", + "namespace": "default", + "sectionName": "http" + } + ] + } + } + } + } + ], + "ignore_port_in_host_matching": true + }, + "last_updated": "2025-10-09T04:49:49.233Z" + } + ] + }, + { + "@type": "type.googleapis.com/envoy.admin.v3.SecretsConfigDump", + "dynamic_active_secrets": [ + { + "name": "xds_certificate", + "last_updated": "2025-10-09T04:27:24.371Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "xds_certificate", + "tls_certificate": { + "certificate_chain": { + "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURLekNDQWhPZ0F3SUJBZ0lFSEsycTVqQU5CZ2txaGtpRzl3MEJBUXNGQURBc01SWXdGQVlEVlFRREV3MWwKYm5admVTMW5ZWFJsZDJGNU1SSXdFQVlEVlFRRkV3azVOalExTnpZd056Y3dIaGNOTWpVeE1EQTNNakF6T0RVegpXaGNOTXpBeE1EQTNNakF6T0RVeFdqQU1NUW93Q0FZRFZRUUREQUVxTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGCkFBT0NBUThBTUlJQkNnS0NBUUVBcW50TVVNNm5kYnJuOGdlSS85SVErR2JHbjkvMDFzS1hLbFl2SlI4eEhRRlAKNjJDZ1ZJNGIxZmdKbmRsU2ZqNUxBTGF6QVY3cU8rZFRDUmhmY3BYVWlPQ3NjdVQrNWpvMUpFTVp5UUgvc2J6VgpYN1hYR1BBOUViYjdxQ1l4VU5OM0ZJSnFteWg1L3NZNHJmSEdmaiszZWxrMlVDQlRiRGkrdncrNWVmU082N1hoCjh5RDZMZnVVUG5aWHF1RUNuTlNsMVFDVFQ2NVpwYWhzQTRYSmJRS0FQMzlMQzMwSXoveDNjM0FmZ0JHQmdDdm8KNEtIcVl2WC9oS1RzMlU1V1ZodStCTVJtUDJJMmNlZHUzNXVMNmpLWFVWak0vUTR6VlduUDJDVkZCYm9yZUtXaApsZXhwNmRaa2NYNTV0NjlJZ3Zxem84cmdTODlvZ3J6Lzd2WWtRWDFIN3dJREFRQUJvM1V3Y3pBT0JnTlZIUThCCkFmOEVCQU1DQlBBd0hRWURWUjBPQkJZRUZDWEVKa2laYzh0R3EwYzJYQ01jTGFTYlUwdXJNQjhHQTFVZEl3UVkKTUJhQUZBUjl1T1FKdkVVZkhWdkRNcWVuKzF2S1ArZ09NQ0VHQTFVZEVRUWFNQmlDRmlvdVpXNTJiM2t0WjJGMApaWGRoZVMxemVYTjBaVzB3RFFZSktvWklodmNOQVFFTEJRQURnZ0VCQUxIc3dxTEJyOFM3OGFSYjRCa2h6Tk92CklLZzV5bllGUSt5ZytxODRmUlczWmZzUXJPRU9ZQTVRMEs1R1lhbWx2RUNDREpZeEwwYnVndmFHbkFnaldleEEKTFVJVFBReWErSDYybnZBeVBFbVZ0UEpEU0Z0ekFoL29LTHdqN25qRk45L1ExZzJTVk9TaHhsQ2xQWXlSTTlwTQpneGc4U2ZWSzN2c0hkb0ZBNXhPUzNTNVpCSDNjakJOVE03eHpscm54c1BZeVBwUEhQUG1SbXdtSmRUZWZaL2pKCk44Wkp2NTFQU0JCQnlQUEhyQkVscGVzcDMzQ0F0cWk3OFdSLzMwMmI0V3ZtWWZjRmRaT0dQWk0yYzNDM0prYTkKejkrTmhVcDErRFJqWWJXbmVjczEzZEdMKzd4TjZZUGlIVHhXZkhrZTVHazFXWldWSXdSZ2E0QkRRUDdDR2l3PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + }, + "private_key": { + "inline_bytes": "W3JlZGFjdGVkXQ==" + } + } + } + }, + { + "name": "enable-backend-tls/default-ca", + "version_info": "4c03e110dd30c78748f7fb429bd12747dd862e7566d94953591f560b745b11d9", + "last_updated": "2025-10-09T04:49:49.237Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "enable-backend-tls/default-ca", + "validation_context": { + "trusted_ca": { + "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURPekNDQWlPZ0F3SUJBZ0lVWXBVR3ZmWVR1V3ZDQmI2ZGY1OEgwYlBkdTI4d0RRWUpLb1pJaHZjTkFRRUwKQlFBd0xURVZNQk1HQTFVRUNnd01aWGhoYlhCc1pTQkpibU11TVJRd0VnWURWUVFEREF0bGVHRnRjR3hsTG1OdgpiVEFlRncweU5URXdNRGd5TURReU5USmFGdzB5TmpFd01EZ3lNRFF5TlRKYU1DMHhGVEFUQmdOVkJBb01ER1Y0CllXMXdiR1VnU1c1akxqRVVNQklHQTFVRUF3d0xaWGhoYlhCc1pTNWpiMjB3Z2dFaU1BMEdDU3FHU0liM0RRRUIKQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURIR2xkUXdzRTE2QkZocXB2eWZKOEkrQ25UOFpEZFNNT3ZUNm1WQUlmYgpIaHY1WHZXUm4zdUlpSjB6YmJ6dWpMVmpyTGt3RFRkWmViaWszYzdNWTIwS1k3eW53SXkyV3hRcktFbytXd3ZlClJIUTdld0FYRVNoemRLeXpCcHZiSWp3V1ZnWXcyRFV0RUY3clF3clQrSGtlTUFPS214d3RCcHRQZWRwNncxQy8KYlgxRTZEclNIRUFRd3JaWDl3Y3UyWitMdDlxU3hHUk9VSys0T1RFbUhMaUllMGI3SWMxanIyZ2hSSVlwL2ZnQwptOExpZk95V25nRURXaS9hSllKUDBEalRjQjlxWWZYK1pCaDVMZGdBSTBXalorM1RtZUw4b05qTWIvcU4zcGlOCnhkMCtiZ28zS09qcERGdFFBai9mcEVZRUF3VFY0Ymh2VWZJajJwZ1g2MkRKQWdNQkFBR2pVekJSTUIwR0ExVWQKRGdRV0JCUmcyR2dKTG5YcU1Fb2dvbzZCRVU0UDhtR0dhekFmQmdOVkhTTUVHREFXZ0JSZzJHZ0pMblhxTUVvZwpvbzZCRVU0UDhtR0dhekFQQmdOVkhSTUJBZjhFQlRBREFRSC9NQTBHQ1NxR1NJYjNEUUVCQ3dVQUE0SUJBUUJuCkpsZlYrZC9mUEVCTk5IUzhNcEU5SWdORFk2SFNwL2VzaTdmVlk4U21Oc3BGMllOY29lcDdFNFB0VnFsMGZFKzAKRTJWVS92TzNkY2JYVWo5QjZEaVBBOCtwS2VDZUQxQ2c4T1hvaHFOSXdmeDRMckczMW55KzRqV2RrcjAzcUhqQwpwK3N5VFcxbHRScUpLbGRZMkRZVkFVNTJKUlpZRTlZVVd3Tm5ldU5KU2tZR01NV0htVUlGek15YUlOYWNxMytFCnpqMmJPK3R5VVVUTW1VL21LUXR1ZHRtU3dqam10MGp5T2lQRUNTUmhhTmY5WDE0QkdvRTI0MFk4Yll0L0tsbTUKUnNGTEdEV3dsTjVQTUxZWXpxcjFISkVoOWJ2UG5LQ0VhaXRHMVNDRlZYN2RUVlkvVkpVaUQ2aDJPSFM0RVR6agpXYmZiaE1ZWkFYcVVDbVJHbk5MVwotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + } + } + } + }, + { + "name": "xds_trusted_ca", + "last_updated": "2025-10-09T04:27:24.371Z", + "secret": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret", + "name": "xds_trusted_ca", + "validation_context": { + "trusted_ca": { + "inline_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURHRENDQWdDZ0F3SUJBZ0lFT1g1RFRUQU5CZ2txaGtpRzl3MEJBUXNGQURBc01SWXdGQVlEVlFRREV3MWwKYm5admVTMW5ZWFJsZDJGNU1SSXdFQVlEVlFRRkV3azVOalExTnpZd056Y3dIaGNOTWpVeE1EQTNNakF6T0RVeQpXaGNOTXpBeE1EQTNNakF6T0RVeFdqQXNNUll3RkFZRFZRUURFdzFsYm5admVTMW5ZWFJsZDJGNU1SSXdFQVlEClZRUUZFd2s1TmpRMU56WXdOemN3Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRRFQKWTdhSCtKYkorcU1aU1F0RU53L0w0eTVDS3lDc0hUVHVqeVZiWDJ4ZWlBdEhtN29TZGc1SEtWZzVlTHpQaUhReApOSm9KNXRLZkF2ZlVlQ0NOR0ZPRHAyTjNMRmROK3VLdFN5cjlQYUl3b08zb1gybHhnSTFncUNVc2ZQZVF2TXNJCjlrazg5R080UlZFaXlqa3FOaDR5U1dpekFSQ2xjNDlTQ2Faa3pnSjdIZ1ZsalJkL2tZYWNER2dHcGtSSFBJanQKZ05YeGFZNS9USm1tT2xLbllQaFZpRWcxdFhNQzZTQVVVUlVYc2lpK2hZbTZHaCszSzF4MjBRaHpoSXltN2xuawp5SHZpcXFJTE9LTGhpRWVWQVZjNkxyWWRHNUlNYjVBVjNPSyt3VHVHOHFlTHkvSytUS0ZFUzZXMlA0VmtsQjFhCjh2dG5QQ2FFclQ4SzdjazR5aWFaQWdNQkFBR2pRakJBTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQQmdOVkhSTUIKQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJRRWZiamtDYnhGSHgxYnd6S25wL3RieWovb0RqQU5CZ2txaGtpRwo5dzBCQVFzRkFBT0NBUUVBaTJNcmoyTmJnQ0R1M0Q4WXBrb21JZHdMd2M1UFF4QnJyL0xxR0diemFaSWZrcS83CmR0VjNsdHFqV3VZYUwxMDNPZlRURWlpUmpkL2E1akcvN2FhaVBYLzFFaEgyM0p3Y1hrWjdib3FERjRMc3ZqelEKS3Y5QzRJVVB5QXEvT1llSFphQ3hVZE0rZzBwMzRaVFI3TVRRVDIvaWhkeWZCdUFSMFNkZEhRRk05UFYwNThhagpJUURTSmFKd2FvNnpoTnJXQkNVQk1qWjJLcVRxSFN1Yms3eDh3aUZ5RFRNT0RsWHRqRGxJYXlKMVdaNnlySlNjClB1Q2xPTDV1cWp3QXQ4Q29VUVh1bUwvMW9XV2ZXYkZycWpBK0Z4VXc1Z05zUHJRUWhqTGpMRkNsdk1EYUlaK3UKbXhYa0FnbExrK0QxSHpha0lpR3QwdUxYY0RxcFlEWHlPM1RvT2c9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + }, + "match_typed_subject_alt_names": [ + { + "san_type": "DNS", + "matcher": { + "exact": "envoy-gateway" + } + } + ] + } + } + } + ] + } + ] +} diff --git a/examples/extension-server/go.mod b/examples/extension-server/go.mod index be4d498667d..a6ed253c540 100644 --- a/examples/extension-server/go.mod +++ b/examples/extension-server/go.mod @@ -3,13 +3,13 @@ module github.com/exampleorg/envoygateway-extension go 1.24.7 require ( - github.com/envoyproxy/gateway v1.3.1 - github.com/envoyproxy/go-control-plane v0.13.5-0.20250929230642-07d3df27ff4f + github.com/envoyproxy/gateway v1.5.2 github.com/envoyproxy/go-control-plane/envoy v1.35.1-0.20250929230642-07d3df27ff4f github.com/urfave/cli/v2 v2.27.7 google.golang.org/grpc v1.75.1 google.golang.org/protobuf v1.36.10 k8s.io/apimachinery v0.34.1 + k8s.io/client-go v0.34.1 sigs.k8s.io/controller-runtime v0.22.1 sigs.k8s.io/gateway-api v1.3.1-0.20250527223622-54df0a899c1c ) @@ -18,6 +18,8 @@ require ( cel.dev/expr v0.24.0 // indirect github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.7 // indirect + github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect + github.com/emicklei/go-restful/v3 v3.12.2 // indirect github.com/envoyproxy/protoc-gen-validate v1.2.1 // indirect github.com/fatih/color v1.18.0 // indirect github.com/fxamacker/cbor/v2 v2.9.0 // indirect @@ -25,9 +27,12 @@ require ( github.com/go-openapi/jsonpointer v0.22.1 // indirect github.com/go-openapi/jsonreference v0.21.2 // indirect github.com/go-openapi/swag v0.23.1 // indirect + github.com/go-openapi/swag/jsonname v0.25.1 // indirect github.com/gobuffalo/flect v1.0.3 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/google/gnostic-models v0.7.0 // indirect + github.com/google/pprof v0.0.0-20250607225305-033d6d78b36a // indirect + github.com/google/uuid v1.6.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect @@ -36,6 +41,7 @@ require ( github.com/mattn/go-isatty v0.0.20 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect + github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/onsi/ginkgo/v2 v2.24.0 // indirect github.com/onsi/gomega v1.38.0 // indirect github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect @@ -48,9 +54,12 @@ require ( go.yaml.in/yaml/v3 v3.0.4 // indirect golang.org/x/mod v0.28.0 // indirect golang.org/x/net v0.44.0 // indirect + golang.org/x/oauth2 v0.30.0 // indirect golang.org/x/sync v0.17.0 // indirect golang.org/x/sys v0.36.0 // indirect + golang.org/x/term v0.35.0 // indirect golang.org/x/text v0.29.0 // indirect + golang.org/x/time v0.12.0 // indirect golang.org/x/tools v0.36.0 // indirect golang.org/x/tools/go/expect v0.1.1-deprecated // indirect golang.org/x/tools/go/packages/packagestest v0.1.1-deprecated // indirect @@ -73,6 +82,4 @@ require ( sigs.k8s.io/yaml v1.6.0 // indirect ) -replace github.com/envoyproxy/gateway => ../../ - tool sigs.k8s.io/controller-tools/cmd/controller-gen diff --git a/examples/extension-server/go.sum b/examples/extension-server/go.sum index d8c96613ffa..a189af7085d 100644 --- a/examples/extension-server/go.sum +++ b/examples/extension-server/go.sum @@ -3,6 +3,10 @@ cel.dev/expr v0.24.0/go.mod h1:hLPLo1W4QUmuYdA72RBX06QTs6MXw941piREPl3Yfiw= github.com/Masterminds/semver v1.5.0 h1:H65muMkzWKEuNDnfl9d70GUjFniHKHRbFPGBuZ3QEww= github.com/Masterminds/semver/v3 v3.4.0 h1:Zog+i5UMtVoCU8oKka5P7i9q9HgrJeGzI9SA1Xbatp0= github.com/Masterminds/semver/v3 v3.4.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM= +github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= +github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= +github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443 h1:aQ3y1lwWyqYPiWZThqv1aFbZMiM9vblcSArJRf2Irls= github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443/go.mod h1:W+zGtBO5Y1IgJhy4+A9GOqVhqLpfZi+vwmdNXUehLA8= github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= @@ -12,12 +16,17 @@ github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSs github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/envoyproxy/go-control-plane v0.13.5-0.20250929230642-07d3df27ff4f h1:36vvJBe/wXWfD7qrTb1WnbPVPMxNFDfEygztH8wgebw= -github.com/envoyproxy/go-control-plane v0.13.5-0.20250929230642-07d3df27ff4f/go.mod h1:PTY7yDlLxB4bW7rEOO7e79uTDr9yXzpuI1QGIDfxEzc= +github.com/emicklei/go-restful/v3 v3.12.2 h1:DhwDP0vY3k8ZzE0RunuJy8GhNpPL6zqLkDf9B/a0/xU= +github.com/emicklei/go-restful/v3 v3.12.2/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= +github.com/envoyproxy/gateway v1.5.2 h1:YpxIfvFRHtIC4fPKPHta0ofVOY2iaO7+Q3CFUdG5xEw= +github.com/envoyproxy/gateway v1.5.2/go.mod h1:a1Q2c/Ab61TQ4xUSS2E5wWL7Xx+HRTxEA0yqPaqUWWI= github.com/envoyproxy/go-control-plane/envoy v1.35.1-0.20250929230642-07d3df27ff4f h1:4efYrIQgVRwCmwCveby6ck+VpxqzibdOL1Out1rJqqc= github.com/envoyproxy/go-control-plane/envoy v1.35.1-0.20250929230642-07d3df27ff4f/go.mod h1:2LcmvJoXsDSrsGZIxGM0Gah9ykiwTn/kgjyQdnNH8Jc= github.com/envoyproxy/protoc-gen-validate v1.2.1 h1:DEo3O99U8j4hBFwbJfrz9VtgcDfUKS7KJ7spH3d86P8= github.com/envoyproxy/protoc-gen-validate v1.2.1/go.mod h1:d/C80l/jxXLdfEIhX1W2TmLfsJ31lvEjwamM4DxlWXU= +github.com/evanphx/json-patch v5.9.11+incompatible h1:ixHHqfcGvxhWkniF1tWxBHA0yb4Z+d1UQi45df52xW8= +github.com/evanphx/json-patch/v5 v5.9.11 h1:/8HVnzMq13/3x9TPvjG08wUGqBTmZBsCWzjTM0wiaDU= +github.com/evanphx/json-patch/v5 v5.9.11/go.mod h1:3j+LviiESTElxA4p3EMKAB9HXj3/XEtnUf6OZxqIQTM= github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM= github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU= github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k= @@ -28,14 +37,16 @@ github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI= github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= -github.com/go-openapi/jsonpointer v0.21.2 h1:AqQaNADVwq/VnkCmQg6ogE+M3FOsKTytwges0JdwVuA= -github.com/go-openapi/jsonpointer v0.21.2/go.mod h1:50I1STOfbY1ycR8jGz8DaMeLCdXiI6aDteEdRNNzpdk= +github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ= +github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg= +github.com/go-openapi/jsonpointer v0.22.1 h1:sHYI1He3b9NqJ4wXLoJDKmUmHkWy/L7rtEo92JUxBNk= github.com/go-openapi/jsonpointer v0.22.1/go.mod h1:pQT9OsLkfz1yWoMgYFy4x3U5GY5nUlsOn1qSBH5MkCM= -github.com/go-openapi/jsonreference v0.21.0 h1:Rs+Y7hSXT83Jacb7kFyjn4ijOuVGSvOdF2+tg1TRrwQ= -github.com/go-openapi/jsonreference v0.21.0/go.mod h1:LmZmgsrTkVg9LG4EaHeY8cBDslNPMo06cago5JNLkm4= +github.com/go-openapi/jsonreference v0.21.2 h1:Wxjda4M/BBQllegefXrY/9aq1fxBA8sI5M/lFU6tSWU= github.com/go-openapi/jsonreference v0.21.2/go.mod h1:pp3PEjIsJ9CZDGCNOyXIQxsNuroxm8FAJ/+quA0yKzQ= github.com/go-openapi/swag v0.23.1 h1:lpsStH0n2ittzTnbaSloVZLuB5+fvSY/+hnagBjSNZU= github.com/go-openapi/swag v0.23.1/go.mod h1:STZs8TbRvEQQKUA+JZNAm3EWlgaOBGpyFDqQnDHMef0= +github.com/go-openapi/swag/jsonname v0.25.1 h1:Sgx+qbwa4ej6AomWC6pEfXrA6uP2RkaNjA9BR8a1RJU= +github.com/go-openapi/swag/jsonname v0.25.1/go.mod h1:71Tekow6UOLBD3wS7XhdT98g5J5GR13NOTQ9/6Q11Zo= github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= github.com/gobuffalo/flect v1.0.3 h1:xeWBM2nui+qnVvNM4S3foBhCAL2XgPU+a7FdpelbTq4= @@ -77,6 +88,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8= github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= @@ -85,13 +98,23 @@ github.com/onsi/ginkgo/v2 v2.24.0 h1:obZz8LAnHicNdbBqvG3ytAFx8fgza+i1IDpBVcHT2YE github.com/onsi/ginkgo/v2 v2.24.0/go.mod h1:ppTWQ1dh9KM/F1XgpeRqelR+zHVwV81DGRSDnFxK7Sk= github.com/onsi/gomega v1.38.0 h1:c/WX+w8SLAinvuKKQFh77WEucCnPk4j2OTUr7lt7BeY= github.com/onsi/gomega v1.38.0/go.mod h1:OcXcwId0b9QsE7Y49u+BTrL4IdKOBOKnD6VQNTJEB6o= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 h1:GFCKgmp0tecUJ0sJuv4pzYCqS9+RGSn52M3FUwPs+uo= github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10/go.mod h1:t/avpk3KcrXxUnYOhZhMXJlSEyie6gQbtLq5NM3loB8= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= -github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= +github.com/prometheus/client_golang v1.23.0 h1:ust4zpdl9r4trLY/gSjlm07PuiBq2ynaXXlptpfy8Uc= +github.com/prometheus/client_golang v1.23.0/go.mod h1:i/o0R9ByOnHX0McrTMTyhYvKE4haaf2mW08I+jGAjEE= +github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNwqPLxwZyk= +github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE= +github.com/prometheus/common v0.65.0 h1:QDwzd+G1twt//Kwj/Ww6E9FQq1iVMmODnILtW1t2VzE= +github.com/prometheus/common v0.65.0/go.mod h1:0gZns+BLRQ3V6NdaerOhMbwwRbNh9hkGINtQAsP5GS8= +github.com/prometheus/procfs v0.17.0 h1:FuLQ+05u4ZI+SS/w9+BWEM2TXiHKsUQ9TADiRH7DuK0= +github.com/prometheus/procfs v0.17.0/go.mod h1:oPQLaDAMRbA+u8H5Pbfq+dl3VDAvHxMUOVhe0wYB2zw= +github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ= +github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/spf13/cobra v1.10.1 h1:lJeBwCfmrnXthfAupyUTzJ/J4Nc1RsHC/mSRU2dll/s= @@ -102,6 +125,8 @@ github.com/spf13/pflag v1.0.10/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3A github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= @@ -118,18 +143,22 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= -go.opentelemetry.io/otel v1.38.0 h1:RkfdswUDRimDg0m2Az18RKOsnI8UDzppJAtj01/Ymk8= -go.opentelemetry.io/otel v1.38.0/go.mod h1:zcmtmQ1+YmQM9wrNsTGV/q/uyusom3P8RxwExxkZhjM= -go.opentelemetry.io/otel/metric v1.38.0 h1:Kl6lzIYGAh5M159u9NgiRkmoMKjvbsKtYRwgfrA6WpA= -go.opentelemetry.io/otel/metric v1.38.0/go.mod h1:kB5n/QoRM8YwmUahxvI3bO34eVtQf2i4utNVLr9gEmI= -go.opentelemetry.io/otel/sdk v1.38.0 h1:l48sr5YbNf2hpCUj/FoGhW9yDkl+Ma+LrVl8qaM5b+E= -go.opentelemetry.io/otel/sdk v1.38.0/go.mod h1:ghmNdGlVemJI3+ZB5iDEuk4bWA3GkTpW+DOoZMYBVVg= -go.opentelemetry.io/otel/sdk/metric v1.38.0 h1:aSH66iL0aZqo//xXzQLYozmWrXxyFkBJ6qT5wthqPoM= -go.opentelemetry.io/otel/sdk/metric v1.38.0/go.mod h1:dg9PBnW9XdQ1Hd6ZnRz689CbtrUp0wMMs9iPcgT9EZA= -go.opentelemetry.io/otel/trace v1.38.0 h1:Fxk5bKrDZJUH+AMyyIXGcFAPah0oRcT+LuNtJrmcNLE= -go.opentelemetry.io/otel/trace v1.38.0/go.mod h1:j1P9ivuFsTceSWe1oY+EeW3sc+Pp42sO++GHkg4wwhs= +go.opentelemetry.io/otel v1.37.0 h1:9zhNfelUvx0KBfu/gb+ZgeAfAgtWrfHJZcAqFC228wQ= +go.opentelemetry.io/otel v1.37.0/go.mod h1:ehE/umFRLnuLa/vSccNq9oS1ErUlkkK71gMcN34UG8I= +go.opentelemetry.io/otel/metric v1.37.0 h1:mvwbQS5m0tbmqML4NqK+e3aDiO02vsf/WgbsdpcPoZE= +go.opentelemetry.io/otel/metric v1.37.0/go.mod h1:04wGrZurHYKOc+RKeye86GwKiTb9FKm1WHtO+4EVr2E= +go.opentelemetry.io/otel/sdk v1.37.0 h1:ItB0QUqnjesGRvNcmAcU0LyvkVyGJ2xftD29bWdDvKI= +go.opentelemetry.io/otel/sdk v1.37.0/go.mod h1:VredYzxUvuo2q3WRcDnKDjbdvmO0sCzOvVAiY+yUkAg= +go.opentelemetry.io/otel/sdk/metric v1.37.0 h1:90lI228XrB9jCMuSdA0673aubgRobVZFhbjxHHspCPc= +go.opentelemetry.io/otel/sdk/metric v1.37.0/go.mod h1:cNen4ZWfiD37l5NhS+Keb5RXVWZWpRE+9WyVCpbo5ps= +go.opentelemetry.io/otel/trace v1.37.0 h1:HLdcFNbRQBE2imdSEgm/kwqmQj1Or1l/7bW6mxVK7z4= +go.opentelemetry.io/otel/trace v1.37.0/go.mod h1:TlgrlQ+PtQO5XFerSPUYG0JSgGyryXewPGyayAWSBS0= go.uber.org/automaxprocs v1.6.0 h1:O3y2/QNTOdbF+e/dpXNNW7Rx2hZ4sTIPyybbxyNqTUs= go.uber.org/automaxprocs v1.6.0/go.mod h1:ifeIMSnPZuznNm6jmdzmU3/bfk01Fe2fotchwEFJ8r8= +go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= +go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= +go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8= +go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= go.yaml.in/yaml/v2 v2.4.2 h1:DzmwEr2rDGHl7lsFgAHxmNz/1NlQ7xLIrlN2h5d1eGI= go.yaml.in/yaml/v2 v2.4.2/go.mod h1:081UH+NErpNdqlCXm3TtEran0rJZGxAYx9hb/ELlsPU= go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc= @@ -139,8 +168,7 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.27.0 h1:kb+q2PyFnEADO2IEF935ehFUXlWiNjJWtRNgBLSfbxQ= -golang.org/x/mod v0.27.0/go.mod h1:rWI627Fq0DEoudcK+MBkNkCe0EetEaDSwJJkCcjpazc= +golang.org/x/mod v0.28.0 h1:gQBtGhjxykdjY9YhZpSlZIsbnaE2+PgjfLWUQTnoZ1U= golang.org/x/mod v0.28.0/go.mod h1:yfB/L0NOf/kmEbXjzCPOx1iK1fRutOydrCMsqRhEBxI= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -148,6 +176,8 @@ golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.44.0 h1:evd8IRDyfNBMBTTY5XRF1vaZlD+EmWx6x8PkhR04H/I= golang.org/x/net v0.44.0/go.mod h1:ECOoLqd5U3Lhyeyo/QDCEVQ4sNgYsqvCZ722XogGieY= +golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI= +golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -159,10 +189,14 @@ golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k= golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= +golang.org/x/term v0.35.0 h1:bZBVKBudEyhRcajGcNc3jIfWPqV4y/Kt2XcoigOWtDQ= +golang.org/x/term v0.35.0/go.mod h1:TPGtkTLesOwf2DE8CgVYiZinHAOuy5AYUYT1lENIZnA= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk= golang.org/x/text v0.29.0/go.mod h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4= +golang.org/x/time v0.12.0 h1:ScB/8o8olJvc+CQPWrK3fPZNfh7qgwCrY0zJmoEQLSE= +golang.org/x/time v0.12.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= @@ -190,6 +224,8 @@ google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/evanphx/json-patch.v4 v4.12.0 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4= +gopkg.in/evanphx/json-patch.v4 v4.12.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= @@ -205,6 +241,8 @@ k8s.io/apiextensions-apiserver v0.34.1 h1:NNPBva8FNAPt1iSVwIE0FsdrVriRXMsaWFMqJb k8s.io/apiextensions-apiserver v0.34.1/go.mod h1:hP9Rld3zF5Ay2Of3BeEpLAToP+l4s5UlxiHfqRaRcMc= k8s.io/apimachinery v0.34.1 h1:dTlxFls/eikpJxmAC7MVE8oOeP1zryV7iRyIjB0gky4= k8s.io/apimachinery v0.34.1/go.mod h1:/GwIlEcWuTX9zKIg2mbw0LRFIsXwrfoVxn+ef0X13lw= +k8s.io/client-go v0.34.1 h1:ZUPJKgXsnKwVwmKKdPfw4tB58+7/Ik3CrjOEhsiZ7mY= +k8s.io/client-go v0.34.1/go.mod h1:kA8v0FP+tk6sZA0yKLRG67LWjqufAoSHA2xVGKw9Of8= k8s.io/code-generator v0.34.1 h1:WpphT26E+j7tEgIUfFr5WfbJrktCGzB3JoJH9149xYc= k8s.io/code-generator v0.34.1/go.mod h1:DeWjekbDnJWRwpw3s0Jat87c+e0TgkxoR4ar608yqvg= k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f h1:SLb+kxmzfA87x4E4brQzB33VBbT2+x7Zq9ROIHmGn9Q= diff --git a/examples/extension-server/internal/extensionserver/htpasswd.go b/examples/extension-server/internal/extensionserver/htpasswd.go deleted file mode 100644 index 0e43c755320..00000000000 --- a/examples/extension-server/internal/extensionserver/htpasswd.go +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright Envoy Gateway Authors -// SPDX-License-Identifier: Apache-2.0 -// The full text of the Apache license is available in the LICENSE file at -// the root of the repo. - -package extensionserver - -import ( - "crypto/sha1" - "encoding/base64" - "fmt" - "io" - "strings" -) - -type htpasswd struct { - Users map[string]string -} - -func NewHtpasswd() htpasswd { - return htpasswd{ - Users: map[string]string{}, - } -} - -func (h *htpasswd) AddUser(user, password string) { - s := sha1.New() - io.WriteString(s, password) - h.Users[user] = fmt.Sprintf("{SHA}%s", base64.StdEncoding.EncodeToString(s.Sum(nil))) -} - -func (h *htpasswd) String() string { - var b strings.Builder - for user, password := range h.Users { - b.WriteString(fmt.Sprintf("%s:%s\n", user, password)) - } - return b.String() -} diff --git a/examples/extension-server/internal/extensionserver/post_cluster_modify.go b/examples/extension-server/internal/extensionserver/post_cluster_modify.go deleted file mode 100644 index 93c07d999d0..00000000000 --- a/examples/extension-server/internal/extensionserver/post_cluster_modify.go +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright Envoy Gateway Authors -// SPDX-License-Identifier: Apache-2.0 -// The full text of the Apache license is available in the LICENSE file at -// the root of the repo. - -package extensionserver - -import ( - "context" - "encoding/json" - "log/slog" - - clusterv3 "github.com/envoyproxy/go-control-plane/envoy/config/cluster/v3" - "google.golang.org/protobuf/types/known/durationpb" - inferencev1alpha2 "sigs.k8s.io/gateway-api-inference-extension/api/v1alpha2" - - pb "github.com/envoyproxy/gateway/proto/extension" -) - -// PostClusterModify is called after Envoy Gateway is done generating -// a Cluster xDS configuration and before that configuration is passed on to -// Envoy Proxy. -// This implementation modifies the cluster for InferencePool custom backends. -func (s *Server) PostClusterModify(ctx context.Context, req *pb.PostClusterModifyRequest) (*pb.PostClusterModifyResponse, error) { - s.log.Info("postClusterModify callback was invoked", slog.String("cluster_name", req.Cluster.Name)) - - // Parse extension resources to find InferencePool configurations - var inferencePoolConfigs []*inferencev1alpha2.InferencePool - for _, ext := range req.PostClusterContext.BackendExtensionResources { - // Parse the JSON to check the kind and apiVersion - var resourceInfo map[string]interface{} - if err := json.Unmarshal(ext.GetUnstructuredBytes(), &resourceInfo); err != nil { - s.log.Error("failed to unmarshal extension resource", slog.String("error", err.Error())) - continue - } - - kind, _ := resourceInfo["kind"].(string) - apiVersion, _ := resourceInfo["apiVersion"].(string) - - s.log.Info("processing extension resource for cluster modification", - slog.String("kind", kind), - slog.String("apiVersion", apiVersion)) - - // Check if it's an InferencePool - if kind == "InferencePool" && apiVersion == "sigs.k8s.io/gateway-api-inference-extension/v1alpha2" { - // Now unmarshal directly to InferencePool type - var pool inferencev1alpha2.InferencePool - if err := json.Unmarshal(ext.GetUnstructuredBytes(), &pool); err != nil { - s.log.Error("failed to unmarshal InferencePool", slog.String("error", err.Error())) - continue - } - - s.log.Info("found InferencePool for cluster modification", - slog.String("name", pool.GetName()), - slog.String("namespace", pool.GetNamespace()), - slog.Int("targetPortNumber", int(pool.Spec.TargetPortNumber))) - - inferencePoolConfigs = append(inferencePoolConfigs, &pool) - } - } - if len(inferencePoolConfigs) == 1 { - // Modify the cluster based on InferencePool configurations - modifiedCluster := s.modifyClusterForInferencePool(req.Cluster, inferencePoolConfigs[0]) - s.log.Info("successfully processed cluster modification", - slog.String("cluster_name", req.Cluster.Name), - slog.Int("inference_pools", len(inferencePoolConfigs))) - - return &pb.PostClusterModifyResponse{ - Cluster: modifiedCluster, - }, nil - } - - return &pb.PostClusterModifyResponse{ - Cluster: req.Cluster, - }, nil -} - -// modifyClusterForInferencePool modifies an existing cluster based on InferencePool configurations -func (s *Server) modifyClusterForInferencePool(cluster *clusterv3.Cluster, pool *inferencev1alpha2.InferencePool) *clusterv3.Cluster { - s.log.Info("modifying cluster for InferencePool", - slog.String("cluster_name", cluster.Name), - slog.String("inference_pool", pool.GetName())) - - // Convert to ORIGINAL_DST cluster type - modifiedCluster := s.convertToOriginalDestCluster(cluster, pool) - return modifiedCluster -} - -// convertToOriginalDestCluster converts a regular cluster to an ORIGINAL_DST cluster for InferencePool -func (s *Server) convertToOriginalDestCluster(originalCluster *clusterv3.Cluster, pool *inferencev1alpha2.InferencePool) *clusterv3.Cluster { - originalCluster.LbPolicy = clusterv3.Cluster_CLUSTER_PROVIDED - originalCluster.ClusterDiscoveryType = &clusterv3.Cluster_Type{ - Type: clusterv3.Cluster_ORIGINAL_DST, - } - originalCluster.LbConfig = &clusterv3.Cluster_OriginalDstLbConfig_{ - OriginalDstLbConfig: &clusterv3.Cluster_OriginalDstLbConfig{ - UseHttpHeader: true, - HttpHeaderName: "x-gateway-destination-endpoint", - }, - } - originalCluster.ConnectTimeout = durationpb.New(10 * 1000000000) - originalCluster.EdsClusterConfig = nil - originalCluster.LoadAssignment = nil - - s.log.Info("successfully converted cluster to ORIGINAL_DST type", - slog.String("cluster_name", originalCluster.Name), - slog.String("inference_pool", pool.GetName())) - - return originalCluster -} diff --git a/examples/extension-server/internal/extensionserver/post_listener_modify.go b/examples/extension-server/internal/extensionserver/post_listener_modify.go deleted file mode 100644 index c61bd0d6e92..00000000000 --- a/examples/extension-server/internal/extensionserver/post_listener_modify.go +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright Envoy Gateway Authors -// SPDX-License-Identifier: Apache-2.0 -// The full text of the Apache license is available in the LICENSE file at -// the root of the repo. - -package extensionserver - -import ( - "context" - "encoding/json" - "fmt" - "log/slog" - - corev3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3" - listenerv3 "github.com/envoyproxy/go-control-plane/envoy/config/listener/v3" - bav3 "github.com/envoyproxy/go-control-plane/envoy/extensions/filters/http/basic_auth/v3" - hcm "github.com/envoyproxy/go-control-plane/envoy/extensions/filters/network/http_connection_manager/v3" - "github.com/envoyproxy/go-control-plane/pkg/wellknown" - "github.com/exampleorg/envoygateway-extension/api/v1alpha1" - "google.golang.org/protobuf/types/known/anypb" - - pb "github.com/envoyproxy/gateway/proto/extension" -) - -// PostHTTPListenerModify is called after Envoy Gateway is done generating a -// Listener xDS configuration and before that configuration is passed on to -// Envoy Proxy. -// This example adds Basic Authentication on the Listener level as an example. -// Note: This implementation is not secure, and should not be used to protect -// anything important. -func (s *Server) PostHTTPListenerModify(ctx context.Context, req *pb.PostHTTPListenerModifyRequest) (*pb.PostHTTPListenerModifyResponse, error) { - s.log.Info("postHTTPListenerModify callback was invoked") - // Collect all of the required username/password combinations from the - // provided contexts that were attached to the gateway. - passwords := NewHtpasswd() - for _, ext := range req.PostListenerContext.ExtensionResources { - var listenerContext v1alpha1.ListenerContextExample - if err := json.Unmarshal(ext.GetUnstructuredBytes(), &listenerContext); err != nil { - s.log.Error("failed to unmarshal the extension", slog.String("error", err.Error())) - continue - } - s.log.Info("processing an extension context", slog.String("username", listenerContext.Spec.Username)) - passwords.AddUser(listenerContext.Spec.Username, listenerContext.Spec.Password) - } - - // First, get the filter chains from the listener - filterChains := req.Listener.GetFilterChains() - defaultFC := req.Listener.DefaultFilterChain - if defaultFC != nil { - filterChains = append(filterChains, defaultFC) - } - // Go over all of the chains, and add the basic authentication http filter - for _, currChain := range filterChains { - httpConManager, hcmIndex, err := findHCM(currChain) - if err != nil { - s.log.Error("failed to find an HCM in the current chain", slog.Any("error", err)) - continue - } - // If a basic authentication filter already exists, update it. Otherwise, create it. - basicAuth, baIndex, err := findBasicAuthFilter(httpConManager.HttpFilters) - if err != nil { - s.log.Error("failed to unmarshal the existing basicAuth filter", slog.Any("error", err)) - continue - } - if baIndex == -1 { - // Create a new basic auth filter - basicAuth = &bav3.BasicAuth{ - Users: &corev3.DataSource{ - Specifier: &corev3.DataSource_InlineString{ - InlineString: passwords.String(), - }, - }, - ForwardUsernameHeader: "X-Example-Ext", - } - } else { - // Update the basic auth filter - basicAuth.Users.Specifier = &corev3.DataSource_InlineString{ - InlineString: passwords.String(), - } - } - // Add or update the Basic Authentication filter in the HCM - anyBAFilter, _ := anypb.New(basicAuth) - if baIndex > -1 { - httpConManager.HttpFilters[baIndex].ConfigType = &hcm.HttpFilter_TypedConfig{ - TypedConfig: anyBAFilter, - } - } else { - filters := []*hcm.HttpFilter{ - { - Name: "envoy.filters.http.basic_auth", - ConfigType: &hcm.HttpFilter_TypedConfig{ - TypedConfig: anyBAFilter, - }, - }, - } - filters = append(filters, httpConManager.HttpFilters...) - httpConManager.HttpFilters = filters - } - - // Write the updated HCM back to the filter chain - anyConnectionMgr, _ := anypb.New(httpConManager) - currChain.Filters[hcmIndex].ConfigType = &listenerv3.Filter_TypedConfig{ - TypedConfig: anyConnectionMgr, - } - } - - return &pb.PostHTTPListenerModifyResponse{ - Listener: req.Listener, - }, nil -} - -// Tries to find an HTTP connection manager in the provided filter chain. -func findHCM(filterChain *listenerv3.FilterChain) (*hcm.HttpConnectionManager, int, error) { - for filterIndex, filter := range filterChain.Filters { - if filter.Name == wellknown.HTTPConnectionManager { - hcm := new(hcm.HttpConnectionManager) - if err := filter.GetTypedConfig().UnmarshalTo(hcm); err != nil { - return nil, -1, err - } - return hcm, filterIndex, nil - } - } - return nil, -1, fmt.Errorf("unable to find HTTPConnectionManager in FilterChain: %s", filterChain.Name) -} - -// Tries to find the Basic Authentication HTTP filter in the provided chain -func findBasicAuthFilter(chain []*hcm.HttpFilter) (*bav3.BasicAuth, int, error) { - for i, filter := range chain { - if filter.Name == "envoy.filters.http.basic_auth" { - ba := new(bav3.BasicAuth) - if err := filter.GetTypedConfig().UnmarshalTo(ba); err != nil { - return nil, -1, err - } - return ba, i, nil - } - } - return nil, -1, nil -} diff --git a/examples/extension-server/internal/extensionserver/post_route_modify.go b/examples/extension-server/internal/extensionserver/post_route_modify.go deleted file mode 100644 index 0448925195b..00000000000 --- a/examples/extension-server/internal/extensionserver/post_route_modify.go +++ /dev/null @@ -1,114 +0,0 @@ -// Copyright Envoy Gateway Authors -// SPDX-License-Identifier: Apache-2.0 -// The full text of the Apache license is available in the LICENSE file at -// the root of the repo. - -package extensionserver - -import ( - "context" - "encoding/json" - "fmt" - "log/slog" - "time" - - routev3 "github.com/envoyproxy/go-control-plane/envoy/config/route/v3" - "google.golang.org/protobuf/proto" - "google.golang.org/protobuf/types/known/anypb" - "google.golang.org/protobuf/types/known/durationpb" - inferencev1alpha2 "sigs.k8s.io/gateway-api-inference-extension/api/v1alpha2" - - pb "github.com/envoyproxy/gateway/proto/extension" -) - -// PostRouteModify is called after Envoy Gateway is done generating a -// Route xDS configuration and before that configuration is passed on to -// Envoy Proxy. -// This implementation detects InferencePool custom backends and creates -// an original_destination_cluster for routing. -func (s *Server) PostRouteModify(ctx context.Context, req *pb.PostRouteModifyRequest) (*pb.PostRouteModifyResponse, error) { - s.log.Info("postRouteModify callback was invoked") - - // Check if there are any InferencePool extension resources - var hasInferencePool bool - var inferencePool *inferencev1alpha2.InferencePool - for _, ext := range req.PostRouteContext.ExtensionResources { - // Parse the JSON to check the kind and apiVersion - var resourceInfo map[string]interface{} - if err := json.Unmarshal(ext.GetUnstructuredBytes(), &resourceInfo); err != nil { - return &pb.PostRouteModifyResponse{ - Route: req.Route, - }, err - } - - kind, _ := resourceInfo["kind"].(string) - apiVersion, _ := resourceInfo["apiVersion"].(string) - - s.log.Info("processing extension resource", - slog.String("kind", kind), - slog.String("apiVersion", apiVersion)) - - // Check if it's an InferencePool - if kind == "InferencePool" && apiVersion == "sigs.k8s.io/gateway-api-inference-extension/v1alpha2" { - // Now unmarshal directly to InferencePool type - var pool inferencev1alpha2.InferencePool - if err := json.Unmarshal(ext.GetUnstructuredBytes(), &pool); err != nil { - s.log.Error("failed to unmarshal InferencePool", slog.String("error", err.Error())) - continue - } - - hasInferencePool = true - inferencePool = &pool - s.log.Info("found InferencePool backend", - slog.String("name", pool.GetName()), - slog.String("namespace", pool.GetNamespace()), - slog.Int("targetPortNumber", int(pool.Spec.TargetPortNumber))) - break - } - } - - // If no InferencePool found, return the route unchanged - if !hasInferencePool { - return &pb.PostRouteModifyResponse{ - Route: req.Route, - }, nil - } - - // Build cluster name using InferencePool information - clusterName := clusterNameOriginalDst(inferencePool.GetName(), inferencePool.GetNamespace()) - - // Modify the route to use the dynamically named cluster - modifiedRoute := req.Route - if modifiedRoute.GetRoute() != nil { - modifiedRoute.GetRoute().ClusterSpecifier = &routev3.RouteAction_Cluster{ - Cluster: clusterName, - } - // Set route timeout to 120 seconds - modifiedRoute.GetRoute().Timeout = durationpb.New(120 * time.Second) - } - - s.log.Info("successfully modified route for InferencePool backend", - slog.String("cluster", clusterName), - slog.String("route_name", modifiedRoute.GetName()), - slog.String("inference_pool_name", inferencePool.GetName()), - slog.String("inference_pool_namespace", inferencePool.GetNamespace()), - slog.Int("target_port", int(inferencePool.Spec.TargetPortNumber))) - - return &pb.PostRouteModifyResponse{ - Route: modifiedRoute, - }, nil -} - -// Note: buildExtProcCluster function removed as cluster creation is now handled by PostClusterModify hook - -func clusterNameOriginalDst(name, ns string) string { - return fmt.Sprintf("endpointpicker_%s_%s_original_dst", name, ns) -} - -func messageToAny(msg proto.Message) (*anypb.Any, error) { - anyPb := &anypb.Any{} - err := anypb.MarshalFrom(anyPb, msg, proto.MarshalOptions{ - Deterministic: true, - }) - return anyPb, err -} diff --git a/examples/extension-server/internal/extensionserver/post_translate.go b/examples/extension-server/internal/extensionserver/post_translate.go new file mode 100644 index 00000000000..7409d49d091 --- /dev/null +++ b/examples/extension-server/internal/extensionserver/post_translate.go @@ -0,0 +1,214 @@ +// Copyright Envoy Gateway Authors +// SPDX-License-Identifier: Apache-2.0 +// The full text of the Apache license is available in the LICENSE file at +// the root of the repo. + +package extensionserver + +import ( + "context" + "fmt" + pb "github.com/envoyproxy/gateway/proto/extension" + clusterv3 "github.com/envoyproxy/go-control-plane/envoy/config/cluster/v3" + corev3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3" + endpointV3 "github.com/envoyproxy/go-control-plane/envoy/config/endpoint/v3" + tlsV3 "github.com/envoyproxy/go-control-plane/envoy/extensions/transport_sockets/tls/v3" + extensionv1alpha1 "github.com/exampleorg/envoygateway-extension/api/v1alpha1" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" + "google.golang.org/protobuf/types/known/anypb" + "google.golang.org/protobuf/types/known/durationpb" + "log/slog" + gwapiv1a2 "sigs.k8s.io/gateway-api/apis/v1alpha2" + "time" +) + +const ( + spireAgentClusterName = "spire_agent" +) + +var ( + spireAgentCluster = &clusterv3.Cluster{ + Name: spireAgentClusterName, + ConnectTimeout: durationpb.New(time.Second), + Http2ProtocolOptions: &corev3.Http2ProtocolOptions{}, + LoadAssignment: &endpointV3.ClusterLoadAssignment{ + ClusterName: spireAgentClusterName, + Endpoints: []*endpointV3.LocalityLbEndpoints{ + { + LbEndpoints: []*endpointV3.LbEndpoint{ + { + HostIdentifier: &endpointV3.LbEndpoint_Endpoint{ + Endpoint: &endpointV3.Endpoint{ + Address: &corev3.Address{ + Address: &corev3.Address_Pipe{ + Pipe: &corev3.Pipe{ + Path: "/var/run/spiffe-workload-api/spire-agent.sock", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + } + + sdsConfigSource = &corev3.ConfigSource{ + ResourceApiVersion: corev3.ApiVersion_V3, + ConfigSourceSpecifier: &corev3.ConfigSource_ApiConfigSource{ + ApiConfigSource: &corev3.ApiConfigSource{ + ApiType: corev3.ApiConfigSource_GRPC, + TransportApiVersion: corev3.ApiVersion_V3, + GrpcServices: []*corev3.GrpcService{ + { + TargetSpecifier: &corev3.GrpcService_EnvoyGrpc_{ + EnvoyGrpc: &corev3.GrpcService_EnvoyGrpc{ + ClusterName: spireAgentClusterName, + }, + }, + }, + }, + }, + }, + } +) + +func (s *Server) PostTranslateModify(ctx context.Context, req *pb.PostTranslateModifyRequest) (*pb.PostTranslateModifyResponse, error) { + s.log.Info("PostTranslate callback was invoked", + slog.Int("len(extension_resources)", len(req.GetPostTranslateContext().GetExtensionResources())), + ) + + var backendMtlsPolicy *extensionv1alpha1.CustomBackendMtlsPolicy + + for _, untyped := range req.GetPostTranslateContext().GetExtensionResources() { + policy, err := s.getCustomBackendMtlsPolicy(untyped) + if err != nil { + return nil, status.Errorf(codes.InvalidArgument, "Backend MTLS Policy Error: %v", err) + } + if policy == nil { + continue + } + + backendMtlsPolicy = policy + break + } + + if backendMtlsPolicy == nil { + return &pb.PostTranslateModifyResponse{ + Clusters: req.GetClusters(), + Secrets: req.GetSecrets(), + Listeners: req.GetListeners(), + Routes: req.GetRoutes(), + }, nil + } + + s.log.Info("CustomBackendMtlsPolicy found, adding spire agent xDS cluster and potentially adding SDS config to each backend cluster") + + clusters := req.GetClusters() + for _, cluster := range clusters { + err := s.maybeAddSdsConfigToCluster(cluster, backendMtlsPolicy) + if err != nil { + return nil, status.Errorf(codes.Internal, "maybeAddSdsConfigToCluster for cluster %q: %v", cluster.GetName(), err) + } + } + + clusters = append(clusters, spireAgentCluster) + return &pb.PostTranslateModifyResponse{ + Clusters: clusters, + Secrets: req.GetSecrets(), + Listeners: req.GetListeners(), + Routes: req.GetRoutes(), + }, nil +} + +func (s *Server) maybeAddSdsConfigToCluster(cluster *clusterv3.Cluster, backendMtlsPolicy *extensionv1alpha1.CustomBackendMtlsPolicy) error { + backendRef := parseGatewayApiMetadata(cluster) + if backendRef == nil { + return nil + } + if backendRef.Kind != "HTTPRoute" { + return nil + } + + return s.addSdsConfigToCluster(cluster, backendMtlsPolicy) +} + +func (s *Server) addSdsConfigToCluster(cluster *clusterv3.Cluster, policy *extensionv1alpha1.CustomBackendMtlsPolicy) error { + s.log.Info("Adding SDS config to cluster", slog.String("cluster_name", cluster.GetName())) + spiffeId := generateSpiffeID(policy) + + for _, transportSocketMatch := range cluster.TransportSocketMatches { + if !isTlsTransportSocket(transportSocketMatch) { + continue + } + + if err := configureTransportSocketMatch(transportSocketMatch, spiffeId); err != nil { + return fmt.Errorf("addSdsConfigToCluster for transport socket match %q: %v", transportSocketMatch.GetName(), err) + } + s.log.Info("Added SDS config to cluster", + slog.String("cluster_name", cluster.GetName()), + slog.String("transport_socket_match", transportSocketMatch.GetName()), + slog.String("spiffe_id", spiffeId), + ) + } + + return nil +} + +func isTlsTransportSocket(match *clusterv3.Cluster_TransportSocketMatch) bool { + return match.TransportSocket != nil && match.TransportSocket.Name == "envoy.transport_sockets.tls" +} + +func configureTransportSocketMatch(match *clusterv3.Cluster_TransportSocketMatch, spiffeId string) error { + upstreamTlsCtx := &tlsV3.UpstreamTlsContext{} + if err := match.GetTransportSocket().GetTypedConfig().UnmarshalTo(upstreamTlsCtx); err != nil { + return fmt.Errorf("unmarshal UpstreamTlsContext failed: %v", err) + } + + if upstreamTlsCtx.GetCommonTlsContext() == nil { + return fmt.Errorf("upstreamTlsCtx common tls context is nil") + } + + upstreamTlsCtx.CommonTlsContext.TlsCertificateSdsSecretConfigs = []*tlsV3.SdsSecretConfig{ + { + Name: spiffeId, + SdsConfig: sdsConfigSource, + }, + } + + typedConfigAny, err := anypb.New(upstreamTlsCtx) + if err != nil { + return fmt.Errorf("marshal UpstreamTlsContext failed: %v", err) + } + + match.TransportSocket.ConfigType = &corev3.TransportSocket_TypedConfig{ + TypedConfig: typedConfigAny, + } + + return nil +} + +func generateSpiffeID(policy *extensionv1alpha1.CustomBackendMtlsPolicy) string { + return fmt.Sprintf("spiffe://%s/%s", policy.Spec.TrustDomain, policy.Spec.WorkloadIdentifier) +} + +func parseGatewayApiMetadata(cluster *clusterv3.Cluster) *gwapiv1a2.LocalPolicyTargetReference { + metadata := cluster.GetMetadata().GetFilterMetadata() + if s, ok := metadata["envoy-gateway"]; ok { + if v, ok := s.GetFields()["resources"]; ok { + for _, value := range v.GetListValue().GetValues() { + kind := value.GetStructValue().GetFields()["kind"].GetStringValue() + name := value.GetStructValue().GetFields()["name"].GetStringValue() + return &gwapiv1a2.LocalPolicyTargetReference{ + Group: "gateway.networking.k8s.io", + Kind: gwapiv1a2.Kind(kind), + Name: gwapiv1a2.ObjectName(name), + } + } + } + } + return nil +} diff --git a/examples/extension-server/internal/extensionserver/resources.go b/examples/extension-server/internal/extensionserver/resources.go new file mode 100644 index 00000000000..65098a9668d --- /dev/null +++ b/examples/extension-server/internal/extensionserver/resources.go @@ -0,0 +1,36 @@ +package extensionserver + +import ( + "encoding/json" + "fmt" + extensionpb "github.com/envoyproxy/gateway/proto/extension" + extensionv1alpha1 "github.com/exampleorg/envoygateway-extension/api/v1alpha1" + "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/client-go/kubernetes/scheme" + "sigs.k8s.io/controller-runtime/pkg/client/apiutil" +) + +func (s *Server) getCustomBackendMtlsPolicy(untyped *extensionpb.ExtensionResource) (*extensionv1alpha1.CustomBackendMtlsPolicy, error) { + resourceInfo := &unstructured.Unstructured{} + if err := json.Unmarshal(untyped.GetUnstructuredBytes(), &resourceInfo); err != nil { + return nil, fmt.Errorf("failed to unmarshal extension resource: %w", err) + } + + resourceGVK := resourceInfo.GroupVersionKind().String() + obj := &extensionv1alpha1.CustomBackendMtlsPolicy{} + gvk, err := apiutil.GVKForObject(obj, scheme.Scheme) + if err != nil { + return nil, fmt.Errorf("failed to get GVK for resource: %w", err) + } + + if gvk.String() != resourceGVK { + return nil, nil + } + + if err := runtime.DefaultUnstructuredConverter.FromUnstructured(resourceInfo.Object, &obj); err != nil { + return nil, fmt.Errorf("error converting resourceInfo from unstructured: %w", err) + } + + return obj, nil +} diff --git a/examples/extension-server/tools/docker/extension-server/Dockerfile b/examples/extension-server/tools/docker/extension-server/Dockerfile index 4cb549d954d..3904822a716 100644 --- a/examples/extension-server/tools/docker/extension-server/Dockerfile +++ b/examples/extension-server/tools/docker/extension-server/Dockerfile @@ -1,6 +1,38 @@ +# Stage 1: Build the statically-linked Go binary +# Use a specific Go version for reproducible builds +FROM golang:1.24-alpine AS builder + +# Set build arguments that can be passed in from the Makefile +ARG GO_LDFLAGS + +# Set the working directory +WORKDIR /src + +# Copy the go.mod and go.sum files to cache dependencies +COPY go.mod go.sum ./ +RUN go mod download + +# All remaining +COPY . . + +# Build a statically-linked binary for the target platform. +# The 'distroless/static' base image requires a static binary. +# CGO_ENABLED=0 is crucial for this. +# buildx automatically provides TARGETPLATFORM (e.g., linux/amd64) +RUN CGO_ENABLED=0 go build \ + -ldflags="${GO_LDFLAGS}" \ + -o /extension-server \ + ./cmd/extension-server + +# Stage 2: Create the final minimal image using the distroless base +# This is the exact base image from your original Dockerfile FROM gcr.io/distroless/static:nonroot@sha256:e9ac71e2b8e279a8372741b7a0293afda17650d926900233ec3a7b2b7c22a246 -COPY ./bin/extension-server /usr/local/bin/extension-server +# Copy ONLY the compiled binary from the 'builder' stage +COPY --from=builder /extension-server /usr/local/bin/extension-server + +# This USER line is optional as 'nonroot' image defaults to it, but it's good to be explicit. USER 65532:65532 +# Set the entrypoint for the container to run our application ENTRYPOINT ["/usr/local/bin/extension-server"] diff --git a/examples/fake-spire-agent/.gitignore b/examples/fake-spire-agent/.gitignore new file mode 100644 index 00000000000..ba077a4031a --- /dev/null +++ b/examples/fake-spire-agent/.gitignore @@ -0,0 +1 @@ +bin diff --git a/examples/fake-spire-agent/Makefile b/examples/fake-spire-agent/Makefile new file mode 100644 index 00000000000..518db42335a --- /dev/null +++ b/examples/fake-spire-agent/Makefile @@ -0,0 +1,33 @@ +tools.dir = tools +tools.bindir = tools/bin +tools.srcdir = tools/src + +$(tools.bindir)/%: $(tools.srcdir)/%/pin.go $(tools.srcdir)/%/go.mod + cd $(