def __init__(self, machine, monkey, state_graph, strategy, pkg_name, time_limit): self.vm = machine self.monkey_controller = monkey self.state_graph = state_graph self.strategy = strategy self.adb_messages = AdbMessagesQueue() self.logger = log_watcher.LogWatcher(self.adb_messages) self.monitor = state_monitor.StateMonitor(self.adb_messages) self.sys_event_generator = SysEventGenerator(machine.ip, machine.adb_port, time_limit) self.logger_thread = None self.monitor_thread = None self.sys_event_thread = None self.start_time = time.time() self.time_limit = time_limit self.pkg_name = pkg_name self.state_id_being_fuzzed = "INITIAL" self.queue = Queue.Queue() self.states = set() self.crash_count = 0 self.num_restore = 0
def run(self): self.logWatcher = log_watcher.LogWatcher(self.logfileName, self.statistic) while not self.stopped(): start = time.time() self.logWatcher.loop(async=True) self.label_result_map.clear() end = time.time() if self.interval > (end - start): time.sleep(self.interval - (end - start)) else: pass
def _run(self): self.logWatcher = log_watcher.LogWatcher(self.logfilename, self.statistic) while True: start = time.time() self.logWatcher.loop() self.label_result_map.clear() end = time.time() if self.interval > (end - start): time.sleep(self.interval - (end - start)) else: print "error: timeout ", end - start, "\n"