crowdsecurity/crowdsec · error
invalid max_failure_duration in dsn: %w
Error message
invalid max_failure_duration in dsn: %w
What it means
Returned by ConfigureByDSN when the 'max_failure_duration' query parameter of a loki:// DSN is not a valid Go duration string. Wraps time.ParseDuration for the raw parameter value supplied in the DSN.
Source
Thrown at pkg/acquisition/modules/loki/config.go:179
if l.Config.DelayFor < 0*time.Second || l.Config.DelayFor > 5*time.Second {
return errors.New("delay_for should be a value between 1s and 5s")
}
} else {
l.Config.DelayFor = 0 * time.Second
}
if s := params.Get("since"); s != "" {
l.Config.Since, err = time.ParseDuration(s)
if err != nil {
return fmt.Errorf("invalid since in dsn: %w", err)
}
}
if maxFailureDuration := params.Get("max_failure_duration"); maxFailureDuration != "" {
duration, err := time.ParseDuration(maxFailureDuration)
if err != nil {
return fmt.Errorf("invalid max_failure_duration in dsn: %w", err)
}
l.Config.MaxFailureDuration = duration
} else {
l.Config.MaxFailureDuration = 5 * time.Second // for OneShot mode it doesn't make sense to have longer duration
}
if limit := params.Get("limit"); limit != "" {
limit, err := strconv.Atoi(limit)
if err != nil {
return fmt.Errorf("invalid limit in dsn: %w", err)
}
l.Config.Limit = limit
} else {
l.Config.Limit = 5000 // max limit allowed by loki
}
View on GitHub (pinned to 909b515798)
Solutions
- Use a valid duration, e.g. max_failure_duration=10m
- Omit the parameter to use the default
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at pkg/acquisition/modules/loki/config.go:179 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of crowdsecurity/crowdsec@909b515798 (2026-09-06).
Data as JSON: /api/errors/1f73bf3a2c7432b8.
Report an issue: GitHub.