class Metric
Attributes
aggregate_function[W]
count[R]
name[RW]
pool_name[RW]
unit[RW]
Public Class Methods
mean(value, count)
click to toggle source
# File lib/newrelic_zfs/metric.rb, line 46 def self.mean(value, count) if value.nil? || count.nil? 0 elsif count == 0 value else value.to_f / count end end
new()
click to toggle source
# File lib/newrelic_zfs/metric.rb, line 8 def initialize @count = 0 @value = 0 end
sum(value, count)
click to toggle source
# File lib/newrelic_zfs/metric.rb, line 56 def self.sum(value, count) value end
Public Instance Methods
add_value(value)
click to toggle source
# File lib/newrelic_zfs/metric.rb, line 17 def add_value(value) if @aggregate_function.nil? @value = value else @value = @value + value rescue value @count = @count + 1 end end
is_summary_metric?()
click to toggle source
# File lib/newrelic_zfs/metric.rb, line 13 def is_summary_metric? !@aggregate_function.nil? end
newrelic_name()
click to toggle source
# File lib/newrelic_zfs/metric.rb, line 38 def newrelic_name if is_summary_metric? "ZPools/#{@name}" else "ZPools/#{@name}/#{@pool_name}" end end
raw_value()
click to toggle source
# File lib/newrelic_zfs/metric.rb, line 34 def raw_value @value end
set_value(value)
click to toggle source
# File lib/newrelic_zfs/metric.rb, line 26 def set_value(value) @value = value end
value()
click to toggle source
# File lib/newrelic_zfs/metric.rb, line 30 def value @aggregate_function.nil? ? @value : @aggregate_function.call(@value, @count) end