fluent/fluentd · error · ArgumentError

#{name}: init is specified, but there're parameters without

Error message

#{name}: init is specified, but there're parameters without default values:#{missing_keys.join(',')}

What it means

Error "#{name}: init is specified, but there're parameters without default values:#{missing_keys.join(',')}" thrown in fluent/fluentd.

Source

Thrown at lib/fluent/config/section.rb:224

          end
          unless section_params.has_key?(varname)
            logger.error "config error in:\n#{conf}" if logger
            raise ConfigError, "'#{name}' parameter is required" + section_stack
          end
        end

        check_unused_section(proxy, conf, plugin_class)

        proxy.sections.each do |name, subproxy|
          varname = subproxy.variable_name
          elements = (conf.respond_to?(:elements) ? conf.elements : []).select{ |e| e.name == subproxy.name.to_s || e.name == subproxy.alias.to_s }
          if elements.empty? && subproxy.init?
            if subproxy.argument && !subproxy.defaults.has_key?(subproxy.argument.first)
              raise ArgumentError, "#{name}: init is specified, but default value of argument is missing"
            end
            missing_keys = subproxy.params.keys.select{|param_name| !subproxy.defaults.has_key?(param_name)}
            if !missing_keys.empty?
              raise ArgumentError, "#{name}: init is specified, but there're parameters without default values:#{missing_keys.join(',')}"
            end
            elements << Fluent::Config::Element.new(subproxy.name.to_s, '', {}, [])
          end

          # set subproxy for secret option
          elements.each { |element|
            element.corresponding_proxies << subproxy
          }

          if subproxy.required? && elements.size < 1
            logger.error "config error in:\n#{conf}" if logger
            raise ConfigError, "'<#{subproxy.name}>' sections are required" + section_stack
          end
          if subproxy.multi?
            section_params[varname] = elements.map{ |e| generate(subproxy, e, logger, plugin_class, stack + [subproxy.name], strict_config_value) }
          else
            if elements.size > 1
              logger.error "config error in:\n#{conf}" if logger

View on GitHub (pinned to dd45c6e18d)

When it happens

Trigger: Thrown at lib/fluent/config/section.rb:224 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of fluent/fluentd@dd45c6e18d (2026-08-21). Data as JSON: /api/errors/63ddf1f99e06d671. Report an issue: GitHub.