Generic Proxy (proto)

This extension has the qualified name envoy.filters.network.generic_proxy

Note

This extension is only available in contrib images.

Note

This extension is work-in-progress. Functionality is incomplete and it is not intended for production use.

This extension is not hardened and should only be used in deployments where both the downstream and upstream are trusted.

Tip

This extension extends and can be used with the following extension category:

Warning

This API feature is currently work-in-progress. API features marked as work-in-progress are not considered stable, are not covered by the threat model, are not supported by the security team, and are subject to breaking changes. Do not use this feature without understanding each of the previous points.

Generic proxy.

extensions.filters.network.generic_proxy.v3.GenericProxy

[extensions.filters.network.generic_proxy.v3.GenericProxy proto]

{
  "stat_prefix": ...,
  "codec_config": {...},
  "generic_rds": {...},
  "route_config": {...},
  "filters": [],
  "tracing": {...}
}
stat_prefix

(string, REQUIRED) The human readable prefix to use when emitting statistics.

codec_config

(config.core.v3.TypedExtensionConfig, REQUIRED) The codec which encodes and decodes the application protocol.

Tip

The following extensions are available in contrib images only:

generic_rds

(extensions.filters.network.generic_proxy.v3.GenericRds) The generic proxies route table will be dynamically loaded via the meta RDS API.

Precisely one of generic_rds, route_config must be set.

route_config

(extensions.filters.network.generic_proxy.v3.RouteConfiguration) The route table for the generic proxy is static and is specified in this property.

Precisely one of generic_rds, route_config must be set.

filters

(repeated config.core.v3.TypedExtensionConfig) A list of individual Layer-7 filters that make up the filter chain for requests made to the proxy. Order matters as the filters are processed sequentially as request events happen.

Tip

The following extensions are available in contrib images only:

tracing

(extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing) Tracing configuration for the generic proxy.

extensions.filters.network.generic_proxy.v3.GenericRds

[extensions.filters.network.generic_proxy.v3.GenericRds proto]

{
  "config_source": {...},
  "route_config_name": ...
}
config_source

(config.core.v3.ConfigSource, REQUIRED) Configuration source specifier for RDS.

route_config_name

(string, REQUIRED) The name of the route configuration. This name will be passed to the RDS API. This allows an Envoy configuration with multiple generic proxies to use different route configurations.