From: Łukasz Stelmach Date: Tue, 26 Sep 2023 16:01:16 +0000 (+0200) Subject: WIP: coloured logins X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1b37af11b1fa0a5a831ce66931b54c70240158dd;p=platform%2Fkernel%2Fu-boot.git WIP: coloured logins Change-Id: I1068c64025a549c4ad430ab77d3913b1a8e8b33e Signed-off-by: Łukasz Stelmach --- diff --git a/scripts/tizen/sd_fusing.py b/scripts/tizen/sd_fusing.py index 3df2f63..78a8997 100755 --- a/scripts/tizen/sd_fusing.py +++ b/scripts/tizen/sd_fusing.py @@ -21,6 +21,29 @@ Format = False Device = "" File = "" +class ColorFormatter(logging.Formatter): + _levelToColor = { + logging.CRITICAL: "\x1b[35;1m", + logging.ERROR: "\x1b[33;1m", + logging.WARNING: "\x1b[33;1m", + logging.INFO: "\x1b[0m", + logging.DEBUG: "\x1b[30;1m", + logging.NOTSET: "\x1b[30;1m" + } + def format(self, record): + record.levelcolor = self._levelToColor[record.levelno] + record.msg = record.msg + return logging.Formatter.format(self, record) + +class ColorStreamHandler(logging.StreamHandler): + def __init__(self, stream=None, format=None, datefmt=None, style='%', cformat=None): + logging.StreamHandler.__init__(self, stream) + if os.isatty(self.stream.fileno()): + self.formatter = ColorFormatter(cformat, datefmt, style) + self.terminator = "\x1b[0m\n" + else: + self.formatter = logging.Formatter(format, datefmt, style) + class Partition: def __init__(self, name, size, start=None, ptype=None, fstype="raw", bootable=False): self.name = name @@ -615,7 +638,13 @@ if __name__ == '__main__': for k,v in TARGETS.items(): print(f" {k:6} {v.long_name}") sys.exit(0) + + conh = ColorStreamHandler(format='%(asctime)s %(levelname)s:%(message)s', + cformat='%(asctime)s: %(levelcolor)s%(message)s', + datefmt='%Y-%m-%dT%H:%M:%S') + log_handlers = [conh] logging.basicConfig(format='%(asctime)s %(levelname)s:%(message)s', + handlers=log_handlers, level=args.log_level.upper()) check_args(args)