Documentation ¶
Index ¶
- Variables
- type RateLimit
- func (*RateLimit) Descriptor() ([]byte, []int)deprecated
- func (x *RateLimit) GetDomain() string
- func (x *RateLimit) GetFailureModeDeny() bool
- func (x *RateLimit) GetRateLimitService() *v2.RateLimitServiceConfig
- func (x *RateLimit) GetRateLimitedAsResourceExhausted() bool
- func (x *RateLimit) GetRequestType() string
- func (x *RateLimit) GetStage() uint32
- func (x *RateLimit) GetTimeout() *duration.Duration
- func (*RateLimit) ProtoMessage()
- func (x *RateLimit) ProtoReflect() protoreflect.Message
- func (x *RateLimit) Reset()
- func (x *RateLimit) String() string
- func (m *RateLimit) Validate() error
- func (m *RateLimit) ValidateAll() error
- type RateLimitMultiError
- type RateLimitValidationError
Constants ¶
This section is empty.
Variables ¶
var File_envoy_config_filter_http_rate_limit_v2_rate_limit_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type RateLimit ¶
type RateLimit struct { // The rate limit domain to use when calling the rate limit service. Domain string `protobuf:"bytes,1,opt,name=domain,proto3" json:"domain,omitempty"` // Specifies the rate limit configurations to be applied with the same // stage number. If not set, the default stage number is 0. // // .. note:: // // The filter supports a range of 0 - 10 inclusively for stage numbers. Stage uint32 `protobuf:"varint,2,opt,name=stage,proto3" json:"stage,omitempty"` // The type of requests the filter should apply to. The supported // types are *internal*, *external* or *both*. A request is considered internal if // :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is set to true. If // :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is not set or false, a // request is considered external. The filter defaults to *both*, and it will apply to all request // types. RequestType string `protobuf:"bytes,3,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"` // The timeout in milliseconds for the rate limit service RPC. If not // set, this defaults to 20ms. Timeout *duration.Duration `protobuf:"bytes,4,opt,name=timeout,proto3" json:"timeout,omitempty"` // The filter's behaviour in case the rate limiting service does // not respond back. When it is set to true, Envoy will not allow traffic in case of // communication failure between rate limiting service and the proxy. // Defaults to false. FailureModeDeny bool `protobuf:"varint,5,opt,name=failure_mode_deny,json=failureModeDeny,proto3" json:"failure_mode_deny,omitempty"` // Specifies whether a `RESOURCE_EXHAUSTED` gRPC code must be returned instead // of the default `UNAVAILABLE` gRPC code for a rate limited gRPC call. The // HTTP code will be 200 for a gRPC response. RateLimitedAsResourceExhausted bool `` /* 158-byte string literal not displayed */ // Configuration for an external rate limit service provider. If not // specified, any calls to the rate limit service will immediately return // success. RateLimitService *v2.RateLimitServiceConfig `protobuf:"bytes,7,opt,name=rate_limit_service,json=rateLimitService,proto3" json:"rate_limit_service,omitempty"` // contains filtered or unexported fields }
[#next-free-field: 8]
func (*RateLimit) Descriptor
deprecated
func (*RateLimit) GetFailureModeDeny ¶
func (*RateLimit) GetRateLimitService ¶
func (x *RateLimit) GetRateLimitService() *v2.RateLimitServiceConfig
func (*RateLimit) GetRateLimitedAsResourceExhausted ¶
func (*RateLimit) GetRequestType ¶
func (*RateLimit) GetTimeout ¶
func (*RateLimit) ProtoMessage ¶
func (*RateLimit) ProtoMessage()
func (*RateLimit) ProtoReflect ¶
func (x *RateLimit) ProtoReflect() protoreflect.Message
func (*RateLimit) Validate ¶
Validate checks the field values on RateLimit with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.
func (*RateLimit) ValidateAll ¶
ValidateAll checks the field values on RateLimit with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in RateLimitMultiError, or nil if none found.
type RateLimitMultiError ¶
type RateLimitMultiError []error
RateLimitMultiError is an error wrapping multiple validation errors returned by RateLimit.ValidateAll() if the designated constraints aren't met.
func (RateLimitMultiError) AllErrors ¶
func (m RateLimitMultiError) AllErrors() []error
AllErrors returns a list of validation violation errors.
func (RateLimitMultiError) Error ¶
func (m RateLimitMultiError) Error() string
Error returns a concatenation of all the error messages it wraps.
type RateLimitValidationError ¶
type RateLimitValidationError struct {
// contains filtered or unexported fields
}
RateLimitValidationError is the validation error returned by RateLimit.Validate if the designated constraints aren't met.
func (RateLimitValidationError) Cause ¶
func (e RateLimitValidationError) Cause() error
Cause function returns cause value.
func (RateLimitValidationError) Error ¶
func (e RateLimitValidationError) Error() string
Error satisfies the builtin error interface
func (RateLimitValidationError) ErrorName ¶
func (e RateLimitValidationError) ErrorName() string
ErrorName returns error name.
func (RateLimitValidationError) Field ¶
func (e RateLimitValidationError) Field() string
Field function returns field value.
func (RateLimitValidationError) Key ¶
func (e RateLimitValidationError) Key() bool
Key function returns key value.
func (RateLimitValidationError) Reason ¶
func (e RateLimitValidationError) Reason() string
Reason function returns reason value.