Esempio n. 1
0
 def check_walker(self):
     mode = self._walker['walkertype']
     if mode == "countdown":
         logger.info("Checking walker mode 'countdown'")
         countdown = self._walker['walkervalue']
         if not countdown:
             logger.error(
                 "No Value for Mode - check your settings! Killing worker")
             return False
         if self.workerstart is None:
             self.workerstart = math.floor(time.time())
         else:
             if math.floor(
                     time.time()) >= int(self.workerstart) + int(countdown):
                 return False
         return True
     elif mode == "timer":
         logger.debug("Checking walker mode 'timer'")
         exittime = self._walker['walkervalue']
         if not exittime or ':' not in exittime:
             logger.error(
                 "No or wrong Value for Mode - check your settings! Killing worker"
             )
             return False
         return check_walker_value_type(exittime)
     elif mode == "round":
         logger.error("Rounds while sleep - HAHAHAH")
         return False
     elif mode == "period":
         logger.debug("Checking walker mode 'period'")
         period = self._walker['walkervalue']
         if len(period) == 0:
             logger.error(
                 "No Value for Mode - check your settings! Killing worker")
             return False
         return check_walker_value_type(period)
     elif mode == "coords":
         exittime = self._walker['walkervalue']
         if len(exittime) > 0:
             return check_walker_value_type(exittime)
         return True
     elif mode == "idle":
         logger.debug("Checking walker mode 'idle'")
         if len(self._walker['walkervalue']) == 0:
             logger.error(
                 "Wrong Value for mode - check your settings! Killing worker"
             )
             return False
         sleeptime = self._walker['walkervalue']
         logger.info('{} going to sleep', str(self._id))
         killpogo = False
         if check_walker_value_type(sleeptime):
             self._stop_pogo()
             killpogo = True
         while check_walker_value_type(
                 sleeptime) and not self._stop_worker_event.isSet():
             time.sleep(1)
         logger.info('{} just woke up', str(self._id))
         if killpogo:
             try:
                 self._start_pogo()
             except (WebsocketWorkerRemovedException,
                     WebsocketWorkerTimeoutException):
                 logger.error("Timeout during init of worker {}",
                              str(self._id))
         return False
     else:
         logger.error("Unknown walker mode! Killing worker")
         return False
Esempio n. 2
0
 def check_walker(self):
     mode = self._walker['walkertype']
     if mode == "countdown":
         logger.info("Checking walker mode 'countdown'")
         countdown = self._walker['walkervalue']
         if not countdown:
             logger.error(
                 "No Value for Mode - check your settings! Killing worker")
             return False
         if self.workerstart is None:
             self.workerstart = math.floor(time.time())
         else:
             if math.floor(
                     time.time()) >= int(self.workerstart) + int(countdown):
                 return False
         return True
     elif mode == "timer":
         logger.debug("Checking walker mode 'timer'")
         exittime = self._walker['walkervalue']
         if not exittime or ':' not in exittime:
             logger.error(
                 "No or wrong Value for Mode - check your settings! Killing worker"
             )
             return False
         return check_walker_value_type(exittime)
     elif mode == "round":
         logger.debug("Checking walker mode 'round'")
         rounds = self._walker['walkervalue']
         if len(rounds) == 0:
             logger.error(
                 "No Value for Mode - check your settings! Killing worker")
             return False
         processed_rounds = self._mapping_manager.routemanager_get_rounds(
             self._routemanager_name, self._id)
         if int(processed_rounds) >= int(rounds):
             return False
         return True
     elif mode == "period":
         logger.debug("Checking walker mode 'period'")
         period = self._walker['walkervalue']
         if len(period) == 0:
             logger.error(
                 "No Value for Mode - check your settings! Killing worker")
             return False
         return check_walker_value_type(period)
     elif mode == "coords":
         exittime = self._walker['walkervalue']
         if len(exittime) > 0:
             return check_walker_value_type(exittime)
         return True
     elif mode == "idle":
         logger.debug("Checking walker mode 'idle'")
         if len(self._walker['walkervalue']) == 0:
             logger.error(
                 "Wrong Value for mode - check your settings! Killing worker"
             )
             return False
         sleeptime = self._walker['walkervalue']
         logger.info('{} going to sleep', str(self._id))
         killpogo = False
         if check_walker_value_type(sleeptime):
             self._stop_pogo()
             killpogo = True
         while not self._stop_worker_event.isSet(
         ) and check_walker_value_type(sleeptime):
             time.sleep(1)
         logger.info('{} just woke up', str(self._id))
         if killpogo:
             self._start_pogo()
         return False
     else:
         logger.error("Unknown walker mode! Killing worker")
         return False
Esempio n. 3
0
 def check_walker(self):
     mode = self._walker['walkertype']
     if mode == "countdown":
         log.info("Checking Walker Mode Countdown")
         countdown = self._walker['walkervalue']
         if not countdown:
             log.error(
                 "No Value for Mode - check your settings! - kill Worker")
             return False
         if self._walkerstart is None:
             self._walkerstart = math.floor(time.time())
         else:
             if math.floor(time.time()) >= int(
                     self._walkerstart) + int(countdown):
                 return False
         return True
     elif mode == "timer":
         log.info("Checking Walker Mode Timer")
         exittime = self._walker['walkervalue']
         if not exittime or ':' not in exittime:
             log.error(
                 "No or wrong Value for Mode - check your settings! - kill Worker"
             )
             return False
         return check_walker_value_type(exittime)
     elif mode == "round":
         log.info("Checking Walker Mode Round")
         rounds = self._walker['walkervalue']
         if len(rounds) == 0:
             log.error(
                 "No Value for Mode - check your settings! - kill Worker")
             return False
         processed_rounds = self._walker_routemanager.get_rounds(self._id)
         if int(processed_rounds) >= int(rounds):
             return False
         return True
     elif mode == "period":
         log.info("Checking Walker Mode Period")
         period = self._walker['walkervalue']
         if len(period) == 0:
             log.error(
                 "No Value for Mode - check your settings! - kill Worker")
             return False
         return check_walker_value_type(period)
     elif mode == "coords":
         exittime = self._walker['walkervalue']
         if len(exittime) > 0:
             return check_walker_value_type(exittime)
         return True
     elif mode == "idle":
         log.info("Checking Walker Mode Idle")
         if len(self._walker['walkervalue']) == 0:
             log.error(
                 "Wrong Value for mode - check your settings! - kill Worker"
             )
             return False
         sleeptime = self._walker['walkervalue']
         log.info('%s going to sleep' % str(self._id))
         killpogo = False
         if check_walker_value_type(sleeptime):
             self._stop_pogo()
             killpogo = True
         while not self._stop_worker_event.isSet(
         ) and check_walker_value_type(sleeptime):
             time.sleep(1)
         log.info('%s just woke up' % str(self._id))
         if killpogo:
             self._start_pogo()
         return False
     else:
         log.error("Dont know this Walker Mode - kill Worker")
         return False
     return True