crowdsecurity/crowdsec · error

unknown parameter %s

Error message

unknown parameter %s

What it means

ConfigureByDSN rejects any file:// DSN query parameter other than the supported ones (log_level, max_buffer_size). It is a strict-parameter guard: an unrecognized key in the DSN query string aborts configuration.

Source

Thrown at pkg/acquisition/modules/file/config.go:198

				lvl, err := log.ParseLevel(value[0])
				if err != nil {
					return fmt.Errorf("unknown level %s: %w", value[0], err)
				}

				s.logger.Logger.SetLevel(lvl)
			case "max_buffer_size":
				if len(value) != 1 {
					return errors.New("expected zero or one value for 'max_buffer_size'")
				}

				maxBufferSize, err := strconv.Atoi(value[0])
				if err != nil {
					return fmt.Errorf("could not parse max_buffer_size %s: %w", value[0], err)
				}

				s.config.MaxBufferSize = maxBufferSize
			default:
				return fmt.Errorf("unknown parameter %s", key)
			}
		}
	}

	s.config.Labels = labels
	s.config.Mode = configuration.CAT_MODE
	s.config.UniqueId = uuid

	s.logger.Debugf("Will try pattern %s", args[0])

	files, err := filepath.Glob(args[0])
	if err != nil {
		return fmt.Errorf("glob failure: %w", err)
	}

	if len(files) == 0 {
		return fmt.Errorf("no matching files for pattern %s", args[0])
	}

View on GitHub (pinned to 909b515798)

Solutions

  1. Remove the unsupported parameter from the file:// DSN
  2. Use only supported parameters: log_level and max_buffer_size
  3. Check documentation for the correct parameter name (e.g. misspelled key)
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at pkg/acquisition/modules/file/config.go:198 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/a044f5319651050c. Report an issue: GitHub.