1 #encoding=utf-8 2 import logging.config 3 4 logging.config.dictConfig({ 5 'version': 1, 6 'disable_existing_loggers': True, 7 'formatters': { 8 'verbose': { 9 'format': "[%(asctime)s %(module)s:%(lineno)s %(levelname)s] %(message)s", 10 'datefmt': "%Y-%m-%d %H:%M:%S" 11 }, 12 'simple': { 13 'format': '%(levelname)s %(message)s' 14 }, 15 }, 16 'handlers': { 17 'null': { 18 'level': 'DEBUG', 19 'class': 'logging.NullHandler', 20 }, 21 'console': { 22 'level': 'DEBUG', 23 'class': 'logging.StreamHandler', 24 'formatter': 'verbose' 25 }, 26 'file': { 27 'level': 'DEBUG', 28 'class': 'logging.handlers.RotatingFileHandler', 29 # 当达到10MB时分割日志 30 'maxBytes': 1024 * 1024 * 10, 31 # 最多保留50份文件 32 'backupCount': 50, 33 # If delay is true, 34 # then file opening is deferred until the first call to emit(). 35 'delay': True, 36 'filename': 'test.log', 37 'formatter': 'verbose' 38 } 39 }, 40 'loggers': { 41 'V1': { 42 'handlers': ['file','console'], 43 'level': 'DEBUG', 44 }, 45 } 46 })