{"record":{"id":"1f73bf3a2c7432b8","repo":"crowdsecurity/crowdsec","slug":"invalid-max-failure-duration-in-dsn-w","errorCode":null,"errorMessage":"invalid max_failure_duration in dsn: %w","messagePattern":"invalid max_failure_duration in dsn: %w","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/acquisition/modules/loki/config.go","lineNumber":179,"sourceCode":"\n\t\tif l.Config.DelayFor < 0*time.Second || l.Config.DelayFor > 5*time.Second {\n\t\t\treturn errors.New(\"delay_for should be a value between 1s and 5s\")\n\t\t}\n\t} else {\n\t\tl.Config.DelayFor = 0 * time.Second\n\t}\n\n\tif s := params.Get(\"since\"); s != \"\" {\n\t\tl.Config.Since, err = time.ParseDuration(s)\n\t\tif err != nil {\n\t\t\treturn fmt.Errorf(\"invalid since in dsn: %w\", err)\n\t\t}\n\t}\n\n\tif maxFailureDuration := params.Get(\"max_failure_duration\"); maxFailureDuration != \"\" {\n\t\tduration, err := time.ParseDuration(maxFailureDuration)\n\t\tif err != nil {\n\t\t\treturn fmt.Errorf(\"invalid max_failure_duration in dsn: %w\", err)\n\t\t}\n\n\t\tl.Config.MaxFailureDuration = duration\n\t} else {\n\t\tl.Config.MaxFailureDuration = 5 * time.Second // for OneShot mode it doesn't make sense to have longer duration\n\t}\n\n\tif limit := params.Get(\"limit\"); limit != \"\" {\n\t\tlimit, err := strconv.Atoi(limit)\n\t\tif err != nil {\n\t\t\treturn fmt.Errorf(\"invalid limit in dsn: %w\", err)\n\t\t}\n\n\t\tl.Config.Limit = limit\n\t} else {\n\t\tl.Config.Limit = 5000 // max limit allowed by loki\n\t}\n","sourceCodeStart":161,"sourceCodeEnd":197,"githubUrl":"https://github.com/crowdsecurity/crowdsec/blob/909b5157986a2b2c2163300fdaef5ed01289f7d2/pkg/acquisition/modules/loki/config.go#L161-L197","documentation":"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.","triggerScenarios":"Thrown at pkg/acquisition/modules/loki/config.go:179 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use a valid duration, e.g. max_failure_duration=10m","Omit the parameter to use the default"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"909b5157986a2b2c2163300fdaef5ed01289f7d2","analyzedAt":"2026-09-06T12:27:26.012Z","contentChangedAt":"2026-09-06T12:27:26.012Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}