Changeset 3561 for monitoring
- Timestamp:
- 09/12/13 18:29:31 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
monitoring/plugins/mpi/generic_tla_monitoring.py
r3560 r3561 194 194 Nagios_uid = pwd.getpwnam('nagios')[2] 195 195 196 current_process_ID = os.fork() 197 198 if current_process_ID == 0 : 199 ## Child process code 200 196 import multiprocessing 197 198 # def info(title): 199 # print title 200 # print 'module name:', __name__ 201 # if hasattr(os, 'getppid'): # only available on Unix 202 # print 'parent process:', os.getppid() 203 # print 'process id:', os.getpid() 204 205 def LDAP_query(OpenDJ_uid, command, LDAP_result_queue): 201 206 try : 202 207 os.setuid(OpenDJ_uid) 203 208 except OSError, e : 204 209 raise e 205 206 process = subprocess.Popen(command,207 stdout = subprocess.PIPE,208 stderr = subprocess.PIPE)209 210 stdout, stderr = process.communicate()211 212 if process.returncode == 0 :213 result = { "code" : "OK",214 "message" : 'Host %s is up and responds as expected to a query "%s" with base DN "%s".' % (host, query, base_DN)215 }216 210 else : 217 result = { "code" : "CRITICAL", 218 "message" : 'Host %s is not up or does not respond as expected to a query "%s" with base DN "%s".' % (host, query, base_DN) 219 } 220 221 os._exit(0) 211 process = subprocess.Popen(command, 212 stdout = subprocess.PIPE, 213 stderr = subprocess.PIPE) 214 215 stdout, stderr = process.communicate() 216 217 if process.returncode == 0 : 218 LDAP_result_queue.put(True) 219 else : 220 LDAP_result_queue.put(False) 221 222 223 LDAP_result_queue = multiprocessing.Queue() 224 LDAP_query_process = multiprocessing.Process(target = LDAP_query, args = (OpenDJ_uid, command, LDAP_result_queue)) 225 LDAP_query_process.start() 226 result = LDAP_result_queue.get() 227 LDAP_query_process.join() 228 229 230 if result == True: 231 return { "code" : "OK", 232 "message" : 'Host %s is up and responds as expected to a query "%s" with base DN "%s".' % (host, query, base_DN) 233 } 234 else : 235 return { "code" : "CRITICAL", 236 "message" : 'Host %s is not up or does not respond as expected to a query "%s" with base DN "%s".' % (host, query, base_DN) 237 } 238 239 # current_process_ID = os.fork() 240 241 # if current_process_ID == 0 : 242 # ## Child process code 243 222 244 223 ## Parent process code. Wait for ldapsearch child process. 224 os.waitpid(current_process_ID, 0) 245 246 # os._exit(0) 247 248 # ## Parent process code. Wait for ldapsearch child process. 249 # os.waitpid(current_process_ID, 0) 225 250 226 251 try :
Note: See TracChangeset
for help on using the changeset viewer.