Documentation ¶
Index ¶
- func Module() fx.Option
- func NewEngine(agentInfo *agentinfo.AgentInfo) iface.Engine
- type Engine
- func (e *Engine) GetAgentInfo() *agentinfo.AgentInfo
- func (e *Engine) GetFluxMeter(fluxMeterName string) iface.FluxMeter
- func (e *Engine) GetLoadScheduler(limiterID iface.LimiterID) iface.LoadScheduler
- func (e *Engine) GetRateLimiter(limiterID iface.LimiterID) iface.RateLimiter
- func (e *Engine) GetRegulator(limiterID iface.LimiterID) iface.Limiter
- func (e *Engine) ProcessRequest(ctx context.Context, requestContext iface.RequestContext) (response *flowcontrolv1.CheckResponse)
- func (e *Engine) RegisterFluxMeter(fm iface.FluxMeter) error
- func (e *Engine) RegisterLabelPreview(lp iface.LabelPreview) error
- func (e *Engine) RegisterLoadScheduler(cl iface.LoadScheduler) error
- func (e *Engine) RegisterRateLimiter(rl iface.RateLimiter) error
- func (e *Engine) RegisterRegulator(l iface.Limiter) error
- func (e *Engine) UnregisterFluxMeter(fm iface.FluxMeter) error
- func (e *Engine) UnregisterLabelPreview(lp iface.LabelPreview) error
- func (e *Engine) UnregisterLoadScheduler(cl iface.LoadScheduler) error
- func (e *Engine) UnregisterRateLimiter(rl iface.RateLimiter) error
- func (e *Engine) UnregisterRegulator(rl iface.Limiter) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Engine ¶
type Engine struct {
// contains filtered or unexported fields
}
Engine APIs to (1) Get schedulers given a service, control point and set of labels. (2) Get flux meter histogram given a metric id.
func (*Engine) GetAgentInfo ¶
GetAgentInfo returns the agent info.
func (*Engine) GetFluxMeter ¶
GetFluxMeter Lookup function for getting flux meter.
func (*Engine) GetLoadScheduler ¶
func (e *Engine) GetLoadScheduler(limiterID iface.LimiterID) iface.LoadScheduler
GetLoadScheduler Lookup function for getting load scheduler.
func (*Engine) GetRateLimiter ¶
func (e *Engine) GetRateLimiter(limiterID iface.LimiterID) iface.RateLimiter
GetRateLimiter Lookup function for getting rate limiter.
func (*Engine) GetRegulator ¶
GetRegulator Lookup function for getting load regulator.
func (*Engine) ProcessRequest ¶
func (e *Engine) ProcessRequest( ctx context.Context, requestContext iface.RequestContext, ) (response *flowcontrolv1.CheckResponse)
ProcessRequest .
func (*Engine) RegisterFluxMeter ¶
RegisterFluxMeter adds fluxmeter to histogram map and multimatcher.
func (*Engine) RegisterLabelPreview ¶
func (e *Engine) RegisterLabelPreview(lp iface.LabelPreview) error
RegisterLabelPreview adds label preview to multimatcher.
func (*Engine) RegisterLoadScheduler ¶
func (e *Engine) RegisterLoadScheduler(cl iface.LoadScheduler) error
RegisterLoadScheduler adds load scheduler to multimatcher.
func (*Engine) RegisterRateLimiter ¶
func (e *Engine) RegisterRateLimiter(rl iface.RateLimiter) error
RegisterRateLimiter adds limiter actuator to multimatcher.
func (*Engine) RegisterRegulator ¶
RegisterRegulator adds limiter actuator to multimatcher.
func (*Engine) UnregisterFluxMeter ¶
UnregisterFluxMeter removes fluxmeter from histogram map and multimatcher.
func (*Engine) UnregisterLabelPreview ¶
func (e *Engine) UnregisterLabelPreview(lp iface.LabelPreview) error
UnregisterLabelPreview removes label preview from multimatcher.
func (*Engine) UnregisterLoadScheduler ¶
func (e *Engine) UnregisterLoadScheduler(cl iface.LoadScheduler) error
UnregisterLoadScheduler removes load scheduler from multimatcher.
func (*Engine) UnregisterRateLimiter ¶
func (e *Engine) UnregisterRateLimiter(rl iface.RateLimiter) error
UnregisterRateLimiter removes limiter actuator from multimatcher.
Directories ¶
Path | Synopsis |
---|---|
resources
|
|
Companion package for github.com/fluxninja/aperture/api/gen/proto/go/aperture/policy/language/v1 containing conversions of proto-generated struct into golang ones and other helpers.
|
Companion package for github.com/fluxninja/aperture/api/gen/proto/go/aperture/policy/language/v1 containing conversions of proto-generated struct into golang ones and other helpers. |
preview/config
+kubebuilder:validation:Optional
|
+kubebuilder:validation:Optional |