Class: Monitoring::Client::Routine
- Inherits:
-
Object
- Object
- Monitoring::Client::Routine
- Defined in:
- lib/monitoring/client/routine.rb
Instance Method Summary collapse
- #compile(program_name) ⇒ Object
- #count(metric_name, increment_by, units = nil) ⇒ Object
-
#initialize(routine_name) ⇒ Routine
constructor
A new instance of Routine.
- #time(metric_name = "time") ⇒ Object
Constructor Details
Instance Method Details
#compile(program_name) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/monitoring/client/routine.rb', line 26 def compile(program_name) @metrics.inject([]) do |compilation, metric_tuple| metric_name, metric = metric_tuple compilation.push({ "program_name" => program_name, "routine_name" => @routine_name, "metric_name" => metric_name, "metric_units" => metric.units, "sample_value" => metric.value, }) end end |
#count(metric_name, increment_by, units = nil) ⇒ Object
21 22 23 24 |
# File 'lib/monitoring/client/routine.rb', line 21 def count(metric_name, increment_by, units = nil) @metrics[metric_name].value = (@metrics[metric_name].value || 0) + increment_by @metrics[metric_name].units = units end |
#time(metric_name = "time") ⇒ Object
14 15 16 17 18 19 |
# File 'lib/monitoring/client/routine.rb', line 14 def time(metric_name = "time") t0 = Time.now.to_f yield @metrics[metric_name].value = Time.now.to_f - t0 @metrics[metric_name].units = "s" end |