Documentation
¶
Index ¶
- func CanonicalDomain(domain string) string
- type Auth
- type Backend
- type Basic
- type Buckets
- type CircuitBreaker
- type Cluster
- type ConfigMessage
- type Configuration
- type Constraint
- type Constraints
- type Digest
- type Frontend
- type HealthCheck
- type LoadBalancer
- type LoadBalancerMethod
- type MaxConn
- type Metrics
- type Prometheus
- type Route
- type Server
- type Statistics
- type Store
- type Users
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CanonicalDomain ¶ added in v1.1.0
CanonicalDomain returns a lower case domain with trim space
Types ¶
type Backend ¶
type Backend struct {
Servers map[string]Server `json:"servers,omitempty"`
CircuitBreaker *CircuitBreaker `json:"circuitBreaker,omitempty"`
LoadBalancer *LoadBalancer `json:"loadBalancer,omitempty"`
MaxConn *MaxConn `json:"maxConn,omitempty"`
HealthCheck *HealthCheck `json:"healthCheck,omitempty"`
}
Backend holds backend configuration.
type Buckets ¶ added in v1.2.0
type Buckets []float64
Buckets holds Prometheus Buckets
func (*Buckets) Set ¶ added in v1.2.0
Set adds strings elem into the the parser it splits str on "," and ";" and apply ParseFloat to string
type CircuitBreaker ¶
type CircuitBreaker struct {
Expression string `json:"expression,omitempty"`
}
CircuitBreaker holds circuit breaker configuration.
type ConfigMessage ¶
type ConfigMessage struct {
ProviderName string
Configuration *Configuration
}
ConfigMessage hold configuration information exchanged between parts of traefik.
type Configuration ¶
type Configuration struct {
Backends map[string]*Backend `json:"backends,omitempty"`
Frontends map[string]*Frontend `json:"frontends,omitempty"`
}
Configuration of a provider.
type Constraint ¶
type Constraint struct {
Key string
// MustMatch is true if operator is "==" or false if operator is "!="
MustMatch bool
// TODO: support regex
Regex string
}
Constraint hold a parsed constraint expresssion
func NewConstraint ¶
func NewConstraint(exp string) (*Constraint, error)
NewConstraint receive a string and return a *Constraint, after checking syntax and parsing the constraint expression
func (*Constraint) MarshalText ¶ added in v1.1.0
func (c *Constraint) MarshalText() (text []byte, err error)
MarshalText encodes the receiver into UTF-8-encoded text and returns the result.
func (*Constraint) MatchConstraintWithAtLeastOneTag ¶
func (c *Constraint) MatchConstraintWithAtLeastOneTag(tags []string) bool
MatchConstraintWithAtLeastOneTag tests a constraint for one single service
func (*Constraint) String ¶
func (c *Constraint) String() string
func (*Constraint) UnmarshalText ¶ added in v1.1.0
func (c *Constraint) UnmarshalText(text []byte) error
UnmarshalText define how unmarshal in TOML parsing
type Constraints ¶
type Constraints []*Constraint
Constraints holds a Constraint parser
func (*Constraints) SetValue ¶
func (cs *Constraints) SetValue(val interface{})
SetValue sets []*Constraint into the parser
func (*Constraints) String ¶
func (cs *Constraints) String() string
String returns []*Constraint in string
func (*Constraints) Type ¶
func (cs *Constraints) Type() string
Type exports the Constraints type as a string
type Frontend ¶
type Frontend struct {
EntryPoints []string `json:"entryPoints,omitempty"`
Backend string `json:"backend,omitempty"`
Routes map[string]Route `json:"routes,omitempty"`
PassHostHeader bool `json:"passHostHeader,omitempty"`
Priority int `json:"priority"`
BasicAuth []string `json:"basicAuth"`
}
Frontend holds frontend configuration.
type HealthCheck ¶ added in v1.2.0
type HealthCheck struct {
Path string `json:"path,omitempty"`
Interval string `json:"interval,omitempty"`
}
HealthCheck holds HealthCheck configuration
type LoadBalancer ¶
type LoadBalancer struct {
Method string `json:"method,omitempty"`
Sticky bool `json:"sticky,omitempty"`
}
LoadBalancer holds load balancing configuration.
type LoadBalancerMethod ¶
type LoadBalancerMethod uint8
LoadBalancerMethod holds the method of load balancing to use.
const ( // Wrr (default) = Weighted Round Robin Wrr LoadBalancerMethod = iota // Drr = Dynamic Round Robin Drr )
func NewLoadBalancerMethod ¶
func NewLoadBalancerMethod(loadBalancer *LoadBalancer) (LoadBalancerMethod, error)
NewLoadBalancerMethod create a new LoadBalancerMethod from a given LoadBalancer.
type MaxConn ¶
type MaxConn struct {
Amount int64 `json:"amount,omitempty"`
ExtractorFunc string `json:"extractorFunc,omitempty"`
}
MaxConn holds maximum connection configuration
type Metrics ¶ added in v1.2.0
type Metrics struct {
Prometheus *Prometheus `description:"Prometheus metrics exporter type"`
}
Metrics provides options to expose and send Traefik metrics to different third party monitoring systems
type Prometheus ¶ added in v1.2.0
type Prometheus struct {
Buckets Buckets `description:"Buckets for latency metrics"`
}
Prometheus can contain specific configuration used by the Prometheus Metrics exporter
type Route ¶
type Route struct {
Rule string `json:"rule,omitempty"`
}
Route holds route configuration.
type Statistics ¶ added in v1.2.0
type Statistics struct {
RecentErrors int `description:"Number of recent errors logged"`
}
Statistics provides options for monitoring request and response stats