def check_status(self, logbuf):
     self.status_data = self.fsm_parser.parse(logbuf=logbuf)
     results = ResultInfo(**self.info)
     if self.status_data:
         results.data = self.status_data
     else:
         results.data = []
     return results
    def check_status(self, logbuf):
        self.status_data = self.fsm_parser.parse(logbuf=logbuf)
        hostname = self.status_data[0]['host']
        results = ResultInfo(**self.info)
        overload_units = []
        for s in self.status_data:
            if int(s['cpuload']) > self.checking_rules['cpuload'][0]:
                # results.status = 'NOK'
                overload_units.append(s)

        results.status = (len(overload_units) == 0) and "OK" or "NOK"
        results.stats = overload_units
        results.data = self.status_data
        # print(results.stats)
        return results
 def check_status(self, logbuf=None):
     self.status_data = self.fsm_parser.parse(logbuf=logbuf)
     hostname = self.status_data[0]['host']
     self.info['hostname'] = hostname
     results = ResultInfo(**self.info)
     unit_status = []
     info = []
     stats = {'WO-EX': 0, 'SP-EX': 0, 'Other': 0}
     for s in self.status_data:
         if s['unit'] and s['status'] not in ['WO-EX', 'SP-EX']:
             unit_status.append(False)
             stats['Other'] += 1
             info.append(s)
         elif s['status']:
             stats[s['status']] += 1
     # print(stats)
     results.status = all(unit_status) and "OK" or "NOK"
     results.stats = stats
     # print(results.stats)
     results.data = self.status_data
     results.info = info
     # print(results.data)
     return results