コード例 #1
0
    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
コード例 #2
0
        }
        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()
コード例 #3
0
                     '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()