def setup(args): handlers = [] stream_handler = logging.StreamHandler() stream_handler.setFormatter( logging.Formatter( datefmt="%Y-%m-%d %H:%M:%S", fmt="%(name)s %(asctime)s %(levelname)-8s %(message)s", ) ) handlers.append(stream_handler) level = { "debug": logging.DEBUG, "info": logging.INFO, "warning": logging.WARNING, "error": logging.ERROR, "critical": logging.CRITICAL, }.get(args.log_level, logging.INFO) syslogger = ( logging.NullHandler() if args.no_syslog else logging.handlers.SysLogHandler() ) handlers.append(syslogger) if args.log_file: handlers.append(logging.FileHandler(args.log_file)) deployment_log_handler = DeploymentLogHandler() handlers.append(deployment_log_handler) mender_logger = logging.getLogger("mender") mender_logger.deployment_log_handler = deployment_log_handler mender_logger.handlers = handlers mender_logger.setLevel(level) log.info(f"Log level set to {logging.getLevelName(level)}")
def run(self, force_bootstrap=False): self.context = Init().run(self.context, force_bootstrap) log.debug(f"Initialized context: {self.context}") deployment_log_handler = DeploymentLogHandler() logger = log.getLogger("") logger.addHandler(deployment_log_handler) self.context.deployment_log_handler = deployment_log_handler self.context.deployment_log_handler.disable() while True: self.unauthorized_machine.run(self.context) self.authorized_machine.run(self.context)
def fixture_ctx(): settings.PATHS.deployment_log = os.getcwd() context = statemachine.Context() context.JWT = "foobar" context.config = config.Config({}, {}) context.update_timer = timeutil.IsItTime context.deployment_log_handler = DeploymentLogHandler() context.deployment = deployments.DeploymentInfo( { "id": "bugsbunny", "artifact": { "artifact_name": "release-1", "source": {"uri": "https://docker.mender.io",}, }, } ) return context
class MockLogger: handlers = [DeploymentLogHandler()]