From bf33a6846c4159ff5c9a68e9ce046be7bcdda917 Mon Sep 17 00:00:00 2001 From: nedim Date: Sun, 29 Oct 2017 16:50:54 +0100 Subject: [PATCH] add support to check status of multiple Virtual Disks and bump version --- lib/servermonitor/megacli_vd_status.rb | 33 +++++++++++++------------- lib/servermonitor/version.rb | 2 +- 2 files changed, 18 insertions(+), 17 deletions(-) diff --git a/lib/servermonitor/megacli_vd_status.rb b/lib/servermonitor/megacli_vd_status.rb index c89c059..abec835 100644 --- a/lib/servermonitor/megacli_vd_status.rb +++ b/lib/servermonitor/megacli_vd_status.rb @@ -43,23 +43,24 @@ def self.run raid_status.each_line { |l| in_in << l.chomp } # Check virtual drive status - in_in.each { |i| Regexp.new('State\s*:\s*Optimal').match?(i) ? vd_status = "Optimal".upcase : vd_status = "NOT Optimal".upcase } + in_in.each do |i| + Regexp.new('State\s*:\s*Optimal').match?(i) ? vd_status = "Optimal".upcase : vd_status = "NOT Optimal".upcase - # Display VD Status - if vd_status == "Optimal" - puts "Virtual drive status is " + vd_status.to_s + " on hostname " + fhostname - puts exit 0 unless self.config.exit_codes == false - else - puts "Virtual drive status is " + vd_status.to_s + " on hostname " + fhostname - puts exit 1 unless self.config.exit_codes == false - end - - if self.config.email_to != nil - time = Time.now.strftime("%d.%m.%Y %H:%M") - subject = "Daily RAID check STARTED on #{fhostname} at #{time}. RAID STATE: #{vd_status}." - body = "Daily RAID check: #{vd_status}" - email = ServerMonitor::EMail.new(self.config.email_from, self.config.email_to, self.config.smtp_address, self.config.smtp_port, self.config.smtp_username, self.config.smtp_password, subject, body) - email.deliver + # Display VD Status + if vd_status == "Optimal" + puts "Virtual drive status is " + vd_status.to_s + " on hostname " + fhostname + puts exit 0 unless self.config.exit_codes == false + else + puts "Virtual drive status is " + vd_status.to_s + " on hostname " + fhostname + puts exit 1 unless self.config.exit_codes == false + end + if self.config.email_to != nil + time = Time.now.strftime("%d.%m.%Y %H:%M") + subject = "Daily RAID check STARTED on #{fhostname} at #{time}. RAID STATE: #{vd_status}." + body = "Daily RAID check: #{vd_status}" + email = ServerMonitor::EMail.new(self.config.email_from, self.config.email_to, self.config.smtp_address, self.config.smtp_port, self.config.smtp_username, self.config.smtp_password, subject, body) + email.deliver + end end end end diff --git a/lib/servermonitor/version.rb b/lib/servermonitor/version.rb index 1773d0b..ce099fe 100644 --- a/lib/servermonitor/version.rb +++ b/lib/servermonitor/version.rb @@ -1,3 +1,3 @@ module ServerMonitor - VERSION = "0.1.1.3" + VERSION = "0.1.2" end