class OkComputer::MongoidCheck
Constants
- ConnectionFailed
Attributes
session[RW]
Public Class Methods
new(session = :default)
click to toggle source
Public: Initialize a check for a Mongoid replica set
session - The name of the Mongoid session to use. Defaults to the
default session.
# File lib/ok_computer/built_in_checks/mongoid_check.rb, line 9 def initialize(session = :default) if Mongoid.respond_to?(:clients) # Mongoid 5 self.session = Mongoid::Clients.with_name(session) elsif Mongoid.respond_to?(:sessions) # Mongoid 4 self.session = Mongoid::Sessions.with_name(session) end rescue => e # client/session not configured end
Public Instance Methods
check()
click to toggle source
Public: Return the status of the mongodb
# File lib/ok_computer/built_in_checks/mongoid_check.rb, line 20 def check mark_message "Connected to mongodb #{mongodb_name}" rescue ConnectionFailed => e mark_failure mark_message "Error: '#{e}'" end
mongodb_name()
click to toggle source
Public: The name of the app’s mongodb
Returns a string with the mongdb name
# File lib/ok_computer/built_in_checks/mongoid_check.rb, line 45 def mongodb_name mongodb_stats["db"] end
mongodb_stats()
click to toggle source
Public: The stats for the app’s mongodb
Returns a hash with the status of the db
# File lib/ok_computer/built_in_checks/mongoid_check.rb, line 30 def mongodb_stats if session stats = session.command(dbStats: 1) # Mongoid 3+ stats = stats.first unless stats.is_a? Hash # Mongoid 5 stats else Mongoid.database.stats # Mongoid 2 end rescue => e raise ConnectionFailed, e end