routerv3

package
v1.33.0-20240426201503... Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: unknown License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_envoy_extensions_filters_http_router_v3_router_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Router

type Router struct {

	// Whether the router generates dynamic cluster statistics. Defaults to
	// true. Can be disabled in high performance scenarios.
	DynamicStats *wrapperspb.BoolValue `protobuf:"bytes,1,opt,name=dynamic_stats,json=dynamicStats,proto3" json:"dynamic_stats,omitempty"`
	// Whether to start a child span for egress routed calls. This can be
	// useful in scenarios where other filters (auth, ratelimit, etc.) make
	// outbound calls and have child spans rooted at the same ingress
	// parent. Defaults to false.
	//
	// .. attention::
	//
	//	This field is deprecated by the
	//	:ref:`spawn_upstream_span <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing.spawn_upstream_span>`.
	//	Please use that “spawn_upstream_span“ field to control the span creation.
	//
	// Deprecated: Marked as deprecated in envoy/extensions/filters/http/router/v3/router.proto.
	StartChildSpan bool `protobuf:"varint,2,opt,name=start_child_span,json=startChildSpan,proto3" json:"start_child_span,omitempty"`
	// Configuration for HTTP upstream logs emitted by the router. Upstream logs
	// are configured in the same way as access logs, but each log entry represents
	// an upstream request. Presuming retries are configured, multiple upstream
	// requests may be made for each downstream (inbound) request.
	UpstreamLog []*v3.AccessLog `protobuf:"bytes,3,rep,name=upstream_log,json=upstreamLog,proto3" json:"upstream_log,omitempty"`
	// Additional upstream access log options.
	UpstreamLogOptions *Router_UpstreamAccessLogOptions `protobuf:"bytes,9,opt,name=upstream_log_options,json=upstreamLogOptions,proto3" json:"upstream_log_options,omitempty"`
	// Do not add any additional “x-envoy-“ headers to requests or responses. This
	// only affects the :ref:`router filter generated x-envoy- headers
	// <config_http_filters_router_headers_set>`, other Envoy filters and the HTTP
	// connection manager may continue to set “x-envoy-“ headers.
	SuppressEnvoyHeaders bool `protobuf:"varint,4,opt,name=suppress_envoy_headers,json=suppressEnvoyHeaders,proto3" json:"suppress_envoy_headers,omitempty"`
	// Specifies a list of HTTP headers to strictly validate. Envoy will reject a
	// request and respond with HTTP status 400 if the request contains an invalid
	// value for any of the headers listed in this field. Strict header checking
	// is only supported for the following headers:
	//
	// Value must be a ','-delimited list (i.e. no spaces) of supported retry
	// policy values:
	//
	// * :ref:`config_http_filters_router_x-envoy-retry-grpc-on`
	// * :ref:`config_http_filters_router_x-envoy-retry-on`
	//
	// Value must be an integer:
	//
	// * :ref:`config_http_filters_router_x-envoy-max-retries`
	// * :ref:`config_http_filters_router_x-envoy-upstream-rq-timeout-ms`
	// * :ref:`config_http_filters_router_x-envoy-upstream-rq-per-try-timeout-ms`
	StrictCheckHeaders []string `protobuf:"bytes,5,rep,name=strict_check_headers,json=strictCheckHeaders,proto3" json:"strict_check_headers,omitempty"`
	// If not set, ingress Envoy will ignore
	// :ref:`config_http_filters_router_x-envoy-expected-rq-timeout-ms` header, populated by egress
	// Envoy, when deriving timeout for upstream cluster.
	RespectExpectedRqTimeout bool `` /* 138-byte string literal not displayed */
	// If set, Envoy will avoid incrementing HTTP failure code stats
	// on gRPC requests. This includes the individual status code value
	// (e.g. upstream_rq_504) and group stats (e.g. upstream_rq_5xx).
	// This field is useful if interested in relying only on the gRPC
	// stats filter to define success and failure metrics for gRPC requests
	// as not all failed gRPC requests charge HTTP status code metrics. See
	// :ref:`gRPC stats filter<config_http_filters_grpc_stats>` documentation
	// for more details.
	SuppressGrpcRequestFailureCodeStats bool `` /* 175-byte string literal not displayed */
	// .. note::
	//
	//	Upstream HTTP filters are currently in alpha.
	//
	// Optional HTTP filters for the upstream HTTP filter chain.
	//
	// These filters will be applied for all requests that pass through the router.
	// They will also be applied to shadowed requests.
	// Upstream HTTP filters cannot change route or cluster.
	// Upstream HTTP filters specified on the cluster will override these filters.
	//
	// If using upstream HTTP filters, please be aware that local errors sent by
	// upstream HTTP filters will not trigger retries, and local errors sent by
	// upstream HTTP filters will count as a final response if hedging is configured.
	// [#extension-category: envoy.filters.http.upstream]
	UpstreamHttpFilters []*v31.HttpFilter `protobuf:"bytes,8,rep,name=upstream_http_filters,json=upstreamHttpFilters,proto3" json:"upstream_http_filters,omitempty"`
	// contains filtered or unexported fields
}

