logging.basicConfig(level=logging.INFO,filename=c.config_dict['logfile'],filemode='a',format='%(levelname)s[%(asctime)s]:%(message)s',datefmt='%Y-%m-%d %H:%M:%S') console = logging.StreamHandler() console.setLevel(logging.INFO) console.setFormatter(logging.Formatter('%(levelname)s[%(asctime)s]:%(message)s',datefmt='%Y-%m-%d %H:%M:%S')) logging.getLogger('').addHandler(console)
其中console是指向控制台的输出。
python 还支持另外循环记日志,并且限制日志文件的大小,所谓循环记日志就是设定日志文件最多的数量,超过这个数量最老的日志文件就会被删除,代码如下:
my_logger = logging.getLogger() my_logger.setLevel(logging.INFO) handler = logging.handlers.RotatingFileHandler('Search.Log', maxBytes=20*1024*1024, backupCount=100) handler.setFormatter(logging.Formatter('%(levelname)s[%(asctime)s]:%(message)s',datefmt='%Y-%m-%d %H:%M:%S')) my_logger.addHandler(handler)