Documentation ¶
Index ¶
- Constants
- func ConvertActions(ctx context.Context, actions []*gloorl.Action) []*envoyvhostratelimit.RateLimit_Action
- func DetermineFilterStage(rateLimitBeforeAuth bool) plugins.FilterStage
- func GenerateEnvoyConfigForFilterWith(ref core.ResourceRef, domain string, currentState uint32, ...) *envoyratelimit.RateLimit
- type Plugin
- func (p *Plugin) HttpFilters(params plugins.Params, listener *v1.HttpListener) ([]plugins.StagedHttpFilter, error)
- func (p *Plugin) Init(params plugins.InitParams) error
- func (p *Plugin) ProcessRoute(params plugins.RouteParams, in *v1.Route, out *envoyroute.Route) error
- func (p *Plugin) ProcessVirtualHost(params plugins.VirtualHostParams, in *v1.VirtualHost, ...) error
Constants ¶
View Source
const ( ExtensionName = "rate-limit" EnvoyExtensionName = "envoy-rate-limit" CustomDomain = "custom" DefaultTimeout = 100 * time.Millisecond FilterName = "envoy.rate_limit" )
Variables ¶
This section is empty.
Functions ¶
func ConvertActions ¶
func ConvertActions(ctx context.Context, actions []*gloorl.Action) []*envoyvhostratelimit.RateLimit_Action
func DetermineFilterStage ¶ added in v0.21.1
func DetermineFilterStage(rateLimitBeforeAuth bool) plugins.FilterStage
figure out what stage the rate limit plugin should run in given some configuration
func GenerateEnvoyConfigForFilterWith ¶
func GenerateEnvoyConfigForFilterWith(ref core.ResourceRef, domain string, currentState uint32, timeout *time.Duration, denyOnFail bool) *envoyratelimit.RateLimit
Types ¶
type Plugin ¶
type Plugin struct {
// contains filtered or unexported fields
}
func (*Plugin) HttpFilters ¶
func (p *Plugin) HttpFilters(params plugins.Params, listener *v1.HttpListener) ([]plugins.StagedHttpFilter, error)
func (*Plugin) ProcessRoute ¶
func (p *Plugin) ProcessRoute(params plugins.RouteParams, in *v1.Route, out *envoyroute.Route) error
func (*Plugin) ProcessVirtualHost ¶
func (p *Plugin) ProcessVirtualHost(params plugins.VirtualHostParams, in *v1.VirtualHost, out *envoyroute.VirtualHost) error
Click to show internal directories.
Click to hide internal directories.