log.py 798 B

123456789101112131415161718192021222324252627282930
  1. # -*- coding: utf-8 -*-
  2. import logging, sys
  3. from logging.handlers import SysLogHandler
  4. from radicale import config
  5. class log:
  6. def __init__(self):
  7. self.logger=logging.getLogger("radicale")
  8. self.logger.setLevel(config.get("logging", "facility"))
  9. loggingType=config.get("logging", "type")
  10. if loggingType == "stdout":
  11. handler=logging.StreamHandler(sys.stdout)
  12. elif loggingType == "file":
  13. handler=logging.FileHandler(config.get("logging", "logfile"))
  14. else:
  15. handler=logging.handlers.SysLogHandler("/dev/log")
  16. formatter = logging.Formatter('%(name)s %(asctime)s %(levelname)s %(message)s')
  17. handler.setFormatter(formatter)
  18. self.logger.addHandler(handler)
  19. def log(self, level, msg):
  20. self.logger.log(level, msg)
  21. _LOGGING = log()
  22. sys.modules[__name__] = _LOGGING