import json import logging class JsonFileHandler(logging.FileHandler): def __init__(self, filename, mode="a", encoding=None, delay=False): super().__init__(filename, mode, encoding, delay) def emit(self, record): json_data = json.loads(self.format(record)) with open(self.baseFilename, "w", encoding="utf-8") as f: json.dump(json_data, f, ensure_ascii=False, indent=4) class JsonFormatter(logging.Formatter): def format(self, record): return record.msg