aurora
1import sys2import logging3
4
5class LoggerHandler(logging.Handler):6r"""7Logger handler used in Web UI.
8"""
9
10def __init__(self):11super().__init__()12self.log = ""13
14def reset(self):15self.log = ""16
17def emit(self, record):18if record.name == "httpx":19return20log_entry = self.format(record)21self.log += log_entry22self.log += "\n\n"23
24
25def get_logger(name: str) -> logging.Logger:26r"""27Gets a standard logger with a stream hander to stdout.
28"""
29formatter = logging.Formatter(30fmt="%(asctime)s - %(levelname)s - %(name)s - %(message)s",31datefmt="%m/%d/%Y %H:%M:%S"32)33handler = logging.StreamHandler(sys.stdout)34handler.setFormatter(formatter)35
36logger = logging.getLogger(name)37logger.setLevel(logging.INFO)38logger.addHandler(handler)39
40return logger41
42
43def reset_logging() -> None:44r"""45Removes basic config of root logger. (unused in script)
46"""
47root = logging.getLogger()48list(map(root.removeHandler, root.handlers))49list(map(root.removeFilter, root.filters))50