Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func NewErrInvalidALBOptions ¶
NewErrInvalidALBOptions returns an invalid ALB Options error
Types ¶
type ConcurrencyOptions ¶ added in v2.0.1
type ConcurrencyOptions struct {
// QueryConcurrencyLimit defines the concurrency limit while querying backends for the given mechanism.
// If set to 0, no limit is applied, if set to a positive integer, that number of queries can be performed concurrently.
// If the value is not set, it defaults to the number of logical CPUs available to the process (GOMAXPROCS).
// Default value is GOMAXPROCS.
QueryConcurrencyLimit *int `yaml:"query_concurrency_limit,omitempty"`
// QueryConcurrencyMultiplier is a multiplier that can be applied to the default concurrency limit.
// This multiplier is applied to the query_concurrency_limit value to result in the overall concurrency limit for the given mechanism.
// Default and minimum value is 1.
QueryConcurrencyMultiplier *int `yaml:"query_concurrency_multiplier,omitempty"`
}
Common concurrency options to apply to ALB mechanisms
func (*ConcurrencyOptions) GetQueryConcurrencyLimit ¶ added in v2.0.1
func (o *ConcurrencyOptions) GetQueryConcurrencyLimit() int
type FirstGoodResponseOptions ¶ added in v2.0.1
type FirstGoodResponseOptions struct {
// StatusCodes provides an explicit list of status codes considered "good" when using
// the First Good Response (fgr) methodology. By default, any code < 400 is good.
StatusCodes []int `yaml:"status_codes,omitempty"`
ConcurrencyOptions ConcurrencyOptions `yaml:",inline"`
}
type InvalidALBOptionsError ¶
type InvalidALBOptionsError struct {
// contains filtered or unexported fields
}
InvalidALBOptionsError is an error type for invalid ALB Options
type NewestLastModifiedOptions ¶ added in v2.0.1
type NewestLastModifiedOptions struct {
ConcurrencyOptions ConcurrencyOptions `yaml:",inline"`
}
type Options ¶
type Options struct {
// MechanismName indicates the name of the load balancing mechanism
MechanismName string `yaml:"mechanism,omitempty"`
// Pool provides the list of backend names to be used by the load balancer
Pool []string `yaml:"pool,omitempty"`
// HealthyFloor is the minimum health check status value to be considered Available in the pool
// -1 : all pool members are Available regardless of health check status
// 0 (default) : pool members with status of unknown (0) or healthy (1) are Available
// 1 : only pool members with status of healthy (1) are Available
// unknown means the first hc hasn't returned yet,
// or (more likely) HealthCheck Interval on target backend is not set
HealthyFloor int `yaml:"healthy_floor,omitempty"`
// OutputFormat accompanies the tsmerge Mechanism to indicate the provider output format
// options include any valid time seres backend like prometheus, influxdb or clickhouse
OutputFormat string `yaml:"output_format,omitempty"`
// Deprecated: use fgr.status_codes instead of this top-level option
// FGRStatusCodes provides an explicit list of status codes considered "good" when using
// the First Good Response (fgr) methodology. By default, any code < 400 is good.
FGRStatusCodes []int `yaml:"fgr_status_codes,omitempty"`
// UserRouter provides options for the User Router mechanism
UserRouter *ur.Options `yaml:"user_router,omitempty"`
//
// synthetic values
FgrCodesLookup sets.Set[int] `yaml:"-"`
// mechanism-specific options
TSMOptions TimeSeriesMergeOptions `yaml:"tsm,omitempty"`
NLMOptions NewestLastModifiedOptions `yaml:"nlm,omitempty"`
FGROptions FirstGoodResponseOptions `yaml:"fgr,omitempty"`
}
Options defines options for ALBs
func (*Options) Initialize ¶
type TimeSeriesMergeOptions ¶ added in v2.0.1
type TimeSeriesMergeOptions struct {
ConcurrencyOptions ConcurrencyOptions `yaml:",inline"`
}
Click to show internal directories.
Click to hide internal directories.