|
|
|
@ -91,11 +91,11 @@ message VirtualHost { |
|
|
|
|
|
|
|
|
|
// The list of routes that will be matched, in order, for incoming requests. |
|
|
|
|
// The first route that matches will be used. |
|
|
|
|
// Only one of this and `matcher` can be specified. |
|
|
|
|
// Only one of this and ``matcher`` can be specified. |
|
|
|
|
repeated Route routes = 3; |
|
|
|
|
|
|
|
|
|
// [#next-major-version: This should be included in a oneof with routes wrapped in a message.] |
|
|
|
|
// The match tree to use when resolving route actions for incoming requests. Only one of this and `routes` |
|
|
|
|
// The match tree to use when resolving route actions for incoming requests. Only one of this and ``routes`` |
|
|
|
|
// can be specified. |
|
|
|
|
xds.type.matcher.v3.Matcher matcher = 21 |
|
|
|
|
[(xds.annotations.v3.field_status).work_in_progress = true]; |
|
|
|
@ -769,7 +769,7 @@ message RouteAction { |
|
|
|
|
|
|
|
|
|
// If not specified, all requests to the target cluster will be mirrored. |
|
|
|
|
// |
|
|
|
|
// If specified, this field takes precedence over the `runtime_key` field and requests must also |
|
|
|
|
// If specified, this field takes precedence over the ``runtime_key`` field and requests must also |
|
|
|
|
// fall under the percentage of matches indicated by this field. |
|
|
|
|
// |
|
|
|
|
// For some fraction N/D, a random number in the range [0,D) is selected. If the |
|
|
|
@ -954,10 +954,10 @@ message RouteAction { |
|
|
|
|
// If present, and the request contains a `grpc-timeout header |
|
|
|
|
// <https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-HTTP2.md>`_, use that value as the |
|
|
|
|
// *max_stream_duration*, but limit the applied timeout to the maximum value specified here. |
|
|
|
|
// If set to 0, the `grpc-timeout` header is used without modification. |
|
|
|
|
// If set to 0, the ``grpc-timeout`` header is used without modification. |
|
|
|
|
google.protobuf.Duration grpc_timeout_header_max = 2; |
|
|
|
|
|
|
|
|
|
// If present, Envoy will adjust the timeout provided by the `grpc-timeout` header by |
|
|
|
|
// If present, Envoy will adjust the timeout provided by the ``grpc-timeout`` header by |
|
|
|
|
// subtracting the provided duration from the header. This is useful for allowing Envoy to set |
|
|
|
|
// its global timeout to be less than that of the deadline imposed by the calling client, which |
|
|
|
|
// makes it more likely that Envoy will handle the timeout instead of having the call canceled |
|
|
|
@ -1186,7 +1186,7 @@ message RouteAction { |
|
|
|
|
// regex: "^/(.+)/.+$" |
|
|
|
|
// substitution: \1 |
|
|
|
|
// |
|
|
|
|
// Would rewrite the host header to `envoyproxy.io` given the path `/envoyproxy.io/some/path`. |
|
|
|
|
// Would rewrite the host header to ``envoyproxy.io`` given the path ``/envoyproxy.io/some/path``. |
|
|
|
|
type.matcher.v3.RegexMatchAndSubstitute host_rewrite_path_regex = 35; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -1297,7 +1297,7 @@ message RouteAction { |
|
|
|
|
// or its default value (infinity) instead of |
|
|
|
|
// :ref:`timeout <envoy_v3_api_field_config.route.v3.RouteAction.timeout>`, but limit the applied timeout |
|
|
|
|
// to the maximum value specified here. If configured as 0, the maximum allowed timeout for |
|
|
|
|
// gRPC requests is infinity. If not configured at all, the `grpc-timeout` header is not used |
|
|
|
|
// gRPC requests is infinity. If not configured at all, the ``grpc-timeout`` header is not used |
|
|
|
|
// and gRPC requests time out like any other requests using |
|
|
|
|
// :ref:`timeout <envoy_v3_api_field_config.route.v3.RouteAction.timeout>` or its default. |
|
|
|
|
// This can be used to prevent unexpected upstream request timeouts due to potentially long |
|
|
|
@ -1315,7 +1315,7 @@ message RouteAction { |
|
|
|
|
[deprecated = true, (envoy.annotations.deprecated_at_minor_version) = "3.0"]; |
|
|
|
|
|
|
|
|
|
// Deprecated by :ref:`grpc_timeout_header_offset <envoy_v3_api_field_config.route.v3.RouteAction.MaxStreamDuration.grpc_timeout_header_offset>`. |
|
|
|
|
// If present, Envoy will adjust the timeout provided by the `grpc-timeout` header by subtracting |
|
|
|
|
// If present, Envoy will adjust the timeout provided by the ``grpc-timeout`` header by subtracting |
|
|
|
|
// the provided duration from the header. This is useful in allowing Envoy to set its global |
|
|
|
|
// timeout to be less than that of the deadline imposed by the calling client, which makes it more |
|
|
|
|
// likely that Envoy will handle the timeout instead of having the call canceled by the client. |
|
|
|
@ -1418,8 +1418,8 @@ message RetryPolicy { |
|
|
|
|
}]; |
|
|
|
|
|
|
|
|
|
// Specifies the maximum interval between retries. This parameter is optional, but must be |
|
|
|
|
// greater than or equal to the `base_interval` if set. The default is 10 times the |
|
|
|
|
// `base_interval`. See :ref:`config_http_filters_router_x-envoy-max-retries` for a discussion |
|
|
|
|
// greater than or equal to the ``base_interval`` if set. The default is 10 times the |
|
|
|
|
// ``base_interval``. See :ref:`config_http_filters_router_x-envoy-max-retries` for a discussion |
|
|
|
|
// of Envoy's back-off algorithm. |
|
|
|
|
google.protobuf.Duration max_interval = 2 [(validate.rules).duration = {gt {}}]; |
|
|
|
|
} |
|
|
|
@ -1564,7 +1564,7 @@ message RetryPolicy { |
|
|
|
|
|
|
|
|
|
// Specifies parameters that control exponential retry back off. This parameter is optional, in which case the |
|
|
|
|
// default base interval is 25 milliseconds or, if set, the current value of the |
|
|
|
|
// `upstream.base_retry_backoff_ms` runtime parameter. The default maximum interval is 10 times |
|
|
|
|
// ``upstream.base_retry_backoff_ms`` runtime parameter. The default maximum interval is 10 times |
|
|
|
|
// the base interval. The documentation for :ref:`config_http_filters_router_x-envoy-max-retries` |
|
|
|
|
// describes Envoy's back-off algorithm. |
|
|
|
|
RetryBackOff retry_back_off = 8; |
|
|
|
@ -1574,7 +1574,7 @@ message RetryPolicy { |
|
|
|
|
// return a response header like ``Retry-After`` or ``X-RateLimit-Reset`` to |
|
|
|
|
// provide feedback to the client on how long to wait before retrying. If |
|
|
|
|
// configured, this back-off strategy will be used instead of the |
|
|
|
|
// default exponential back off strategy (configured using `retry_back_off`) |
|
|
|
|
// default exponential back off strategy (configured using ``retry_back_off``) |
|
|
|
|
// whenever a response includes the matching headers. |
|
|
|
|
RateLimitedRetryBackOff rate_limited_retry_back_off = 11; |
|
|
|
|
|
|
|
|
@ -1641,10 +1641,10 @@ message RedirectAction { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// When the scheme redirection take place, the following rules apply: |
|
|
|
|
// 1. If the source URI scheme is `http` and the port is explicitly |
|
|
|
|
// set to `:80`, the port will be removed after the redirection |
|
|
|
|
// 2. If the source URI scheme is `https` and the port is explicitly |
|
|
|
|
// set to `:443`, the port will be removed after the redirection |
|
|
|
|
// 1. If the source URI scheme is ``http`` and the port is explicitly |
|
|
|
|
// set to ``:80``, the port will be removed after the redirection |
|
|
|
|
// 2. If the source URI scheme is ``https`` and the port is explicitly |
|
|
|
|
// set to ``:443``, the port will be removed after the redirection |
|
|
|
|
oneof scheme_rewrite_specifier { |
|
|
|
|
// The scheme portion of the URL will be swapped with "https". |
|
|
|
|
bool https_redirect = 4; |
|
|
|
@ -1827,7 +1827,7 @@ message VirtualCluster { |
|
|
|
|
reserved "pattern", "method"; |
|
|
|
|
|
|
|
|
|
// Specifies a list of header matchers to use for matching requests. Each specified header must |
|
|
|
|
// match. The pseudo-headers `:path` and `:method` can be used to match the request path and |
|
|
|
|
// match. The pseudo-headers ``:path`` and ``:method`` can be used to match the request path and |
|
|
|
|
// method, respectively. |
|
|
|
|
repeated HeaderMatcher headers = 4; |
|
|
|
|
|
|
|
|
@ -1925,14 +1925,14 @@ message RateLimit { |
|
|
|
|
message MaskedRemoteAddress { |
|
|
|
|
// Length of prefix mask len for IPv4 (e.g. 0, 32). |
|
|
|
|
// Defaults to 32 when unset. |
|
|
|
|
// For example, trusted address from x-forwarded-for is `192.168.1.1`, |
|
|
|
|
// For example, trusted address from x-forwarded-for is ``192.168.1.1``, |
|
|
|
|
// the descriptor entry is ("masked_remote_address", "192.168.1.1/32"); |
|
|
|
|
// if mask len is 24, the descriptor entry is ("masked_remote_address", "192.168.1.0/24"). |
|
|
|
|
google.protobuf.UInt32Value v4_prefix_mask_len = 1 [(validate.rules).uint32 = {lte: 32}]; |
|
|
|
|
|
|
|
|
|
// Length of prefix mask len for IPv6 (e.g. 0, 128). |
|
|
|
|
// Defaults to 128 when unset. |
|
|
|
|
// For example, trusted address from x-forwarded-for is `2001:abcd:ef01:2345:6789:abcd:ef01:234`, |
|
|
|
|
// For example, trusted address from x-forwarded-for is ``2001:abcd:ef01:2345:6789:abcd:ef01:234``, |
|
|
|
|
// the descriptor entry is ("masked_remote_address", "2001:abcd:ef01:2345:6789:abcd:ef01:234/128"); |
|
|
|
|
// if mask len is 64, the descriptor entry is ("masked_remote_address", "2001:abcd:ef01:2345::/64"). |
|
|
|
|
google.protobuf.UInt32Value v6_prefix_mask_len = 2 [(validate.rules).uint32 = {lte: 128}]; |
|
|
|
@ -1964,7 +1964,7 @@ message RateLimit { |
|
|
|
|
option (udpa.annotations.versioning).previous_message_type = |
|
|
|
|
"envoy.api.v2.route.RateLimit.Action.HeaderValueMatch"; |
|
|
|
|
|
|
|
|
|
// The key to use in the descriptor entry. Defaults to `header_match`. |
|
|
|
|
// The key to use in the descriptor entry. Defaults to ``header_match``. |
|
|
|
|
string descriptor_key = 4; |
|
|
|
|
|
|
|
|
|
// The value to use in the descriptor entry. |
|
|
|
|