Class: Meter::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/meter/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ Configuration

Returns a new instance of Configuration.



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/meter/configuration.rb', line 10

def initialize(options={})
  @logger = options[:logger] || default_logger
  @primary_backend = Backend.new
  @primary_backend.host = options[:primary_host] || default_host
  @primary_backend.port = options[:primary_port] || default_port
  @primary_backend.namespace = options[:namespace] || default_namespace
  @secondary_backend = Backend.new
  @secondary_backend.host = options[:secondary_host] || ENV['METER_SECONDARY_HOST'] || default_host
  @secondary_backend.port = options[:secondary_port] || default_secondary_port
  @secondary_backend.namespace = options[:namespace] || default_namespace

  @counter_backend = Backend.new
  @counter_backend.host = options[:counter_host] || default_host
  @counter_backend.port = options[:counter_port] || default_counter_port
  @counter_backend.namespace = options[:namespace] || default_namespace

  @meter_backend = Backend.new
  @meter_backend.host = options[:meter_host] || default_host
  @meter_backend.port = options[:meter_port] || default_meter_port
  @meter_backend.namespace = options[:namespace] || default_namespace

  @tags = options[:tags] || {}
end

Instance Attribute Details

#counter_backendObject (readonly)

Returns the value of attribute counter_backend.



8
9
10
# File 'lib/meter/configuration.rb', line 8

def counter_backend
  @counter_backend
end

#loggerObject

Returns the value of attribute logger.



7
8
9
# File 'lib/meter/configuration.rb', line 7

def logger
  @logger
end

#meter_backendObject (readonly)

Returns the value of attribute meter_backend.



8
9
10
# File 'lib/meter/configuration.rb', line 8

def meter_backend
  @meter_backend
end

#primary_backendObject (readonly)

Returns the value of attribute primary_backend.



8
9
10
# File 'lib/meter/configuration.rb', line 8

def primary_backend
  @primary_backend
end

#secondary_backendObject (readonly)

Returns the value of attribute secondary_backend.



8
9
10
# File 'lib/meter/configuration.rb', line 8

def secondary_backend
  @secondary_backend
end

#tagsObject

Returns the value of attribute tags.



7
8
9
# File 'lib/meter/configuration.rb', line 7

def tags
  @tags
end

Instance Method Details

#namespaceObject



41
42
43
# File 'lib/meter/configuration.rb', line 41

def namespace
  primary_backend.namespace
end

#namespace=(new_namespace) ⇒ Object



34
35
36
37
38
39
# File 'lib/meter/configuration.rb', line 34

def namespace=(new_namespace)
  primary_backend.namespace = new_namespace
  secondary_backend.namespace = new_namespace
  counter_backend.namespace = new_namespace
  meter_backend.namespace = new_namespace
end

#primary_hostObject



45
46
47
# File 'lib/meter/configuration.rb', line 45

def primary_host
  primary_backend.host
end

#primary_host=(new_host) ⇒ Object



69
70
71
# File 'lib/meter/configuration.rb', line 69

def primary_host=(new_host)
  primary_backend.host = new_host
end

#primary_portObject



49
50
51
# File 'lib/meter/configuration.rb', line 49

def primary_port
  primary_backend.port
end

#primary_port=(new_port) ⇒ Object



73
74
75
# File 'lib/meter/configuration.rb', line 73

def primary_port=(new_port)
  primary_backend.port = new_port
end

#secondary_hostObject



53
54
55
# File 'lib/meter/configuration.rb', line 53

def secondary_host
  secondary_backend.host
end

#secondary_host=(new_host) ⇒ Object



77
78
79
# File 'lib/meter/configuration.rb', line 77

def secondary_host=(new_host)
  secondary_backend.host = new_host
end

#secondary_portObject



57
58
59
# File 'lib/meter/configuration.rb', line 57

def secondary_port
  secondary_backend.port
end

#secondary_port=(new_port) ⇒ Object



81
82
83
# File 'lib/meter/configuration.rb', line 81

def secondary_port=(new_port)
  secondary_backend.port = new_port
end