Class: Fluentd::Agent::Configuration

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
app/models/fluentd/agent/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(config_file) ⇒ Configuration

Returns a new instance of Configuration.



10
11
12
# File 'app/models/fluentd/agent/configuration.rb', line 10

def initialize(config_file)
  @file = config_file
end

Instance Attribute Details

#fileObject (readonly)

Returns the value of attribute file.



8
9
10
# File 'app/models/fluentd/agent/configuration.rb', line 8

def file
  @file
end

Instance Method Details

#configObject



14
15
16
# File 'app/models/fluentd/agent/configuration.rb', line 14

def config
  @config ||= ::Fluent::Config::V1Parser.parse(File.read(file), File.basename(file), File.dirname(file))
end

#each(&block) ⇒ Object



22
23
24
# File 'app/models/fluentd/agent/configuration.rb', line 22

def each(&block)
  config.each_element(&block)
end

#matchesObject



30
31
32
# File 'app/models/fluentd/agent/configuration.rb', line 30

def matches
  find_all{|e| e.name == "match"}
end

#sourcesObject



26
27
28
# File 'app/models/fluentd/agent/configuration.rb', line 26

def sources
  find_all{|e| e.name == "source"}
end

#to_sObject



18
19
20
# File 'app/models/fluentd/agent/configuration.rb', line 18

def to_s
  config.to_s.gsub(/\A<ROOT>\n/, "").gsub(/<\/ROOT>\n\z/, "").gsub(/^ {2}/, "")
end