Module: LogStash::PluginMixins::NormalizeConfigSupport

Defined in:
lib/logstash/plugin_mixins/normalize_config_support.rb

Overview

This ‘NormalizeConfigSupport` can be included in any `LogStash::Plugin`, and will provide utilities methods that can be used by the plugins to extract and normalize configs.

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ void

This method returns an undefined value.

Parameters:

  • base (Class)

    : a class that inherits ‘LogStash::Plugin`, typically one descending from one of the four plugin base classes (e.g., `LogStash::Inputs::Base`)



19
20
21
# File 'lib/logstash/plugin_mixins/normalize_config_support.rb', line 19

def self.included(base)
  fail ArgumentError, "`#{base}` must inherit LogStash::Plugin" unless base < LogStash::Plugin
end

Instance Method Details

#normalize_config(canonical_config, &configurator) ⇒ Object

Normalize a configuration and produces a canonical value for it.

Parameters:

  • canonical_config

    the config name to produce a normalized value for

Yield Returns:

  • a configurator block that can be used to configure the normalization



28
29
30
# File 'lib/logstash/plugin_mixins/normalize_config_support.rb', line 28

def normalize_config(canonical_config, &configurator)
  ConfigNormalizer.new(self, canonical_config, &configurator).value
end