Class: ConsoleKit::Connections::MongoConnectionHandler
- Inherits:
-
BaseConnectionHandler
- Object
- BaseConnectionHandler
- ConsoleKit::Connections::MongoConnectionHandler
- Defined in:
- lib/console_kit/connections/mongo_connection_handler.rb
Overview
Handles MongoDB 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
17 |
# File 'lib/console_kit/connections/mongo_connection_handler.rb', line 17 def available? = defined?(Mongoid) |
#connect ⇒ Object
9 10 11 12 13 14 15 |
# File 'lib/console_kit/connections/mongo_connection_handler.rb', line 9 def connect db = context_attribute(:tenant_mongo_db).presence Output.print_info((db)) Mongoid.override_database(db) rescue NoMethodError Output.print_warning('Mongoid.override_database is not available in this version of Mongoid.') end |
#diagnostics ⇒ Object
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/console_kit/connections/mongo_connection_handler.rb', line 19 def diagnostics name = 'MongoDB' return unavailable_diagnostics(name) unless available? db = tenant_database latency = measure_latency { db.command(ping: 1) } build_mongo_diagnostics(db, latency) rescue StandardError => e error_diagnostics(name, e) end |