class Doctor::HealthCheck
Public Instance Methods
perform()
click to toggle source
# File app/use_case/doctor/health_check.rb, line 3 def perform result = {} result[:release_path] = analyze_release_path result[:telnets] = analyze_telnet result[:databases] = analyze_database result[:hds] = analyse_hds error_messages = list_all_error_messages(result) OpenStruct.new( result: result, has_error?: has_error?(result), error_messages: error_messages ) end
Private Instance Methods
analyse_hds()
click to toggle source
# File app/use_case/doctor/health_check.rb, line 34 def analyse_hds process(HdAnalyser, Dto::HdResultDto) end
analyze_database()
click to toggle source
# File app/use_case/doctor/health_check.rb, line 30 def analyze_database process(DatabaseAnalyser, Dto::DatabaseResultDto) end
analyze_release_path()
click to toggle source
# File app/use_case/doctor/health_check.rb, line 22 def analyze_release_path process(ReleasePathAnalyser, Dto::ReleasePathResultDto) end
analyze_telnet()
click to toggle source
# File app/use_case/doctor/health_check.rb, line 26 def analyze_telnet process(TelnetAnalyser, Dto::TelnetResultDto) end
has_error?(result)
click to toggle source
# File app/use_case/doctor/health_check.rb, line 50 def has_error?(result) # rubocop:disable Style/PredicateName result.values.each do |result_analyze| result_analyze.each do |result| return true unless result.status.eql?('ok') end end false end
list_all_error_messages(result)
click to toggle source
# File app/use_case/doctor/health_check.rb, line 60 def list_all_error_messages(result) errors = [] result.values.each do |result_analyze| result_analyze.each do |result| next if result.status.eql?('ok') errors << result.error_message end end errors end
process(analyzer_class, dto_class)
click to toggle source
# File app/use_case/doctor/health_check.rb, line 38 def process(analyzer_class, dto_class) analyze_result = analyzer_class.new.analyse dto_result = [] analyze_result.each do |result| dto_result << dto_class.new(result) end dto_result end