Add min_successes

This commit is contained in:
Francis Lavoie 2023-04-15 08:44:12 -04:00
parent c8b8c3a7b2
commit 2c61b50b5f
No known key found for this signature in database
GPG key ID: 0F66EE1687682239
3 changed files with 29 additions and 0 deletions

View file

@ -79,6 +79,7 @@ func parseCaddyfile(h httpcaddyfile.Helper) (caddyhttp.MiddlewareHandler, error)
// max_fails <num>
// success_duration <duration>
// min_success_ratio <ratio>
// min_success <num>
// unhealthy_status <status>
// unhealthy_latency <duration>
// unhealthy_request_count <num>
@ -456,6 +457,22 @@ func (h *Handler) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
}
h.HealthChecks.Passive.MinSuccessRatio = ratio
case "min_successes":
if !d.NextArg() {
return d.ArgErr()
}
if h.HealthChecks == nil {
h.HealthChecks = new(HealthChecks)
}
if h.HealthChecks.Passive == nil {
h.HealthChecks.Passive = new(PassiveHealthChecks)
}
count, err := strconv.Atoi(d.Val())
if err != nil {
return d.Errf("invalid minimum success count '%s': %v", d.Val(), err)
}
h.HealthChecks.Passive.MinSuccesses = count
case "fail_duration":
if !d.NextArg() {
return d.ArgErr()