Method: Datadog::Core::TokenBucket#effective_rate
- Defined in:
- lib/datadog/core/rate_limiter.rb
#effective_rate ⇒ Float
Ratio of ‘conformance’ per ‘total messages’ checked averaged for the past 2 buckets
Returns 1.0
when no messages have been checked yet.
76 77 78 79 80 81 82 83 |
# File 'lib/datadog/core/rate_limiter.rb', line 76 def effective_rate return 0.0 if @rate.zero? return 1.0 if @rate < 0 || @total_messages.zero? return current_window_rate if @prev_conforming_messages.nil? || @prev_total_messages.nil? (@conforming_messages.to_f + @prev_conforming_messages.to_f) / (@total_messages + @prev_total_messages) end |