Shadowing

Package: shadowing.options.gloo.solo.io

Types:

Source File: github.com/solo-io/gloo/projects/gloo/api/v1/options/shadowing/shadowing.proto


RouteShadowing

Specifies traffic shadowing configuration for the associated route. If set, Envoy will send a portion of the route’s traffic to the shadowed upstream. This can be a useful way to preview a new service’s behavior before putting the service in the critical path. Note that this plugin is only applicable to routes with upstream destinations (not redirect or direct response routes). See here for additional information on Envoy’s shadowing capabilities: https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/route/v3/route.proto#envoy-api-msg-route-routeaction-requestmirrorpolicy

"upstream": .core.solo.io.ResourceRef
"percentage": float
"disableShadowHostSuffixAppend": bool
"hostRewriteLiteral": string

Field Type Description
upstream .core.solo.io.ResourceRef The upstream to which the shadowed traffic should be sent.
percentage float This should be a value between 0.0 and 100.0, with up to 6 significant digits.
disableShadowHostSuffixAppend bool If true, the host/authority header of the shadow request will not have -shadow appended. Useful when the shadow destination has strict host-based routing rules that would reject the modified header. See https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/route/v3/route_components.proto#envoy-v3-api-field-config-route-v3-routeaction-requestmirrorpolicy-disable-shadow-host-suffix-append.
hostRewriteLiteral string If set, the host/authority header of the shadow request is replaced with this value. The whole value is replaced, so include a port if the shadow destination needs one. Implies disable_shadow_host_suffix_append. Requires Envoy 1.36 or newer. See https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/route/v3/route_components.proto#envoy-v3-api-field-config-route-v3-routeaction-requestmirrorpolicy-host-rewrite-literal.