Add ResponseCode to CircuitBreaker

This commit is contained in:
Fahrzin Hemmati 2024-01-29 01:58:05 -08:00 committed by GitHub
parent 3174c69c66
commit d37ea3e882
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 25 additions and 2 deletions

View file

@ -1,6 +1,7 @@
package dynamic
import (
"net/http"
"time"
ptypes "github.com/traefik/paerser/types"
@ -141,6 +142,8 @@ type CircuitBreaker struct {
FallbackDuration ptypes.Duration `json:"fallbackDuration,omitempty" toml:"fallbackDuration,omitempty" yaml:"fallbackDuration,omitempty" export:"true"`
// RecoveryDuration is the duration for which the circuit breaker will try to recover (as soon as it is in recovering state).
RecoveryDuration ptypes.Duration `json:"recoveryDuration,omitempty" toml:"recoveryDuration,omitempty" yaml:"recoveryDuration,omitempty" export:"true"`
// ResponseCode is the status code that the circuit breaker will return while it is in the open state.
ResponseCode int `json:"responseCode,omitempty" toml:"responseCode,omitempty" yaml:"responseCode,omitempty" export:"true"`
}
// SetDefaults sets the default values on a RateLimit.
@ -148,6 +151,7 @@ func (c *CircuitBreaker) SetDefaults() {
c.CheckPeriod = ptypes.Duration(100 * time.Millisecond)
c.FallbackDuration = ptypes.Duration(10 * time.Second)
c.RecoveryDuration = ptypes.Duration(10 * time.Second)
c.ResponseCode = http.StatusServiceUnavailable
}
// +k8s:deepcopy-gen=true