log.py 1015 B

12345678910111213141516171819202122232425262728
  1. """ Logging helpers
  2. Hacked together by / Copyright 2020 Ross Wightman
  3. """
  4. import logging
  5. import logging.handlers
  6. class FormatterNoInfo(logging.Formatter):
  7. def __init__(self, fmt='%(levelname)s: %(message)s'):
  8. logging.Formatter.__init__(self, fmt)
  9. def format(self, record):
  10. if record.levelno == logging.INFO:
  11. return str(record.getMessage())
  12. return logging.Formatter.format(self, record)
  13. def setup_default_logging(default_level=logging.INFO, log_path=''):
  14. console_handler = logging.StreamHandler()
  15. console_handler.setFormatter(FormatterNoInfo())
  16. logging.root.addHandler(console_handler)
  17. logging.root.setLevel(default_level)
  18. if log_path:
  19. file_handler = logging.handlers.RotatingFileHandler(log_path, maxBytes=(1024 ** 2 * 2), backupCount=3)
  20. file_formatter = logging.Formatter("%(asctime)s - %(name)20s: [%(levelname)8s] - %(message)s")
  21. file_handler.setFormatter(file_formatter)
  22. logging.root.addHandler(file_handler)