https://github.com/kostya/nagios_helper
Gem for writing, testing, executing Nagios checks inside Rails application. Checks running throught http or script.
https://github.com/kostya/nagios_helper
Last synced: 6 months ago
JSON representation
Gem for writing, testing, executing Nagios checks inside Rails application. Checks running throught http or script.
- Host: GitHub
- URL: https://github.com/kostya/nagios_helper
- Owner: kostya
- License: mit
- Created: 2012-09-09T23:02:37.000Z (about 13 years ago)
- Default Branch: master
- Last Pushed: 2014-08-22T20:03:22.000Z (about 11 years ago)
- Last Synced: 2025-05-12T22:55:30.835Z (6 months ago)
- Language: Ruby
- Homepage:
- Size: 297 KB
- Stars: 6
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
NagiosHelper
============
Gem for writing, testing, executing Nagios checks inside Rails application.
Checks running throught http or script.
```
gem 'nagios_helper', :require => 'nagios'
```
$ rails generate nagios:check some
Check example:
--------------
app/nagios/some.rb
```ruby
class Nagios::Some < Nagios::Check
params :x
def execute
count = User.count + x.to_i
warn "hmmm" if count < 10
crit "ouch" if count < 5
ok "good #{count}"
end
end
```
Run:
$ RAILS_ENV=production bundle exec nagios_check some x 1
### Nagios Check Initilizers:
All files in app/nagios/initializers will auto loads.
Server:
-------
### Inside rails server
Create controller: app/controllers/nagios_controller.rb
```ruby
class NagiosController < ApplicationController
http_basic_authenticate_with :name => "nagios", :password => "password"
def check
status, message = Nagios::Runner.check(params)
render :text => "#{status}|#{message}", :layout => false
end
end
```
$ curl http://nagios:password@localhost:3000/nagios/check?method=some&x=1