mirror of
https://github.com/pim-n/pg-rad
synced 2026-03-09 19:38:11 +01:00
add basic colouring
This commit is contained in:
@ -3,10 +3,13 @@ disable_existing_loggers: false
|
||||
formatters:
|
||||
simple:
|
||||
format: '%(asctime)s - %(levelname)s: %(message)s'
|
||||
colored:
|
||||
'()': pg_rad.logger.logger.ColorFormatter
|
||||
format: '%(asctime)s - %(levelname)s: %(message)s'
|
||||
handlers:
|
||||
stdout:
|
||||
class: logging.StreamHandler
|
||||
formatter: simple
|
||||
formatter: colored
|
||||
stream: ext://sys.stdout
|
||||
loggers:
|
||||
root:
|
||||
|
||||
@ -20,3 +20,21 @@ def setup_logger(log_level: str = "WARNING"):
|
||||
config["loggers"]["root"]["level"] = log_level
|
||||
|
||||
logging.config.dictConfig(config)
|
||||
|
||||
|
||||
class ColorFormatter(logging.Formatter):
|
||||
# ANSI escape codes
|
||||
COLORS = {
|
||||
logging.DEBUG: "\033[36m", # Cyan
|
||||
logging.INFO: "\033[32m", # Green
|
||||
logging.WARNING: "\033[33m", # Yellow
|
||||
logging.ERROR: "\033[31m", # Red
|
||||
logging.CRITICAL: "\033[41m", # Red background
|
||||
}
|
||||
RESET = "\033[0m"
|
||||
|
||||
def format(self, record):
|
||||
color = self.COLORS.get(record.levelno, self.RESET)
|
||||
record.levelname = f"{color}{record.levelname}{self.RESET}"
|
||||
record.msg = f"{record.msg}"
|
||||
return super().format(record)
|
||||
|
||||
Reference in New Issue
Block a user