mirror of
https://github.com/opinkerfi/nagios-plugins.git
synced 2024-11-22 10:23:46 +01:00
This commit is contained in:
parent
0f99d2b5e6
commit
0cd2359f2f
Binary file not shown.
Binary file not shown.
@ -40,6 +40,10 @@ username="eva"
|
|||||||
password="eva1234"
|
password="eva1234"
|
||||||
mode="check_systems"
|
mode="check_systems"
|
||||||
path=''
|
path=''
|
||||||
|
nagios_server = ""
|
||||||
|
nagios_port = 8002
|
||||||
|
nagios_myhostname = "localhost"
|
||||||
|
escape_newlines = False
|
||||||
|
|
||||||
# No real need to change anything below here
|
# No real need to change anything below here
|
||||||
version="1.0"
|
version="1.0"
|
||||||
@ -67,9 +71,13 @@ from sys import exit
|
|||||||
from sys import argv
|
from sys import argv
|
||||||
from os import getenv,putenv
|
from os import getenv,putenv
|
||||||
import subprocess
|
import subprocess
|
||||||
|
import xmlrpclib
|
||||||
|
import socket
|
||||||
|
socket.setdefaulttimeout(5)
|
||||||
|
|
||||||
|
|
||||||
def print_help():
|
def print_help():
|
||||||
|
print broken
|
||||||
print "check_eva version %s" % version
|
print "check_eva version %s" % version
|
||||||
print "This plugin checks HP EVA Array with the sssu command"
|
print "This plugin checks HP EVA Array with the sssu command"
|
||||||
print ""
|
print ""
|
||||||
@ -131,6 +139,14 @@ while len(arguments) > 0:
|
|||||||
show_perfdata = True
|
show_perfdata = True
|
||||||
elif arg == '--no-perfdata':
|
elif arg == '--no-perfdata':
|
||||||
show_perfdata = False
|
show_perfdata = False
|
||||||
|
elif arg == '--nagios_myhostname':
|
||||||
|
nagios_myhostname = arguments.pop(0)
|
||||||
|
elif arg == '--nagios_server':
|
||||||
|
nagios_server = arguments.pop(0)
|
||||||
|
elif arg == '--nagiosport':
|
||||||
|
nagios_port = arguments.pop(0)
|
||||||
|
elif arg == '--escape-newlines':
|
||||||
|
escape_newlines = True
|
||||||
elif arg == '-h' or '--help':
|
elif arg == '-h' or '--help':
|
||||||
print_help()
|
print_help()
|
||||||
exit(ok)
|
exit(ok)
|
||||||
@ -271,12 +287,36 @@ def run_sssu(system=None, command="ls system full"):
|
|||||||
def end(summary,perfdata,longserviceoutput,nagios_state):
|
def end(summary,perfdata,longserviceoutput,nagios_state):
|
||||||
global show_longserviceoutput
|
global show_longserviceoutput
|
||||||
global show_perfdata
|
global show_perfdata
|
||||||
if not show_perfdata: perfdata = ""
|
global nagios_server
|
||||||
print "%s - %s | %s" % (state[nagios_state], summary,perfdata)
|
global nagios_port
|
||||||
|
global nagios_myhostname
|
||||||
|
global hostname
|
||||||
|
global mode
|
||||||
|
global escape_newlines
|
||||||
|
|
||||||
|
message = "%s - %s" % ( state[nagios_state], summary)
|
||||||
|
if show_perfdata:
|
||||||
|
message = "%s | %s" % ( message, perfdata)
|
||||||
if show_longserviceoutput:
|
if show_longserviceoutput:
|
||||||
print longserviceoutput
|
message = "%s\n%s" % ( message, longserviceoutput.strip())
|
||||||
|
if escape_newlines == True:
|
||||||
|
lines = message.split('\n')
|
||||||
|
message = '\\n'.join(lines)
|
||||||
|
if nagios_server is not None:
|
||||||
|
try:
|
||||||
|
phone_home(nagios_server,nagios_port, status=nagios_state, message=message, hostname=nagios_myhostname, servicename=mode)
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
print message
|
||||||
exit(nagios_state)
|
exit(nagios_state)
|
||||||
|
|
||||||
|
''' phone_home: Sends results to remote nagios server via python xml-rpc '''
|
||||||
|
def phone_home(nagios_server,nagios_port, status, message, hostname=None, servicename=None):
|
||||||
|
uri = "http://%s:%s" % (nagios_server,nagios_port)
|
||||||
|
s = xmlrpclib.ServerProxy( uri )
|
||||||
|
s.nagiosupdate(hostname, servicename, status, message)
|
||||||
|
return 0
|
||||||
|
|
||||||
def check_systems():
|
def check_systems():
|
||||||
summary=""
|
summary=""
|
||||||
perfdata=""
|
perfdata=""
|
||||||
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user