Stateful session filter (proto)

This extension has the qualified name envoy.filters.http.stateful_session

Note

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:

This extension must be configured with one of the following type URLs:

Stateful session configuration overview.

extensions.filters.http.stateful_session.v3.StatefulSession

[extensions.filters.http.stateful_session.v3.StatefulSession proto]

{
  "session_state": {...},
  "strict": ...,
  "stat_prefix": ...,
  "status_on_strict_destination_not_found": ...
}
session_state

(config.core.v3.TypedExtensionConfig) Specifies the implementation of session state. This session state is used to store and retrieve the address of the upstream host assigned to the session.

strict

(bool) Determines whether the HTTP request must be strictly routed to the requested destination. When set to true, if the requested destination is not found in the set of available endpoints, Envoy will return a status code determined by status_on_strict_destination_not_found. If the destination exists but is unhealthy, Envoy will always return 503 regardless of status_on_strict_destination_not_found. The default value is false, which allows Envoy to fall back to its load balancing mechanism and route the request according to the load balancing algorithm.

stat_prefix

(string) Optional stat prefix. If specified, the filter will emit statistics in the http.<stat_prefix>.stateful_session.<stat_prefix>. namespace. If not specified, no statistics will be emitted.

Note

Per-route configuration overrides do not support statistics and will not emit stats even if this field is set in the per-route config.

status_on_strict_destination_not_found

(uint32) The HTTP status code to return when strict mode is enabled and the requested destination is not found in the set of available endpoints. This does not apply when the destination exists but is unhealthy. This field has no effect when strict is set to false and will be ignored. Defaults to 503 (Service Unavailable) if not specified or set to 0.

extensions.filters.http.stateful_session.v3.StatefulSessionPerRoute

[extensions.filters.http.stateful_session.v3.StatefulSessionPerRoute proto]

{
  "disabled": ...,
  "stateful_session": {...}
}
disabled

(bool) Disable the stateful session filter for this particular vhost or route. If disabled is specified in multiple per-filter-configs, the most specific one will be used.

Precisely one of disabled, stateful_session must be set.

stateful_session

(extensions.filters.http.stateful_session.v3.StatefulSession) Per-route stateful session configuration that can be served by RDS or static route table.

Precisely one of disabled, stateful_session must be set.