forked from p15670423/monkey
27 lines
968 B
Python
27 lines
968 B
Python
import logging
|
|
|
|
from envs.monkey_zoo.blackbox.log_handlers.monkey_log import MonkeyLog
|
|
|
|
LOGGER = logging.getLogger(__name__)
|
|
|
|
|
|
class MonkeyLogsDownloader(object):
|
|
|
|
def __init__(self, island_client, log_dir_path):
|
|
self.island_client = island_client
|
|
self.log_dir_path = log_dir_path
|
|
self.monkey_log_paths = []
|
|
|
|
def download_monkey_logs(self):
|
|
LOGGER.info("Downloading each monkey log.")
|
|
all_monkeys = self.island_client.get_all_monkeys_from_db()
|
|
for monkey in all_monkeys:
|
|
downloaded_log_path = self._download_monkey_log(monkey)
|
|
if downloaded_log_path:
|
|
self.monkey_log_paths.append(downloaded_log_path)
|
|
|
|
def _download_monkey_log(self, monkey):
|
|
log_handler = MonkeyLog(monkey, self.log_dir_path)
|
|
download_successful = log_handler.download_log(self.island_client)
|
|
return log_handler.get_log_path_for_monkey(monkey) if download_successful else None
|