Class: ConsoleKit::Connections::SqlConnectionHandler
- Inherits:
-
BaseConnectionHandler
- Object
- BaseConnectionHandler
- ConsoleKit::Connections::SqlConnectionHandler
- Defined in:
- lib/console_kit/connections/sql_connection_handler.rb
Overview
Handles SQL connections
Instance Attribute Summary
Attributes inherited from BaseConnectionHandler
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
16 |
# File 'lib/console_kit/connections/sql_connection_handler.rb', line 16 def available? = sql_base_class_name.to_s.safe_constantize.present? |
#connect ⇒ Object
9 10 11 12 13 14 |
# File 'lib/console_kit/connections/sql_connection_handler.rb', line 9 def connect shard = context_attribute(:tenant_shard).presence&.to_sym Output.print_info("#{(shard)} via #{base_class}") disconnect_existing_pool shard ? base_class.establish_connection(shard) : base_class.establish_connection end |
#diagnostics ⇒ Object
18 19 20 21 22 23 24 25 26 27 |
# File 'lib/console_kit/connections/sql_connection_handler.rb', line 18 def diagnostics name = 'SQL' return unavailable_diagnostics(name) unless available? conn = base_class.connection latency = measure_latency { conn.execute('SELECT 1') } build_sql_diagnostics(conn, latency) rescue StandardError => e error_diagnostics(name, e) end |