class RailsFailover::Redis
Constants
- PRIMARY
- REPLICA
Public Class Methods
clear_callbacks()
click to toggle source
For testing
# File lib/rails_failover/redis.rb, line 60 def self.clear_callbacks @on_fallback_callback = nil @on_failover_callback = nil end
logger()
click to toggle source
# File lib/rails_failover/redis.rb, line 23 def self.logger if @logger @logger elsif defined?(::Rails) ::Rails.logger end end
logger=(logger)
click to toggle source
# File lib/rails_failover/redis.rb, line 19 def self.logger=(logger) @logger = logger end
on_failover(&block)
click to toggle source
# File lib/rails_failover/redis.rb, line 39 def self.on_failover(&block) @on_failover_callback = block end
on_failover_callback!(key)
click to toggle source
# File lib/rails_failover/redis.rb, line 43 def self.on_failover_callback!(key) @on_failover_callback&.call(key) rescue => e logger.warn("RailsFailover::Redis.on_failover failed: #{e.class} #{e.message}\n#{e.backtrace.join("\n")}") end
on_fallback(&block)
click to toggle source
# File lib/rails_failover/redis.rb, line 49 def self.on_fallback(&block) @on_fallback_callback = block end
on_fallback_callback!(key)
click to toggle source
# File lib/rails_failover/redis.rb, line 53 def self.on_fallback_callback!(key) @on_fallback_callback&.call(key) rescue => e logger.warn("RailsFailover::Redis.on_fallback failed: #{e.class} #{e.message}\n#{e.backtrace.join("\n")}") end
verify_primary_frequency_seconds()
click to toggle source
# File lib/rails_failover/redis.rb, line 35 def self.verify_primary_frequency_seconds @verify_primary_frequency_seconds || 5 end
verify_primary_frequency_seconds=(seconds)
click to toggle source
# File lib/rails_failover/redis.rb, line 31 def self.verify_primary_frequency_seconds=(seconds) @verify_primary_frequency_seconds = seconds end