Class: Metrics::Drivers::L2Met

Inherits:
Object
  • Object
show all
Defined in:
lib/metrics/drivers/l2met.rb

Defined Under Namespace

Classes: Lines

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(logger, source_prefix) ⇒ L2Met

Returns a new instance of L2Met.



6
7
8
9
# File 'lib/metrics/drivers/l2met.rb', line 6

def initialize(logger, source_prefix)
  @logger = logger
  @source_prefix = source_prefix
end

Instance Attribute Details

#loggerObject (readonly)

Returns the value of attribute logger.



5
6
7
# File 'lib/metrics/drivers/l2met.rb', line 5

def logger
  @logger
end

#source_prefixObject (readonly)

Returns the value of attribute source_prefix.



5
6
7
# File 'lib/metrics/drivers/l2met.rb', line 5

def source_prefix
  @source_prefix
end

Instance Method Details

#lines(instrumenters) ⇒ Object

Example source=web.2 sample#load_avg_1m=0.31 sample#load_avg_5m=0.10 sample#load_avg_15m=0.05



20
21
22
23
24
25
# File 'lib/metrics/drivers/l2met.rb', line 20

def lines(instrumenters)
  groups(instrumenters).map do |source, instrumenters|
    measurements = instrumenters.map { |instrumenter| measurement(instrumenter) }
    Lines.new(full_source(source), measurements).lines
  end.flatten
end

#write(*instrumenters) ⇒ Object



11
12
13
14
15
16
# File 'lib/metrics/drivers/l2met.rb', line 11

def write(*instrumenters)
  lines(instrumenters).each do |line|
    logger.info line
  end
  instrumenters
end