def parseResult(self, data, result): value = None message = None if data.get('messages'): value = data['messages'] message = ' found ' + str(value) + ' messages' else: value = 0 message = ' No messages found in queue' status = OK if self.options.critical is not None and self.options.critical.in_range(value): status = CRITICAL elif self.options.warning is not None and self.options.warning.in_range(value): status = WARNING if result is None: result = Response(status, message) elif result.status.exit_code < status.exit_code: result.status = status result.message = message self.rabbit_note = result.message return result
} for proc in procs: processes[proc['statename']].append(proc['name']) ret = OK for state in ('STOPPING', 'STARTING'): if len(processes[state]): ret = WARNING if len(processes['UNKNOWN']): ret = UNKNOWN for state in ('EXITED', 'BACKOFF', 'FATAL'): if len(processes[state]): ret = CRITICAL result = Response(ret, processes) msg = [] for k, v in processes.items(): if v: msg.append('%s: %s' % (k, ', '.join(v))) result.set_perf_data(k, len(v)) result.message = ' '.join(msg) return result if __name__ == '__main__': SupervisordXmlRpcCheck().check().exit()
'BACKOFF': [], 'STOPPING': [], 'EXITED': [], 'FATAL': [], 'UNKNOWN': []} for proc in procs: processes[proc['statename']].append(proc['name']) ret = OK for state in ('STOPPING', 'STARTING'): if len(processes[state]): ret = WARNING if len(processes['UNKNOWN']): ret = UNKNOWN for state in ('EXITED', 'BACKOFF', 'FATAL'): if len(processes[state]): ret = CRITICAL result = Response(ret, processes) msg = [] for k, v in processes.items(): if v: msg.append('%s: %s' % (k, ', '.join(v))) result.set_perf_data(k, len(v)) result.message = ' '.join(msg) return result if __name__ == '__main__': SupervisordXmlRpcCheck().check().exit()