diff options
author | Sahina Bose <sabose@redhat.com> | 2014-04-01 17:08:18 +0530 |
---|---|---|
committer | Bala.FA <barumuga@redhat.com> | 2014-04-29 10:14:33 +0530 |
commit | ed8efbc2adb78ab756081b1f57dd23328123a1d5 (patch) | |
tree | c42214c1778c1fea724a4479e95f2f9d506ff53d /plugins/check_vol_status.py | |
parent | 86a404d7ce805a25762cd66c310b1ad9e3a2a779 (diff) |
plugins: Plugin to act on syslog message
This plugin integrates with syslog messages
and sends the output to Nagios server
using NSCA
Refactored code to separate out common
NSCA related code to nscautils
Change-Id: I6a874da7f2296310060742acb6b1cd6562f5d0f0
Signed-off-by: Sahina Bose <sabose@redhat.com>
Diffstat (limited to 'plugins/check_vol_status.py')
-rwxr-xr-x | plugins/check_vol_status.py | 44 |
1 files changed, 9 insertions, 35 deletions
diff --git a/plugins/check_vol_status.py b/plugins/check_vol_status.py index 9e526da..33e26ee 100755 --- a/plugins/check_vol_status.py +++ b/plugins/check_vol_status.py @@ -1,9 +1,11 @@ #!/usr/bin/python + import re -import commands import argparse +import commands import xml.etree.ElementTree as ET from glusternagios import utils +import nscautils def parseXml(xmldoc, searchStr): @@ -25,37 +27,6 @@ def getVolumeStatus(vol_status_out): return vol_status -def getNagiosServerIP(): - nagiosIP = "" - nscaConfig = open("/etc/nagios/nagios_server.cfg", "r+") - for line in nscaConfig.readlines(): - if "nagios_server" in line: - #print line.rstrip() - line = line.rstrip() - nagiosIP = line.rpartition('=')[2] - #print nagiosIP - return nagiosIP - - -def send_to_nsca(hostName, serviceName, exitStatus, resultString): - #print hostName - #print serviceName - #print exitStatus - #print resultString - f = open('out.txt', 'w') - print >> f, '%s\t%s\t%s\t%s' % (hostName, - serviceName, - exitStatus, - resultString) - f.close() - nagiosIP = getNagiosServerIP() - command_send_nsca = "send_nsca -H " + nagiosIP + \ - " -c /etc/nagios/send_nsca.cfg < out.txt" - #print command_send_nsca - commands.getoutput(command_send_nsca) - #print nsca_stat - - def showBrickStatus(vol_status_out): ipPat = re.compile("^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$") xmlElemList = [] @@ -83,7 +54,10 @@ def showBrickStatus(vol_status_out): else: exitStatus = utils.PluginStatusCode.CRITICAL resultString = "Brick Status: CRITICAL" - send_to_nsca(brickIP, brickName, exitStatus, resultString) + nscautils.send_to_nsca(brickIP, + brickName, + exitStatus, + resultString) def showVolumeStatus(vol_status_out, volName, clusterName): @@ -94,7 +68,7 @@ def showVolumeStatus(vol_status_out, volName, clusterName): #brick_list = [] resultString = "" exitStatus = utils.PluginStatusCode.OK - serviceName = "Volume-%s-Status" % volName + serviceName = nscautils.vol_service_name(volName) ipPat = re.compile("^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$") vol_status = getVolumeStatus(vol_status_out) if vol_status == "Started": @@ -132,7 +106,7 @@ def showVolumeStatus(vol_status_out, volName, clusterName): brick_online) exitStatus = utils.PluginStatusCode.OK - send_to_nsca(clusterName, serviceName, exitStatus, resultString) + nscautils.send_to_nsca(clusterName, serviceName, exitStatus, resultString) def parse_input(): |