Sha256: f21675b968a5d30ecdf67cc064a128fc1bdb6ab88647dc6b9b1cc12706c97e7f
Contents?: true
Size: 1.23 KB
Versions: 3
Compression:
Stored size: 1.23 KB
Contents
#! /usr/bin/env ruby # # check-etcd # # DESCRIPTION: # This plugin checks that the stats/self url returns 200 OK. # # OUTPUT: # plain text # # PLATFORMS: # Linux # # DEPENDENCIES: # gem: sensu-plugin # gem: rest-client # # USAGE: # #YELLOW # # NOTES: # # LICENSE: # Copyright 2014 Sonian, Inc. and contributors. <support@sensuapp.org> # Released under the same terms as Sensu (the MIT license); see LICENSE # for details. # require 'sensu-plugin/check/cli' require 'rest-client' # # Etcd Node Status # class EtcdNodeStatus < Sensu::Plugin::Check::CLI option :server, description: 'Etcd host, defaults to localhost', short: '-h HOST', long: '--host HOST', default: 'localhost' option :port, description: 'Etcd port, defaults to 2379', short: '-p PORT', long: '--port PORT', default: '2379' def run r = RestClient::Resource.new("http://#{config[:server]}:#{config[:port]}/v2/stats/self", timeout: 5).get if r.code == 200 ok 'etcd is up' else critical 'Etcd is not responding' end rescue Errno::ECONNREFUSED critical 'Etcd is not responding' rescue RestClient::RequestTimeout critical 'Etcd Connection timed out' end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
sensu-plugins-etcd-0.0.3 | bin/check-etcd.rb |
sensu-plugins-etcd-0.0.2 | bin/check-etcd.rb |
sensu-plugins-etcd-0.0.1 | bin/check-etcd.rb |