module DoctorStrange
Constants
- STATUSES
- VERSION
Attributes
configuration[RW]
Public Instance Methods
check(request: nil)
click to toggle source
# File lib/doctor_strange/monitor.rb, line 19 def check(request: nil) results = configuration.providers.map { |provider| provider_result(provider, request) } { results: results, status: results.all? { |res| res[:status] == STATUSES[:ok] } ? :ok : :service_unavailable, timestamp: Time.now.to_s(:rfc2822) } end
configure() { |configuration| ... }
click to toggle source
# File lib/doctor_strange/monitor.rb, line 13 def configure self.configuration ||= Configuration.new yield configuration if block_given? end
Private Instance Methods
provider_result(provider, request)
click to toggle source
# File lib/doctor_strange/monitor.rb, line 31 def provider_result(provider, request) monitor = provider.new(request: request) monitor.check! { name: provider.provider_name, message: '', status: STATUSES[:ok] } rescue StandardError => e configuration.error_callback.call(e) if configuration.error_callback { name: provider.provider_name, message: e.message, status: STATUSES[:error] } end