class ScoutApm::TransactionTimeConsumed
Constants
- TotalTimeRecord
-
Time is in seconds
Attributes
Private Accessor: A hash of Endpoint Name to an time consumed record
Private Accessor: The total time spent across all endpoints
Public Class Methods
Source
# File lib/scout_apm/transaction_time_consumed.rb, line 13 def initialize @total_duration = 0.0 @endpoints = Hash.new { |h, k| h[k] = TotalTimeRecord.new } end
Public Instance Methods
Source
# File lib/scout_apm/transaction_time_consumed.rb, line 18 def add(item, duration) @total_duration += duration.to_f @endpoints[item].add(duration.to_f) end
Source
# File lib/scout_apm/transaction_time_consumed.rb, line 35 def call_count_for(item) @endpoints[item].count end
Source
# File lib/scout_apm/transaction_time_consumed.rb, line 23 def percent_of_total(item) if total_duration == 0.0 0 else @endpoints[item].total_duration / total_duration end end
Source
# File lib/scout_apm/transaction_time_consumed.rb, line 31 def total_time_for(item) @endpoints[item].total_duration end