public interface HttpConnectionManagerOrBuilder
extends com.google.protobuf.MessageOrBuilder
| Modifier and Type | Method and Description |
|---|---|
AccessLog |
getAccessLog(int index)
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>`
emitted by the connection manager.
|
int |
getAccessLogCount()
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>`
emitted by the connection manager.
|
List<AccessLog> |
getAccessLogList()
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>`
emitted by the connection manager.
|
AccessLogOrBuilder |
getAccessLogOrBuilder(int index)
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>`
emitted by the connection manager.
|
List<? extends AccessLogOrBuilder> |
getAccessLogOrBuilderList()
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>`
emitted by the connection manager.
|
com.google.protobuf.BoolValue |
getAddUserAgent()
Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent`
and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers.
|
com.google.protobuf.BoolValueOrBuilder |
getAddUserAgentOrBuilder()
Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent`
and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers.
|
boolean |
getAlwaysSetRequestIdInResponse()
If set, Envoy will always set :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header in response.
|
HttpConnectionManager.CodecType |
getCodecType()
Supplies the type of codec that the connection manager should use.
|
int |
getCodecTypeValue()
Supplies the type of codec that the connection manager should use.
|
HttpProtocolOptions |
getCommonHttpProtocolOptions()
Additional settings for HTTP requests handled by the connection manager.
|
HttpProtocolOptionsOrBuilder |
getCommonHttpProtocolOptionsOrBuilder()
Additional settings for HTTP requests handled by the connection manager.
|
com.google.protobuf.Duration |
getDelayedCloseTimeout()
The delayed close timeout is for downstream connections managed by the HTTP connection manager.
|
com.google.protobuf.DurationOrBuilder |
getDelayedCloseTimeoutOrBuilder()
The delayed close timeout is for downstream connections managed by the HTTP connection manager.
|
com.google.protobuf.Duration |
getDrainTimeout()
The time that Envoy will wait between sending an HTTP/2 “shutdown
notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame.
|
com.google.protobuf.DurationOrBuilder |
getDrainTimeoutOrBuilder()
The time that Envoy will wait between sending an HTTP/2 “shutdown
notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame.
|
HttpConnectionManager.ForwardClientCertDetails |
getForwardClientCertDetails()
How to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP
header.
|
int |
getForwardClientCertDetailsValue()
How to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP
header.
|
com.google.protobuf.BoolValue |
getGenerateRequestId()
Whether the connection manager will generate the :ref:`x-request-id
<config_http_conn_man_headers_x-request-id>` header if it does not exist.
|
com.google.protobuf.BoolValueOrBuilder |
getGenerateRequestIdOrBuilder()
Whether the connection manager will generate the :ref:`x-request-id
<config_http_conn_man_headers_x-request-id>` header if it does not exist.
|
Http2ProtocolOptions |
getHttp2ProtocolOptions()
Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
|
Http2ProtocolOptionsOrBuilder |
getHttp2ProtocolOptionsOrBuilder()
Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
|
HttpFilter |
getHttpFilters(int index)
A list of individual HTTP filters that make up the filter chain for
requests made to the connection manager.
|
int |
getHttpFiltersCount()
A list of individual HTTP filters that make up the filter chain for
requests made to the connection manager.
|
List<HttpFilter> |
getHttpFiltersList()
A list of individual HTTP filters that make up the filter chain for
requests made to the connection manager.
|
HttpFilterOrBuilder |
getHttpFiltersOrBuilder(int index)
A list of individual HTTP filters that make up the filter chain for
requests made to the connection manager.
|
List<? extends HttpFilterOrBuilder> |
getHttpFiltersOrBuilderList()
A list of individual HTTP filters that make up the filter chain for
requests made to the connection manager.
|
Http1ProtocolOptions |
getHttpProtocolOptions()
Additional HTTP/1 settings that are passed to the HTTP/1 codec.
|
Http1ProtocolOptionsOrBuilder |
getHttpProtocolOptionsOrBuilder()
Additional HTTP/1 settings that are passed to the HTTP/1 codec.
|
HttpConnectionManager.InternalAddressConfig |
getInternalAddressConfig()
Configures what network addresses are considered internal for stats and header sanitation
purposes.
|
HttpConnectionManager.InternalAddressConfigOrBuilder |
getInternalAddressConfigOrBuilder()
Configures what network addresses are considered internal for stats and header sanitation
purposes.
|
LocalReplyConfig |
getLocalReplyConfig()
The configuration to customize local reply returned by Envoy.
|
LocalReplyConfigOrBuilder |
getLocalReplyConfigOrBuilder()
The configuration to customize local reply returned by Envoy.
|
com.google.protobuf.UInt32Value |
getMaxRequestHeadersKb()
The maximum request headers size for incoming connections.
|
com.google.protobuf.UInt32ValueOrBuilder |
getMaxRequestHeadersKbOrBuilder()
The maximum request headers size for incoming connections.
|
boolean |
getMergeSlashes()
Determines if adjacent slashes in the path are merged into one before any processing of
requests by HTTP filters or routing.
|
com.google.protobuf.BoolValue |
getNormalizePath()
Should paths be normalized according to RFC 3986 before any processing of
requests by HTTP filters or routing?
|
com.google.protobuf.BoolValueOrBuilder |
getNormalizePathOrBuilder()
Should paths be normalized according to RFC 3986 before any processing of
requests by HTTP filters or routing?
|
boolean |
getPreserveExternalRequestId()
Whether the connection manager will keep the :ref:`x-request-id
<config_http_conn_man_headers_x-request-id>` header if passed for a request that is edge
(Edge request is the request from external clients to front Envoy) and not reset it, which
is the current Envoy behaviour.
|
boolean |
getProxy100Continue()
If proxy_100_continue is true, Envoy will proxy incoming "Expect:
100-continue" headers upstream, and forward "100 Continue" responses
downstream.
|
Rds |
getRds()
The connection manager’s route table will be dynamically loaded via the RDS API.
|
RdsOrBuilder |
getRdsOrBuilder()
The connection manager’s route table will be dynamically loaded via the RDS API.
|
boolean |
getRepresentIpv4RemoteAddressAsIpv4MappedIpv6()
If
:ref:`use_remote_address
<envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>`
is true and represent_ipv4_remote_address_as_ipv4_mapped_ipv6 is true and the remote address is
an IPv4 address, the address will be mapped to IPv6 before it is appended to *x-forwarded-for*.
|
com.google.protobuf.Duration |
getRequestHeadersTimeout()
The amount of time that Envoy will wait for the request headers to be received.
|
com.google.protobuf.DurationOrBuilder |
getRequestHeadersTimeoutOrBuilder()
The amount of time that Envoy will wait for the request headers to be received.
|
RequestIDExtension |
getRequestIdExtension()
The configuration of the request ID extension.
|
RequestIDExtensionOrBuilder |
getRequestIdExtensionOrBuilder()
The configuration of the request ID extension.
|
com.google.protobuf.Duration |
getRequestTimeout()
The amount of time that Envoy will wait for the entire request to be received.
|
com.google.protobuf.DurationOrBuilder |
getRequestTimeoutOrBuilder()
The amount of time that Envoy will wait for the entire request to be received.
|
RouteConfiguration |
getRouteConfig()
The route table for the connection manager is static and is specified in this property.
|
RouteConfigurationOrBuilder |
getRouteConfigOrBuilder()
The route table for the connection manager is static and is specified in this property.
|
HttpConnectionManager.RouteSpecifierCase |
getRouteSpecifierCase() |
ScopedRoutes |
getScopedRoutes()
A route table will be dynamically assigned to each request based on request attributes
(e.g., the value of a header).
|
ScopedRoutesOrBuilder |
getScopedRoutesOrBuilder()
A route table will be dynamically assigned to each request based on request attributes
(e.g., the value of a header).
|
HttpConnectionManager.ServerHeaderTransformation |
getServerHeaderTransformation()
Defines the action to be applied to the Server header on the response path.
|
int |
getServerHeaderTransformationValue()
Defines the action to be applied to the Server header on the response path.
|
String |
getServerName()
An optional override that the connection manager will write to the server
header in responses.
|
com.google.protobuf.ByteString |
getServerNameBytes()
An optional override that the connection manager will write to the server
header in responses.
|
HttpConnectionManager.SetCurrentClientCertDetails |
getSetCurrentClientCertDetails()
This field is valid only when :ref:`forward_client_cert_details
<envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>`
is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS.
|
HttpConnectionManager.SetCurrentClientCertDetailsOrBuilder |
getSetCurrentClientCertDetailsOrBuilder()
This field is valid only when :ref:`forward_client_cert_details
<envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>`
is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS.
|
boolean |
getSkipXffAppend()
If set, Envoy will not append the remote address to the
:ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header.
|
String |
getStatPrefix()
The human readable prefix to use when emitting statistics for the
connection manager.
|
com.google.protobuf.ByteString |
getStatPrefixBytes()
The human readable prefix to use when emitting statistics for the
connection manager.
|
com.google.protobuf.BoolValue |
getStreamErrorOnInvalidHttpMessage()
Governs Envoy's behavior when receiving invalid HTTP from downstream.
|
com.google.protobuf.BoolValueOrBuilder |
getStreamErrorOnInvalidHttpMessageOrBuilder()
Governs Envoy's behavior when receiving invalid HTTP from downstream.
|
com.google.protobuf.Duration |
getStreamIdleTimeout()
The stream idle timeout for connections managed by the connection manager.
|
com.google.protobuf.DurationOrBuilder |
getStreamIdleTimeoutOrBuilder()
The stream idle timeout for connections managed by the connection manager.
|
boolean |
getStripAnyHostPort()
Determines if the port part should be removed from host/authority header before any processing
of request by HTTP filters or routing.
|
boolean |
getStripMatchingHostPort()
Determines if the port part should be removed from host/authority header before any processing
of request by HTTP filters or routing.
|
HttpConnectionManager.StripPortModeCase |
getStripPortModeCase() |
HttpConnectionManager.Tracing |
getTracing()
Presence of the object defines whether the connection manager
emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider
<envoy_api_msg_config.trace.v3.Tracing>`.
|
HttpConnectionManager.TracingOrBuilder |
getTracingOrBuilder()
Presence of the object defines whether the connection manager
emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider
<envoy_api_msg_config.trace.v3.Tracing>`.
|
HttpConnectionManager.UpgradeConfig |
getUpgradeConfigs(int index)
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23; |
int |
getUpgradeConfigsCount()
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23; |
List<HttpConnectionManager.UpgradeConfig> |
getUpgradeConfigsList()
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23; |
HttpConnectionManager.UpgradeConfigOrBuilder |
getUpgradeConfigsOrBuilder(int index)
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23; |
List<? extends HttpConnectionManager.UpgradeConfigOrBuilder> |
getUpgradeConfigsOrBuilderList()
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23; |
com.google.protobuf.BoolValue |
getUseRemoteAddress()
If set to true, the connection manager will use the real remote address
of the client connection when determining internal versus external origin and manipulating
various headers.
|
com.google.protobuf.BoolValueOrBuilder |
getUseRemoteAddressOrBuilder()
If set to true, the connection manager will use the real remote address
of the client connection when determining internal versus external origin and manipulating
various headers.
|
String |
getVia()
Via header value to append to request and response headers.
|
com.google.protobuf.ByteString |
getViaBytes()
Via header value to append to request and response headers.
|
int |
getXffNumTrustedHops()
The number of additional ingress proxy hops from the right side of the
:ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header to trust when
determining the origin client's IP address.
|
boolean |
hasAddUserAgent()
Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent`
and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers.
|
boolean |
hasCommonHttpProtocolOptions()
Additional settings for HTTP requests handled by the connection manager.
|
boolean |
hasDelayedCloseTimeout()
The delayed close timeout is for downstream connections managed by the HTTP connection manager.
|
boolean |
hasDrainTimeout()
The time that Envoy will wait between sending an HTTP/2 “shutdown
notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame.
|
boolean |
hasGenerateRequestId()
Whether the connection manager will generate the :ref:`x-request-id
<config_http_conn_man_headers_x-request-id>` header if it does not exist.
|
boolean |
hasHttp2ProtocolOptions()
Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
|
boolean |
hasHttpProtocolOptions()
Additional HTTP/1 settings that are passed to the HTTP/1 codec.
|
boolean |
hasInternalAddressConfig()
Configures what network addresses are considered internal for stats and header sanitation
purposes.
|
boolean |
hasLocalReplyConfig()
The configuration to customize local reply returned by Envoy.
|
boolean |
hasMaxRequestHeadersKb()
The maximum request headers size for incoming connections.
|
boolean |
hasNormalizePath()
Should paths be normalized according to RFC 3986 before any processing of
requests by HTTP filters or routing?
|
boolean |
hasRds()
The connection manager’s route table will be dynamically loaded via the RDS API.
|
boolean |
hasRequestHeadersTimeout()
The amount of time that Envoy will wait for the request headers to be received.
|
boolean |
hasRequestIdExtension()
The configuration of the request ID extension.
|
boolean |
hasRequestTimeout()
The amount of time that Envoy will wait for the entire request to be received.
|
boolean |
hasRouteConfig()
The route table for the connection manager is static and is specified in this property.
|
boolean |
hasScopedRoutes()
A route table will be dynamically assigned to each request based on request attributes
(e.g., the value of a header).
|
boolean |
hasSetCurrentClientCertDetails()
This field is valid only when :ref:`forward_client_cert_details
<envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>`
is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS.
|
boolean |
hasStreamErrorOnInvalidHttpMessage()
Governs Envoy's behavior when receiving invalid HTTP from downstream.
|
boolean |
hasStreamIdleTimeout()
The stream idle timeout for connections managed by the connection manager.
|
boolean |
hasTracing()
Presence of the object defines whether the connection manager
emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider
<envoy_api_msg_config.trace.v3.Tracing>`.
|
boolean |
hasUseRemoteAddress()
If set to true, the connection manager will use the real remote address
of the client connection when determining internal versus external origin and manipulating
various headers.
|
findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneofint getCodecTypeValue()
Supplies the type of codec that the connection manager should use.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.CodecType codec_type = 1 [(.validate.rules) = { ... }HttpConnectionManager.CodecType getCodecType()
Supplies the type of codec that the connection manager should use.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.CodecType codec_type = 1 [(.validate.rules) = { ... }String getStatPrefix()
The human readable prefix to use when emitting statistics for the connection manager. See the :ref:`statistics documentation <config_http_conn_man_stats>` for more information.
string stat_prefix = 2 [(.validate.rules) = { ... }com.google.protobuf.ByteString getStatPrefixBytes()
The human readable prefix to use when emitting statistics for the connection manager. See the :ref:`statistics documentation <config_http_conn_man_stats>` for more information.
string stat_prefix = 2 [(.validate.rules) = { ... }boolean hasRds()
The connection manager’s route table will be dynamically loaded via the RDS API.
.envoy.extensions.filters.network.http_connection_manager.v3.Rds rds = 3;Rds getRds()
The connection manager’s route table will be dynamically loaded via the RDS API.
.envoy.extensions.filters.network.http_connection_manager.v3.Rds rds = 3;RdsOrBuilder getRdsOrBuilder()
The connection manager’s route table will be dynamically loaded via the RDS API.
.envoy.extensions.filters.network.http_connection_manager.v3.Rds rds = 3;boolean hasRouteConfig()
The route table for the connection manager is static and is specified in this property.
.envoy.config.route.v3.RouteConfiguration route_config = 4;RouteConfiguration getRouteConfig()
The route table for the connection manager is static and is specified in this property.
.envoy.config.route.v3.RouteConfiguration route_config = 4;RouteConfigurationOrBuilder getRouteConfigOrBuilder()
The route table for the connection manager is static and is specified in this property.
.envoy.config.route.v3.RouteConfiguration route_config = 4;boolean hasScopedRoutes()
A route table will be dynamically assigned to each request based on request attributes (e.g., the value of a header). The "routing scopes" (i.e., route tables) and "scope keys" are specified in this message.
.envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes scoped_routes = 31;ScopedRoutes getScopedRoutes()
A route table will be dynamically assigned to each request based on request attributes (e.g., the value of a header). The "routing scopes" (i.e., route tables) and "scope keys" are specified in this message.
.envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes scoped_routes = 31;ScopedRoutesOrBuilder getScopedRoutesOrBuilder()
A route table will be dynamically assigned to each request based on request attributes (e.g., the value of a header). The "routing scopes" (i.e., route tables) and "scope keys" are specified in this message.
.envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes scoped_routes = 31;List<HttpFilter> getHttpFiltersList()
A list of individual HTTP filters that make up the filter chain for requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>` as the filters are processed sequentially as request events happen.
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;HttpFilter getHttpFilters(int index)
A list of individual HTTP filters that make up the filter chain for requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>` as the filters are processed sequentially as request events happen.
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;int getHttpFiltersCount()
A list of individual HTTP filters that make up the filter chain for requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>` as the filters are processed sequentially as request events happen.
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;List<? extends HttpFilterOrBuilder> getHttpFiltersOrBuilderList()
A list of individual HTTP filters that make up the filter chain for requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>` as the filters are processed sequentially as request events happen.
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;HttpFilterOrBuilder getHttpFiltersOrBuilder(int index)
A list of individual HTTP filters that make up the filter chain for requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>` as the filters are processed sequentially as request events happen.
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;boolean hasAddUserAgent()
Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent` and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers. See the linked documentation for more information. Defaults to false.
.google.protobuf.BoolValue add_user_agent = 6;com.google.protobuf.BoolValue getAddUserAgent()
Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent` and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers. See the linked documentation for more information. Defaults to false.
.google.protobuf.BoolValue add_user_agent = 6;com.google.protobuf.BoolValueOrBuilder getAddUserAgentOrBuilder()
Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent` and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers. See the linked documentation for more information. Defaults to false.
.google.protobuf.BoolValue add_user_agent = 6;boolean hasTracing()
Presence of the object defines whether the connection manager emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider <envoy_api_msg_config.trace.v3.Tracing>`.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing tracing = 7;HttpConnectionManager.Tracing getTracing()
Presence of the object defines whether the connection manager emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider <envoy_api_msg_config.trace.v3.Tracing>`.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing tracing = 7;HttpConnectionManager.TracingOrBuilder getTracingOrBuilder()
Presence of the object defines whether the connection manager emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider <envoy_api_msg_config.trace.v3.Tracing>`.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing tracing = 7;boolean hasCommonHttpProtocolOptions()
Additional settings for HTTP requests handled by the connection manager. These will be applicable to both HTTP1 and HTTP2 requests.
.envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 35 [(.udpa.annotations.security) = { ... }HttpProtocolOptions getCommonHttpProtocolOptions()
Additional settings for HTTP requests handled by the connection manager. These will be applicable to both HTTP1 and HTTP2 requests.
.envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 35 [(.udpa.annotations.security) = { ... }HttpProtocolOptionsOrBuilder getCommonHttpProtocolOptionsOrBuilder()
Additional settings for HTTP requests handled by the connection manager. These will be applicable to both HTTP1 and HTTP2 requests.
.envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 35 [(.udpa.annotations.security) = { ... }boolean hasHttpProtocolOptions()
Additional HTTP/1 settings that are passed to the HTTP/1 codec.
.envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 8;Http1ProtocolOptions getHttpProtocolOptions()
Additional HTTP/1 settings that are passed to the HTTP/1 codec.
.envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 8;Http1ProtocolOptionsOrBuilder getHttpProtocolOptionsOrBuilder()
Additional HTTP/1 settings that are passed to the HTTP/1 codec.
.envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 8;boolean hasHttp2ProtocolOptions()
Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
.envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 9 [(.udpa.annotations.security) = { ... }Http2ProtocolOptions getHttp2ProtocolOptions()
Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
.envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 9 [(.udpa.annotations.security) = { ... }Http2ProtocolOptionsOrBuilder getHttp2ProtocolOptionsOrBuilder()
Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
.envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 9 [(.udpa.annotations.security) = { ... }String getServerName()
An optional override that the connection manager will write to the server header in responses. If not set, the default is *envoy*.
string server_name = 10 [(.validate.rules) = { ... }com.google.protobuf.ByteString getServerNameBytes()
An optional override that the connection manager will write to the server header in responses. If not set, the default is *envoy*.
string server_name = 10 [(.validate.rules) = { ... }int getServerHeaderTransformationValue()
Defines the action to be applied to the Server header on the response path. By default, Envoy will overwrite the header with the value specified in server_name.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ServerHeaderTransformation server_header_transformation = 34 [(.validate.rules) = { ... }HttpConnectionManager.ServerHeaderTransformation getServerHeaderTransformation()
Defines the action to be applied to the Server header on the response path. By default, Envoy will overwrite the header with the value specified in server_name.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ServerHeaderTransformation server_header_transformation = 34 [(.validate.rules) = { ... }boolean hasMaxRequestHeadersKb()
The maximum request headers size for incoming connections. If unconfigured, the default max request headers allowed is 60 KiB. Requests that exceed this limit will receive a 431 response. The max configurable limit is 96 KiB, based on current implementation constraints.
.google.protobuf.UInt32Value max_request_headers_kb = 29 [(.validate.rules) = { ... }com.google.protobuf.UInt32Value getMaxRequestHeadersKb()
The maximum request headers size for incoming connections. If unconfigured, the default max request headers allowed is 60 KiB. Requests that exceed this limit will receive a 431 response. The max configurable limit is 96 KiB, based on current implementation constraints.
.google.protobuf.UInt32Value max_request_headers_kb = 29 [(.validate.rules) = { ... }com.google.protobuf.UInt32ValueOrBuilder getMaxRequestHeadersKbOrBuilder()
The maximum request headers size for incoming connections. If unconfigured, the default max request headers allowed is 60 KiB. Requests that exceed this limit will receive a 431 response. The max configurable limit is 96 KiB, based on current implementation constraints.
.google.protobuf.UInt32Value max_request_headers_kb = 29 [(.validate.rules) = { ... }boolean hasStreamIdleTimeout()
The stream idle timeout for connections managed by the connection manager. If not specified, this defaults to 5 minutes. The default value was selected so as not to interfere with any smaller configured timeouts that may have existed in configurations prior to the introduction of this feature, while introducing robustness to TCP connections that terminate without a FIN. This idle timeout applies to new streams and is overridable by the :ref:`route-level idle_timeout <envoy_api_field_config.route.v3.RouteAction.idle_timeout>`. Even on a stream in which the override applies, prior to receipt of the initial request headers, the :ref:`stream_idle_timeout <envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>` applies. Each time an encode/decode event for headers or data is processed for the stream, the timer will be reset. If the timeout fires, the stream is terminated with a 408 Request Timeout error code if no upstream response header has been received, otherwise a stream reset occurs. This timeout also specifies the amount of time that Envoy will wait for the peer to open enough window to write any remaining stream data once the entirety of stream data (local end stream is true) has been buffered pending available window. In other words, this timeout defends against a peer that does not release enough window to completely write the stream, even though all data has been proxied within available flow control windows. If the timeout is hit in this case, the :ref:`tx_flush_timeout <config_http_conn_man_stats_per_codec>` counter will be incremented. Note that :ref:`max_stream_duration <envoy_api_field_config.core.v3.HttpProtocolOptions.max_stream_duration>` does not apply to this corner case. If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts" is configured, this timeout is scaled according to the value for :ref:`HTTP_DOWNSTREAM_STREAM_IDLE <envoy_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_STREAM_IDLE>`. Note that it is possible to idle timeout even if the wire traffic for a stream is non-idle, due to the granularity of events presented to the connection manager. For example, while receiving very large request headers, it may be the case that there is traffic regularly arriving on the wire while the connection manage is only able to observe the end-of-headers event, hence the stream may still idle timeout. A value of 0 will completely disable the connection manager stream idle timeout, although per-route idle timeout overrides will continue to apply.
.google.protobuf.Duration stream_idle_timeout = 24 [(.udpa.annotations.security) = { ... }com.google.protobuf.Duration getStreamIdleTimeout()
The stream idle timeout for connections managed by the connection manager. If not specified, this defaults to 5 minutes. The default value was selected so as not to interfere with any smaller configured timeouts that may have existed in configurations prior to the introduction of this feature, while introducing robustness to TCP connections that terminate without a FIN. This idle timeout applies to new streams and is overridable by the :ref:`route-level idle_timeout <envoy_api_field_config.route.v3.RouteAction.idle_timeout>`. Even on a stream in which the override applies, prior to receipt of the initial request headers, the :ref:`stream_idle_timeout <envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>` applies. Each time an encode/decode event for headers or data is processed for the stream, the timer will be reset. If the timeout fires, the stream is terminated with a 408 Request Timeout error code if no upstream response header has been received, otherwise a stream reset occurs. This timeout also specifies the amount of time that Envoy will wait for the peer to open enough window to write any remaining stream data once the entirety of stream data (local end stream is true) has been buffered pending available window. In other words, this timeout defends against a peer that does not release enough window to completely write the stream, even though all data has been proxied within available flow control windows. If the timeout is hit in this case, the :ref:`tx_flush_timeout <config_http_conn_man_stats_per_codec>` counter will be incremented. Note that :ref:`max_stream_duration <envoy_api_field_config.core.v3.HttpProtocolOptions.max_stream_duration>` does not apply to this corner case. If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts" is configured, this timeout is scaled according to the value for :ref:`HTTP_DOWNSTREAM_STREAM_IDLE <envoy_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_STREAM_IDLE>`. Note that it is possible to idle timeout even if the wire traffic for a stream is non-idle, due to the granularity of events presented to the connection manager. For example, while receiving very large request headers, it may be the case that there is traffic regularly arriving on the wire while the connection manage is only able to observe the end-of-headers event, hence the stream may still idle timeout. A value of 0 will completely disable the connection manager stream idle timeout, although per-route idle timeout overrides will continue to apply.
.google.protobuf.Duration stream_idle_timeout = 24 [(.udpa.annotations.security) = { ... }com.google.protobuf.DurationOrBuilder getStreamIdleTimeoutOrBuilder()
The stream idle timeout for connections managed by the connection manager. If not specified, this defaults to 5 minutes. The default value was selected so as not to interfere with any smaller configured timeouts that may have existed in configurations prior to the introduction of this feature, while introducing robustness to TCP connections that terminate without a FIN. This idle timeout applies to new streams and is overridable by the :ref:`route-level idle_timeout <envoy_api_field_config.route.v3.RouteAction.idle_timeout>`. Even on a stream in which the override applies, prior to receipt of the initial request headers, the :ref:`stream_idle_timeout <envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>` applies. Each time an encode/decode event for headers or data is processed for the stream, the timer will be reset. If the timeout fires, the stream is terminated with a 408 Request Timeout error code if no upstream response header has been received, otherwise a stream reset occurs. This timeout also specifies the amount of time that Envoy will wait for the peer to open enough window to write any remaining stream data once the entirety of stream data (local end stream is true) has been buffered pending available window. In other words, this timeout defends against a peer that does not release enough window to completely write the stream, even though all data has been proxied within available flow control windows. If the timeout is hit in this case, the :ref:`tx_flush_timeout <config_http_conn_man_stats_per_codec>` counter will be incremented. Note that :ref:`max_stream_duration <envoy_api_field_config.core.v3.HttpProtocolOptions.max_stream_duration>` does not apply to this corner case. If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts" is configured, this timeout is scaled according to the value for :ref:`HTTP_DOWNSTREAM_STREAM_IDLE <envoy_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_STREAM_IDLE>`. Note that it is possible to idle timeout even if the wire traffic for a stream is non-idle, due to the granularity of events presented to the connection manager. For example, while receiving very large request headers, it may be the case that there is traffic regularly arriving on the wire while the connection manage is only able to observe the end-of-headers event, hence the stream may still idle timeout. A value of 0 will completely disable the connection manager stream idle timeout, although per-route idle timeout overrides will continue to apply.
.google.protobuf.Duration stream_idle_timeout = 24 [(.udpa.annotations.security) = { ... }boolean hasRequestTimeout()
The amount of time that Envoy will wait for the entire request to be received. The timer is activated when the request is initiated, and is disarmed when the last byte of the request is sent upstream (i.e. all decoding filters have processed the request), OR when the response is initiated. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_timeout = 28 [(.udpa.annotations.security) = { ... }com.google.protobuf.Duration getRequestTimeout()
The amount of time that Envoy will wait for the entire request to be received. The timer is activated when the request is initiated, and is disarmed when the last byte of the request is sent upstream (i.e. all decoding filters have processed the request), OR when the response is initiated. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_timeout = 28 [(.udpa.annotations.security) = { ... }com.google.protobuf.DurationOrBuilder getRequestTimeoutOrBuilder()
The amount of time that Envoy will wait for the entire request to be received. The timer is activated when the request is initiated, and is disarmed when the last byte of the request is sent upstream (i.e. all decoding filters have processed the request), OR when the response is initiated. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_timeout = 28 [(.udpa.annotations.security) = { ... }boolean hasRequestHeadersTimeout()
The amount of time that Envoy will wait for the request headers to be received. The timer is activated when the first byte of the headers is received, and is disarmed when the last byte of the headers has been received. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_headers_timeout = 41 [(.validate.rules) = { ... }com.google.protobuf.Duration getRequestHeadersTimeout()
The amount of time that Envoy will wait for the request headers to be received. The timer is activated when the first byte of the headers is received, and is disarmed when the last byte of the headers has been received. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_headers_timeout = 41 [(.validate.rules) = { ... }com.google.protobuf.DurationOrBuilder getRequestHeadersTimeoutOrBuilder()
The amount of time that Envoy will wait for the request headers to be received. The timer is activated when the first byte of the headers is received, and is disarmed when the last byte of the headers has been received. If not specified or set to 0, this timeout is disabled.
.google.protobuf.Duration request_headers_timeout = 41 [(.validate.rules) = { ... }boolean hasDrainTimeout()
The time that Envoy will wait between sending an HTTP/2 “shutdown notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame. This is used so that Envoy provides a grace period for new streams that race with the final GOAWAY frame. During this grace period, Envoy will continue to accept new streams. After the grace period, a final GOAWAY frame is sent and Envoy will start refusing new streams. Draining occurs both when a connection hits the idle timeout or during general server draining. The default grace period is 5000 milliseconds (5 seconds) if this option is not specified.
.google.protobuf.Duration drain_timeout = 12;com.google.protobuf.Duration getDrainTimeout()
The time that Envoy will wait between sending an HTTP/2 “shutdown notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame. This is used so that Envoy provides a grace period for new streams that race with the final GOAWAY frame. During this grace period, Envoy will continue to accept new streams. After the grace period, a final GOAWAY frame is sent and Envoy will start refusing new streams. Draining occurs both when a connection hits the idle timeout or during general server draining. The default grace period is 5000 milliseconds (5 seconds) if this option is not specified.
.google.protobuf.Duration drain_timeout = 12;com.google.protobuf.DurationOrBuilder getDrainTimeoutOrBuilder()
The time that Envoy will wait between sending an HTTP/2 “shutdown notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame. This is used so that Envoy provides a grace period for new streams that race with the final GOAWAY frame. During this grace period, Envoy will continue to accept new streams. After the grace period, a final GOAWAY frame is sent and Envoy will start refusing new streams. Draining occurs both when a connection hits the idle timeout or during general server draining. The default grace period is 5000 milliseconds (5 seconds) if this option is not specified.
.google.protobuf.Duration drain_timeout = 12;boolean hasDelayedCloseTimeout()
The delayed close timeout is for downstream connections managed by the HTTP connection manager.
It is defined as a grace period after connection close processing has been locally initiated
during which Envoy will wait for the peer to close (i.e., a TCP FIN/RST is received by Envoy
from the downstream connection) prior to Envoy closing the socket associated with that
connection.
NOTE: This timeout is enforced even when the socket associated with the downstream connection
is pending a flush of the write buffer. However, any progress made writing data to the socket
will restart the timer associated with this timeout. This means that the total grace period for
a socket in this state will be
<total_time_waiting_for_write_buffer_flushes>+<delayed_close_timeout>.
Delaying Envoy's connection close and giving the peer the opportunity to initiate the close
sequence mitigates a race condition that exists when downstream clients do not drain/process
data in a connection's receive buffer after a remote close has been detected via a socket
write(). This race leads to such clients failing to process the response code sent by Envoy,
which could result in erroneous downstream processing.
If the timeout triggers, Envoy will close the connection's socket.
The default timeout is 1000 ms if this option is not specified.
.. NOTE::
To be useful in avoiding the race condition described above, this timeout must be set
to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for
a reasonable "worst" case processing time for a full iteration of Envoy's event loop>.
.. WARNING::
A value of 0 will completely disable delayed close processing. When disabled, the downstream
connection's socket will be closed immediately after the write flush is completed or will
never close if the write flush does not complete.
.google.protobuf.Duration delayed_close_timeout = 26;com.google.protobuf.Duration getDelayedCloseTimeout()
The delayed close timeout is for downstream connections managed by the HTTP connection manager.
It is defined as a grace period after connection close processing has been locally initiated
during which Envoy will wait for the peer to close (i.e., a TCP FIN/RST is received by Envoy
from the downstream connection) prior to Envoy closing the socket associated with that
connection.
NOTE: This timeout is enforced even when the socket associated with the downstream connection
is pending a flush of the write buffer. However, any progress made writing data to the socket
will restart the timer associated with this timeout. This means that the total grace period for
a socket in this state will be
<total_time_waiting_for_write_buffer_flushes>+<delayed_close_timeout>.
Delaying Envoy's connection close and giving the peer the opportunity to initiate the close
sequence mitigates a race condition that exists when downstream clients do not drain/process
data in a connection's receive buffer after a remote close has been detected via a socket
write(). This race leads to such clients failing to process the response code sent by Envoy,
which could result in erroneous downstream processing.
If the timeout triggers, Envoy will close the connection's socket.
The default timeout is 1000 ms if this option is not specified.
.. NOTE::
To be useful in avoiding the race condition described above, this timeout must be set
to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for
a reasonable "worst" case processing time for a full iteration of Envoy's event loop>.
.. WARNING::
A value of 0 will completely disable delayed close processing. When disabled, the downstream
connection's socket will be closed immediately after the write flush is completed or will
never close if the write flush does not complete.
.google.protobuf.Duration delayed_close_timeout = 26;com.google.protobuf.DurationOrBuilder getDelayedCloseTimeoutOrBuilder()
The delayed close timeout is for downstream connections managed by the HTTP connection manager.
It is defined as a grace period after connection close processing has been locally initiated
during which Envoy will wait for the peer to close (i.e., a TCP FIN/RST is received by Envoy
from the downstream connection) prior to Envoy closing the socket associated with that
connection.
NOTE: This timeout is enforced even when the socket associated with the downstream connection
is pending a flush of the write buffer. However, any progress made writing data to the socket
will restart the timer associated with this timeout. This means that the total grace period for
a socket in this state will be
<total_time_waiting_for_write_buffer_flushes>+<delayed_close_timeout>.
Delaying Envoy's connection close and giving the peer the opportunity to initiate the close
sequence mitigates a race condition that exists when downstream clients do not drain/process
data in a connection's receive buffer after a remote close has been detected via a socket
write(). This race leads to such clients failing to process the response code sent by Envoy,
which could result in erroneous downstream processing.
If the timeout triggers, Envoy will close the connection's socket.
The default timeout is 1000 ms if this option is not specified.
.. NOTE::
To be useful in avoiding the race condition described above, this timeout must be set
to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for
a reasonable "worst" case processing time for a full iteration of Envoy's event loop>.
.. WARNING::
A value of 0 will completely disable delayed close processing. When disabled, the downstream
connection's socket will be closed immediately after the write flush is completed or will
never close if the write flush does not complete.
.google.protobuf.Duration delayed_close_timeout = 26;List<AccessLog> getAccessLogList()
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.
repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;AccessLog getAccessLog(int index)
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.
repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;int getAccessLogCount()
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.
repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;List<? extends AccessLogOrBuilder> getAccessLogOrBuilderList()
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.
repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;AccessLogOrBuilder getAccessLogOrBuilder(int index)
Configuration for :ref:`HTTP access logs <arch_overview_access_logs>` emitted by the connection manager.
repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;boolean hasUseRemoteAddress()
If set to true, the connection manager will use the real remote address of the client connection when determining internal versus external origin and manipulating various headers. If set to false or absent, the connection manager will use the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. See the documentation for :ref:`config_http_conn_man_headers_x-forwarded-for`, :ref:`config_http_conn_man_headers_x-envoy-internal`, and :ref:`config_http_conn_man_headers_x-envoy-external-address` for more information.
.google.protobuf.BoolValue use_remote_address = 14 [(.udpa.annotations.security) = { ... }com.google.protobuf.BoolValue getUseRemoteAddress()
If set to true, the connection manager will use the real remote address of the client connection when determining internal versus external origin and manipulating various headers. If set to false or absent, the connection manager will use the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. See the documentation for :ref:`config_http_conn_man_headers_x-forwarded-for`, :ref:`config_http_conn_man_headers_x-envoy-internal`, and :ref:`config_http_conn_man_headers_x-envoy-external-address` for more information.
.google.protobuf.BoolValue use_remote_address = 14 [(.udpa.annotations.security) = { ... }com.google.protobuf.BoolValueOrBuilder getUseRemoteAddressOrBuilder()
If set to true, the connection manager will use the real remote address of the client connection when determining internal versus external origin and manipulating various headers. If set to false or absent, the connection manager will use the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. See the documentation for :ref:`config_http_conn_man_headers_x-forwarded-for`, :ref:`config_http_conn_man_headers_x-envoy-internal`, and :ref:`config_http_conn_man_headers_x-envoy-external-address` for more information.
.google.protobuf.BoolValue use_remote_address = 14 [(.udpa.annotations.security) = { ... }int getXffNumTrustedHops()
The number of additional ingress proxy hops from the right side of the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header to trust when determining the origin client's IP address. The default is zero if this option is not specified. See the documentation for :ref:`config_http_conn_man_headers_x-forwarded-for` for more information.
uint32 xff_num_trusted_hops = 19;boolean hasInternalAddressConfig()
Configures what network addresses are considered internal for stats and header sanitation purposes. If unspecified, only RFC1918 IP addresses will be considered internal. See the documentation for :ref:`config_http_conn_man_headers_x-envoy-internal` for more information about internal/external addresses.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfig internal_address_config = 25;HttpConnectionManager.InternalAddressConfig getInternalAddressConfig()
Configures what network addresses are considered internal for stats and header sanitation purposes. If unspecified, only RFC1918 IP addresses will be considered internal. See the documentation for :ref:`config_http_conn_man_headers_x-envoy-internal` for more information about internal/external addresses.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfig internal_address_config = 25;HttpConnectionManager.InternalAddressConfigOrBuilder getInternalAddressConfigOrBuilder()
Configures what network addresses are considered internal for stats and header sanitation purposes. If unspecified, only RFC1918 IP addresses will be considered internal. See the documentation for :ref:`config_http_conn_man_headers_x-envoy-internal` for more information about internal/external addresses.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfig internal_address_config = 25;boolean getSkipXffAppend()
If set, Envoy will not append the remote address to the :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. This may be used in conjunction with HTTP filters that explicitly manipulate XFF after the HTTP connection manager has mutated the request headers. While :ref:`use_remote_address <envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>` will also suppress XFF addition, it has consequences for logging and other Envoy uses of the remote address, so *skip_xff_append* should be used when only an elision of XFF addition is intended.
bool skip_xff_append = 21;String getVia()
Via header value to append to request and response headers. If this is empty, no via header will be appended.
string via = 22;com.google.protobuf.ByteString getViaBytes()
Via header value to append to request and response headers. If this is empty, no via header will be appended.
string via = 22;boolean hasGenerateRequestId()
Whether the connection manager will generate the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if it does not exist. This defaults to true. Generating a random UUID4 is expensive so in high throughput scenarios where this feature is not desired it can be disabled.
.google.protobuf.BoolValue generate_request_id = 15;com.google.protobuf.BoolValue getGenerateRequestId()
Whether the connection manager will generate the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if it does not exist. This defaults to true. Generating a random UUID4 is expensive so in high throughput scenarios where this feature is not desired it can be disabled.
.google.protobuf.BoolValue generate_request_id = 15;com.google.protobuf.BoolValueOrBuilder getGenerateRequestIdOrBuilder()
Whether the connection manager will generate the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if it does not exist. This defaults to true. Generating a random UUID4 is expensive so in high throughput scenarios where this feature is not desired it can be disabled.
.google.protobuf.BoolValue generate_request_id = 15;boolean getPreserveExternalRequestId()
Whether the connection manager will keep the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header if passed for a request that is edge (Edge request is the request from external clients to front Envoy) and not reset it, which is the current Envoy behaviour. This defaults to false.
bool preserve_external_request_id = 32;boolean getAlwaysSetRequestIdInResponse()
If set, Envoy will always set :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header in response. If this is false or not set, the request ID is returned in responses only if tracing is forced using :ref:`x-envoy-force-trace <config_http_conn_man_headers_x-envoy-force-trace>` header.
bool always_set_request_id_in_response = 37;int getForwardClientCertDetailsValue()
How to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP header.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ForwardClientCertDetails forward_client_cert_details = 16 [(.validate.rules) = { ... }HttpConnectionManager.ForwardClientCertDetails getForwardClientCertDetails()
How to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP header.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ForwardClientCertDetails forward_client_cert_details = 16 [(.validate.rules) = { ... }boolean hasSetCurrentClientCertDetails()
This field is valid only when :ref:`forward_client_cert_details <envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>` is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS. It specifies the fields in the client certificate to be forwarded. Note that in the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` header, *Hash* is always set, and *By* is always set when the client certificate presents the URI type Subject Alternative Name value.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.SetCurrentClientCertDetails set_current_client_cert_details = 17;HttpConnectionManager.SetCurrentClientCertDetails getSetCurrentClientCertDetails()
This field is valid only when :ref:`forward_client_cert_details <envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>` is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS. It specifies the fields in the client certificate to be forwarded. Note that in the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` header, *Hash* is always set, and *By* is always set when the client certificate presents the URI type Subject Alternative Name value.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.SetCurrentClientCertDetails set_current_client_cert_details = 17;HttpConnectionManager.SetCurrentClientCertDetailsOrBuilder getSetCurrentClientCertDetailsOrBuilder()
This field is valid only when :ref:`forward_client_cert_details <envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>` is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS. It specifies the fields in the client certificate to be forwarded. Note that in the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` header, *Hash* is always set, and *By* is always set when the client certificate presents the URI type Subject Alternative Name value.
.envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.SetCurrentClientCertDetails set_current_client_cert_details = 17;boolean getProxy100Continue()
If proxy_100_continue is true, Envoy will proxy incoming "Expect: 100-continue" headers upstream, and forward "100 Continue" responses downstream. If this is false or not set, Envoy will instead strip the "Expect: 100-continue" header, and send a "100 Continue" response itself.
bool proxy_100_continue = 18;boolean getRepresentIpv4RemoteAddressAsIpv4MappedIpv6()
If :ref:`use_remote_address <envoy_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>` is true and represent_ipv4_remote_address_as_ipv4_mapped_ipv6 is true and the remote address is an IPv4 address, the address will be mapped to IPv6 before it is appended to *x-forwarded-for*. This is useful for testing compatibility of upstream services that parse the header value. For example, 50.0.0.1 is represented as ::FFFF:50.0.0.1. See `IPv4-Mapped IPv6 Addresses <https://tools.ietf.org/html/rfc4291#section-2.5.5.2>`_ for details. This will also affect the :ref:`config_http_conn_man_headers_x-envoy-external-address` header. See :ref:`http_connection_manager.represent_ipv4_remote_address_as_ipv4_mapped_ipv6 <config_http_conn_man_runtime_represent_ipv4_remote_address_as_ipv4_mapped_ipv6>` for runtime control. [#not-implemented-hide:]
bool represent_ipv4_remote_address_as_ipv4_mapped_ipv6 = 20;List<HttpConnectionManager.UpgradeConfig> getUpgradeConfigsList()
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;HttpConnectionManager.UpgradeConfig getUpgradeConfigs(int index)
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;int getUpgradeConfigsCount()
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;List<? extends HttpConnectionManager.UpgradeConfigOrBuilder> getUpgradeConfigsOrBuilderList()
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;HttpConnectionManager.UpgradeConfigOrBuilder getUpgradeConfigsOrBuilder(int index)
repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;boolean hasNormalizePath()
Should paths be normalized according to RFC 3986 before any processing of requests by HTTP filters or routing? This affects the upstream *:path* header as well. For paths that fail this check, Envoy will respond with 400 to paths that are malformed. This defaults to false currently but will default true in the future. When not specified, this value may be overridden by the runtime variable :ref:`http_connection_manager.normalize_path<config_http_conn_man_runtime_normalize_path>`. See `Normalization and Comparison <https://tools.ietf.org/html/rfc3986#section-6>`_ for details of normalization. Note that Envoy does not perform `case normalization <https://tools.ietf.org/html/rfc3986#section-6.2.2.1>`_
.google.protobuf.BoolValue normalize_path = 30;com.google.protobuf.BoolValue getNormalizePath()
Should paths be normalized according to RFC 3986 before any processing of requests by HTTP filters or routing? This affects the upstream *:path* header as well. For paths that fail this check, Envoy will respond with 400 to paths that are malformed. This defaults to false currently but will default true in the future. When not specified, this value may be overridden by the runtime variable :ref:`http_connection_manager.normalize_path<config_http_conn_man_runtime_normalize_path>`. See `Normalization and Comparison <https://tools.ietf.org/html/rfc3986#section-6>`_ for details of normalization. Note that Envoy does not perform `case normalization <https://tools.ietf.org/html/rfc3986#section-6.2.2.1>`_
.google.protobuf.BoolValue normalize_path = 30;com.google.protobuf.BoolValueOrBuilder getNormalizePathOrBuilder()
Should paths be normalized according to RFC 3986 before any processing of requests by HTTP filters or routing? This affects the upstream *:path* header as well. For paths that fail this check, Envoy will respond with 400 to paths that are malformed. This defaults to false currently but will default true in the future. When not specified, this value may be overridden by the runtime variable :ref:`http_connection_manager.normalize_path<config_http_conn_man_runtime_normalize_path>`. See `Normalization and Comparison <https://tools.ietf.org/html/rfc3986#section-6>`_ for details of normalization. Note that Envoy does not perform `case normalization <https://tools.ietf.org/html/rfc3986#section-6.2.2.1>`_
.google.protobuf.BoolValue normalize_path = 30;boolean getMergeSlashes()
Determines if adjacent slashes in the path are merged into one before any processing of requests by HTTP filters or routing. This affects the upstream *:path* header as well. Without setting this option, incoming requests with path `//dir///file` will not match against route with `prefix` match set to `/dir`. Defaults to `false`. Note that slash merging is not part of `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience.
bool merge_slashes = 33;boolean hasRequestIdExtension()
The configuration of the request ID extension. This includes operations such as generation, validation, and associated tracing operations. If not set, Envoy uses the default UUID-based behavior: 1. Request ID is propagated using *x-request-id* header. 2. Request ID is a universally unique identifier (UUID). 3. Tracing decision (sampled, forced, etc) is set in 14th byte of the UUID.
.envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 36;RequestIDExtension getRequestIdExtension()
The configuration of the request ID extension. This includes operations such as generation, validation, and associated tracing operations. If not set, Envoy uses the default UUID-based behavior: 1. Request ID is propagated using *x-request-id* header. 2. Request ID is a universally unique identifier (UUID). 3. Tracing decision (sampled, forced, etc) is set in 14th byte of the UUID.
.envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 36;RequestIDExtensionOrBuilder getRequestIdExtensionOrBuilder()
The configuration of the request ID extension. This includes operations such as generation, validation, and associated tracing operations. If not set, Envoy uses the default UUID-based behavior: 1. Request ID is propagated using *x-request-id* header. 2. Request ID is a universally unique identifier (UUID). 3. Tracing decision (sampled, forced, etc) is set in 14th byte of the UUID.
.envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 36;boolean hasLocalReplyConfig()
The configuration to customize local reply returned by Envoy. It can customize status code, body text and response content type. If not specified, status code and text body are hard coded in Envoy, the response content type is plain text.
.envoy.extensions.filters.network.http_connection_manager.v3.LocalReplyConfig local_reply_config = 38;LocalReplyConfig getLocalReplyConfig()
The configuration to customize local reply returned by Envoy. It can customize status code, body text and response content type. If not specified, status code and text body are hard coded in Envoy, the response content type is plain text.
.envoy.extensions.filters.network.http_connection_manager.v3.LocalReplyConfig local_reply_config = 38;LocalReplyConfigOrBuilder getLocalReplyConfigOrBuilder()
The configuration to customize local reply returned by Envoy. It can customize status code, body text and response content type. If not specified, status code and text body are hard coded in Envoy, the response content type is plain text.
.envoy.extensions.filters.network.http_connection_manager.v3.LocalReplyConfig local_reply_config = 38;boolean getStripMatchingHostPort()
Determines if the port part should be removed from host/authority header before any processing of request by HTTP filters or routing. The port would be removed only if it is equal to the :ref:`listener's<envoy_api_field_config.listener.v3.Listener.address>` local port and request method is not CONNECT. This affects the upstream host header as well. Without setting this option, incoming requests with host `example:443` will not match against route with :ref:`domains<envoy_api_field_config.route.v3.VirtualHost.domains>` match set to `example`. Defaults to `false`. Note that port removal is not part of `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience. Only one of `strip_matching_host_port` or `strip_any_host_port` can be set.
bool strip_matching_host_port = 39 [(.udpa.annotations.field_migrate) = { ... }boolean getStripAnyHostPort()
Determines if the port part should be removed from host/authority header before any processing of request by HTTP filters or routing. The port would be removed only if request method is not CONNECT. This affects the upstream host header as well. Without setting this option, incoming requests with host `example:443` will not match against route with :ref:`domains<envoy_api_field_config.route.v3.VirtualHost.domains>` match set to `example`. Defaults to `false`. Note that port removal is not part of `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience. Only one of `strip_matching_host_port` or `strip_any_host_port` can be set.
bool strip_any_host_port = 42;boolean hasStreamErrorOnInvalidHttpMessage()
Governs Envoy's behavior when receiving invalid HTTP from downstream. If this option is false (default), Envoy will err on the conservative side handling HTTP errors, terminating both HTTP/1.1 and HTTP/2 connections when receiving an invalid request. If this option is set to true, Envoy will be more permissive, only resetting the invalid stream in the case of HTTP/2 and leaving the connection open where possible (if the entire request is read for HTTP/1.1) In general this should be true for deployments receiving trusted traffic (L2 Envoys, company-internal mesh) and false when receiving untrusted traffic (edge deployments). If different behaviors for invalid_http_message for HTTP/1 and HTTP/2 are desired, one should use the new HTTP/1 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.override_stream_error_on_invalid_http_message>` or the new HTTP/2 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.override_stream_error_on_invalid_http_message>` *not* the deprecated but similarly named :ref:`stream_error_on_invalid_http_messaging <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.stream_error_on_invalid_http_messaging>`
.google.protobuf.BoolValue stream_error_on_invalid_http_message = 40;com.google.protobuf.BoolValue getStreamErrorOnInvalidHttpMessage()
Governs Envoy's behavior when receiving invalid HTTP from downstream. If this option is false (default), Envoy will err on the conservative side handling HTTP errors, terminating both HTTP/1.1 and HTTP/2 connections when receiving an invalid request. If this option is set to true, Envoy will be more permissive, only resetting the invalid stream in the case of HTTP/2 and leaving the connection open where possible (if the entire request is read for HTTP/1.1) In general this should be true for deployments receiving trusted traffic (L2 Envoys, company-internal mesh) and false when receiving untrusted traffic (edge deployments). If different behaviors for invalid_http_message for HTTP/1 and HTTP/2 are desired, one should use the new HTTP/1 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.override_stream_error_on_invalid_http_message>` or the new HTTP/2 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.override_stream_error_on_invalid_http_message>` *not* the deprecated but similarly named :ref:`stream_error_on_invalid_http_messaging <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.stream_error_on_invalid_http_messaging>`
.google.protobuf.BoolValue stream_error_on_invalid_http_message = 40;com.google.protobuf.BoolValueOrBuilder getStreamErrorOnInvalidHttpMessageOrBuilder()
Governs Envoy's behavior when receiving invalid HTTP from downstream. If this option is false (default), Envoy will err on the conservative side handling HTTP errors, terminating both HTTP/1.1 and HTTP/2 connections when receiving an invalid request. If this option is set to true, Envoy will be more permissive, only resetting the invalid stream in the case of HTTP/2 and leaving the connection open where possible (if the entire request is read for HTTP/1.1) In general this should be true for deployments receiving trusted traffic (L2 Envoys, company-internal mesh) and false when receiving untrusted traffic (edge deployments). If different behaviors for invalid_http_message for HTTP/1 and HTTP/2 are desired, one should use the new HTTP/1 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.override_stream_error_on_invalid_http_message>` or the new HTTP/2 option :ref:`override_stream_error_on_invalid_http_message <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.override_stream_error_on_invalid_http_message>` *not* the deprecated but similarly named :ref:`stream_error_on_invalid_http_messaging <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.stream_error_on_invalid_http_messaging>`
.google.protobuf.BoolValue stream_error_on_invalid_http_message = 40;HttpConnectionManager.RouteSpecifierCase getRouteSpecifierCase()
HttpConnectionManager.StripPortModeCase getStripPortModeCase()
Copyright © 2018–2021 The Envoy Project. All rights reserved.