0.01
No commit activity in last 3 years
No release in over 3 years
Provides an easy to use API for generating custom probes and communicating probe success/failure to Nagios
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

 Project Readme

nagios-probe¶ ↑

Provides an easy to use API for generating custom probes and communicating probe success/failure to Nagios.

Installation¶ ↑

# gem install nagios-probe

Usage¶ ↑

Simply create a subclass of Nagios::Probe and define the following methods:

  • check_crit

  • check_warn

  • check_ok (optional*)

  • crit_message

  • warn_message

  • ok_message

*check_ok is defined in the base class to always return true.

class MyProbe < Nagios::Probe
  def check_crit
    true
  end

  def check_warn
    false
  end

  def crit_message
    "Things are bad"
  end

  def warn_message
    "Things aren't going well"
  end

  def ok_message
    "Nothing to see here"
  end
end

To use your probe you must wrap it in a begin/rescue block to catch any exceptions and accurately report the status to Nagios.

begin
  options = {} # Nagios::Probe constructor accepts a single optional param that is assigned to @opts
  probe = MyProbe.new(options)
  probe.run
rescue Exception => e
  puts "Unknown: " + e
  exit Nagios::UNKNOWN
end

puts probe.message
exit probe.retval

Note on Patches/Pull Requests¶ ↑

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2009-2010 David Abdemoulaie. See LICENSE for details.