summaryrefslogtreecommitdiffstats
path: root/plugins/nscautils.py.in
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/nscautils.py.in')
-rw-r--r--plugins/nscautils.py.in24
1 files changed, 24 insertions, 0 deletions
diff --git a/plugins/nscautils.py.in b/plugins/nscautils.py.in
index 51df927..cf5f58b 100644
--- a/plugins/nscautils.py.in
+++ b/plugins/nscautils.py.in
@@ -17,6 +17,7 @@
#
import ConfigParser
+import subprocess
from glusternagios import utils
@@ -61,5 +62,28 @@ def send_to_nsca(hostName, serviceName, exitStatus, resultString):
return ret
+def send_to_nsca_subproc(hostName, serviceName, exitStatus, resultString):
+ cmddata = '%s\t%s\t%s\t%s\n' % (hostName,
+ serviceName,
+ exitStatus,
+ resultString)
+ nagiosIP = getNagiosServerIP()
+ p = subprocess.Popen(
+ args=(
+ __NSCA_CMD_PATH.cmd,
+ '-c', __NSCA_CONF_PATH,
+ '-H', nagiosIP,
+ ),
+ stdin=subprocess.PIPE,
+ stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE,
+ close_fds=True,
+ )
+
+ stdout, stderr = p.communicate(input=cmddata)
+ rc = p.returncode
+ return rc
+
+
def vol_service_name(volName, statusType=None):
return "Volume Status %s - %s" % (statusType, volName)