Class: LogStash::Modules::Scaffold
- Inherits:
-
Object
- Object
- LogStash::Modules::Scaffold
- Includes:
- Util::Loggable
- Defined in:
- lib/logstash/modules/scaffold.rb
Instance Attribute Summary collapse
-
#directory ⇒ Object
readonly
Returns the value of attribute directory.
-
#elasticsearch_configuration ⇒ Object
readonly
Returns the value of attribute elasticsearch_configuration.
-
#kibana_configuration ⇒ Object
readonly
Returns the value of attribute kibana_configuration.
-
#kibana_version_parts ⇒ Object
readonly
Returns the value of attribute kibana_version_parts.
-
#logstash_configuration ⇒ Object
readonly
Returns the value of attribute logstash_configuration.
-
#module_name ⇒ Object
readonly
Returns the value of attribute module_name.
Instance Method Summary collapse
- #add_kibana_version(version_parts) ⇒ Object
- #config_string ⇒ Object
- #import(import_engine, kibana_import_engine) ⇒ Object
-
#initialize(name, directory) ⇒ Scaffold
constructor
A new instance of Scaffold.
- #with_settings(module_settings) ⇒ Object
Methods included from Util::Loggable
included, #logger, #slow_logger
Constructor Details
#initialize(name, directory) ⇒ Scaffold
Returns a new instance of Scaffold.
17 18 19 20 21 22 |
# File 'lib/logstash/modules/scaffold.rb', line 17 def initialize(name, directory) @module_name = name @directory = directory # this is the 'configuration folder in the GEM root.' @kibana_version_parts = "6.0.0".split('.') # this is backup in case kibana client fails to connect logger.info("Initializing module", :module_name => name, :directory => directory) end |
Instance Attribute Details
#directory ⇒ Object (readonly)
Returns the value of attribute directory.
14 15 16 |
# File 'lib/logstash/modules/scaffold.rb', line 14 def directory @directory end |
#elasticsearch_configuration ⇒ Object (readonly)
Returns the value of attribute elasticsearch_configuration.
15 16 17 |
# File 'lib/logstash/modules/scaffold.rb', line 15 def elasticsearch_configuration @elasticsearch_configuration end |
#kibana_configuration ⇒ Object (readonly)
Returns the value of attribute kibana_configuration.
15 16 17 |
# File 'lib/logstash/modules/scaffold.rb', line 15 def kibana_configuration @kibana_configuration end |
#kibana_version_parts ⇒ Object (readonly)
Returns the value of attribute kibana_version_parts.
14 15 16 |
# File 'lib/logstash/modules/scaffold.rb', line 14 def kibana_version_parts @kibana_version_parts end |
#logstash_configuration ⇒ Object (readonly)
Returns the value of attribute logstash_configuration.
15 16 17 |
# File 'lib/logstash/modules/scaffold.rb', line 15 def logstash_configuration @logstash_configuration end |
#module_name ⇒ Object (readonly)
Returns the value of attribute module_name.
14 15 16 |
# File 'lib/logstash/modules/scaffold.rb', line 14 def module_name @module_name end |
Instance Method Details
#add_kibana_version(version_parts) ⇒ Object
24 25 26 |
# File 'lib/logstash/modules/scaffold.rb', line 24 def add_kibana_version(version_parts) @kibana_version_parts = version_parts end |
#config_string ⇒ Object
44 45 46 47 48 49 50 |
# File 'lib/logstash/modules/scaffold.rb', line 44 def config_string() # settings should be set earlier by the caller. # settings should be the subset from the YAML file with a structure like # {"name" => "plugin name", "k1" => "v1", "k2" => "v2"}, etc. return nil if @logstash_configuration.nil? @logstash_configuration.config_string end |
#import(import_engine, kibana_import_engine) ⇒ Object
28 29 30 31 32 33 34 35 |
# File 'lib/logstash/modules/scaffold.rb', line 28 def import(import_engine, kibana_import_engine) @elasticsearch_configuration.resources.each do |resource| import_engine.put(resource) end @kibana_configuration.resources.each do |resource| kibana_import_engine.put(resource) end end |
#with_settings(module_settings) ⇒ Object
37 38 39 40 41 42 |
# File 'lib/logstash/modules/scaffold.rb', line 37 def with_settings(module_settings) @logstash_configuration = LogStashConfig.new(self, module_settings) @kibana_configuration = KibanaConfig.new(self, module_settings) @elasticsearch_configuration = ElasticsearchConfig.new(self, module_settings) self end |