+ # Create a logger that will save the log for each command.
+ # This logger will process any messages and then pass the results
+ # up to the base logger.
+ base_logger = pynacl.log_tools.GetConsoleLogger()
+ cmd_logger = base_logger.getChild('OnceCmdLogger')
+ cmd_logger.setLevel(logging.DEBUG)
+
+ log_file = self.GetLogFile(work_dir, package)
+ file_log_handler = logging.FileHandler(log_file, 'wb')
+ file_log_handler.setLevel(logging.DEBUG)
+ file_log_handler.setFormatter(
+ logging.Formatter(fmt='[%(levelname)s - %(asctime)s] %(message)s'))
+ cmd_logger.addHandler(file_log_handler)
+
+ # Log some helpful information
+ cmd_logger.propagate = False
+ cmd_logger.debug('Hostname: %s', platform.node())
+ cmd_logger.debug('Machine: %s', platform.machine())
+ cmd_logger.debug('Platform: %s', sys.platform)
+ cmd_logger.propagate = True
+