[#next-free-field: 10]

func (*Router) Descriptor deprecated

func (*Router) Descriptor() ([]byte, []int)

Deprecated: Use Router.ProtoReflect.Descriptor instead.

func (*Router) GetDynamicStats

func (x *Router) GetDynamicStats() *wrapperspb.BoolValue

func (*Router) GetRespectExpectedRqTimeout

func (x *Router) GetRespectExpectedRqTimeout() bool

func (*Router) GetStartChildSpan deprecated

func (x *Router) GetStartChildSpan() bool

Deprecated: Marked as deprecated in envoy/extensions/filters/http/router/v3/router.proto.

func (*Router) GetStrictCheckHeaders

func (x *Router) GetStrictCheckHeaders() []string

func (*Router) GetSuppressEnvoyHeaders

func (x *Router) GetSuppressEnvoyHeaders() bool

func (*Router) GetSuppressGrpcRequestFailureCodeStats

func (x *Router) GetSuppressGrpcRequestFailureCodeStats() bool

func (*Router) GetUpstreamHttpFilters

func (x *Router) GetUpstreamHttpFilters() []*v31.HttpFilter

func (*Router) GetUpstreamLog

func (x *Router) GetUpstreamLog() []*v3.AccessLog

func (*Router) GetUpstreamLogOptions

func (x *Router) GetUpstreamLogOptions() *Router_UpstreamAccessLogOptions

func (*Router) ProtoMessage

func (*Router) ProtoMessage()

func (*Router) ProtoReflect

func (x *Router) ProtoReflect() protoreflect.Message

func (*Router) Reset

func (x *Router) Reset()

func (*Router) String

func (x *Router) String() string

type Router_UpstreamAccessLogOptions

type Router_UpstreamAccessLogOptions struct {

	// If set to true, an upstream access log will be recorded when an upstream stream is
	// associated to an http request. Note: Each HTTP request received for an already established
	// connection will result in an upstream access log record. This includes, for example,
	// consecutive HTTP requests over the same connection or a request that is retried.
	// In case a retry is applied, an upstream access log will be recorded for each retry.
	FlushUpstreamLogOnUpstreamStream bool `` /* 166-byte string literal not displayed */
	// The interval to flush the upstream access logs. By default, the router will flush an upstream
	// access log on stream close, when the HTTP request is complete. If this field is set, the router
	// will flush access logs periodically at the specified interval. This is especially useful in the
	// case of long-lived requests, such as CONNECT and Websockets.
	// The interval must be at least 1 millisecond.
	UpstreamLogFlushInterval *durationpb.Duration `` /* 137-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*Router_UpstreamAccessLogOptions) Descriptor deprecated

func (*Router_UpstreamAccessLogOptions) Descriptor() ([]byte, []int)

Deprecated: Use Router_UpstreamAccessLogOptions.ProtoReflect.Descriptor instead.

func (*Router_UpstreamAccessLogOptions) GetFlushUpstreamLogOnUpstreamStream

func (x *Router_UpstreamAccessLogOptions) GetFlushUpstreamLogOnUpstreamStream() bool

func (*Router_UpstreamAccessLogOptions) GetUpstreamLogFlushInterval

func (x *Router_UpstreamAccessLogOptions) GetUpstreamLogFlushInterval() *durationpb.Duration

func (*Router_UpstreamAccessLogOptions) ProtoMessage

func (*Router_UpstreamAccessLogOptions) ProtoMessage()

func (*Router_UpstreamAccessLogOptions) ProtoReflect

func (*Router_UpstreamAccessLogOptions) Reset

func (*Router_UpstreamAccessLogOptions) String

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL