簡単サーバー監視ツールを書いてみた
サーバーの生き死にを監視するツールをRubyで書いてみました。一応、L3層とL7層の監視ができます。
#!/usr/local/bin/ruby
require 'ping'
require 'net/smtp'
require 'net/http'
unless Ping.pingecho("www.server.com", 3, "80")
Net::SMTP.start('mail.server.com', 25) {|s| s.send_mail "Subject:Server Down!!(L3)", 'kanshi-24@mail.server.com', 'oishi@example.com'}
end
begin
Net::HTTP.start("www.server.com")
rescue
Net::SMTP.start('mail.server.com', 25) {|s| s.send_mail "Subject:Server Down!!(L7)", 'kanshi-24@mail.server.com', 'oishi@example.com'}
end