Module: Tor::Strategy::Restart

Included in:
Instance
Defined in:
lib/rest_tor/strategy/restart.rb

Constant Summary collapse

DEFAULT_EXCEPTION_COUNT =
50
EXCEPTIONS =
{
  ::Net::OpenTimeout    => 20,
  ::Errno::ECONNREFUSED => 50,
  ::RestClient::Exceptions::OpenTimeout => 20
}

Instance Method Summary collapse

Instance Method Details

#died?Boolean

Returns:

  • (Boolean)


11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/rest_tor/strategy/restart.rb', line 11

def died?
  message = nil
  return message if counter.errors.any? do |k,v|
    if EXCEPTIONS.key?(k)
      message = "#{k} count >= #{EXCEPTIONS[k]}" if v.to_i >= (EXCEPTIONS[k] || DEFAULT_EXCEPTION_COUNT)
    else
      message = "#{k} count >= #{DEFAULT_EXCEPTION_COUNT}" if v.to_i >= DEFAULT_EXCEPTION_COUNT
    end
  end

  if c_success > 0 && c_fail > (c_success << 5)
    message = "fail > success << 5 & success > 0"
  elsif c_success == 0 and c_fail > 50
    message = "fail > 50 & success = 0"
  end
  message.presence
end