Class: ConsoleKit::Connections::RedisConnectionHandler

Inherits:
BaseConnectionHandler show all
Defined in:
lib/console_kit/connections/redis_connection_handler.rb

Overview

Handles Redis connections

Constant Summary collapse

DEFAULT_REDIS_DB =
0

Instance Attribute Summary

Attributes inherited from BaseConnectionHandler

#context

Instance Method Summary collapse

Methods inherited from BaseConnectionHandler

#initialize, registry, #safe_diagnostics

Methods included from DiagnosticHelpers

clock_time, error_diagnostics, timeout_diagnostics

Constructor Details

This class inherits a constructor from ConsoleKit::Connections::BaseConnectionHandler

Instance Method Details

#available?Boolean

Returns:

  • (Boolean)


17
# File 'lib/console_kit/connections/redis_connection_handler.rb', line 17

def available? = defined?(Redis)

#connectObject



11
12
13
14
15
# File 'lib/console_kit/connections/redis_connection_handler.rb', line 11

def connect
  db = context_attribute(:tenant_redis_db) || DEFAULT_REDIS_DB
  Output.print_info(switch_message(db))
  select_redis_db(db)
end

#diagnosticsObject



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/console_kit/connections/redis_connection_handler.rb', line 19

def diagnostics
  name = 'Redis'
  return unavailable_diagnostics(name) unless available?

  redis = fetch_redis_client
  return unavailable_diagnostics(name) unless redis

  latency = measure_latency { redis.ping }
  build_redis_diagnostics(redis.info, latency)
rescue StandardError => e
  error_diagnostics(name, e)
end