一、logging直接写在代码中
#!/usr/bin/python
#coding=utf-8
#Define log operation
#Naiveloafer
#2012-06-04
def log_test01():
import logging
import logging.handlers
LOG_FILE = "../log/test01.log"
handler = logging.handlers.RotatingFileHandler(LOG_FILE, maxBytes = 20*1024*1024, backupCount = 10); # 实例化handler
fmt = "%(asctime)s - %(name)s - %(levelname)s - %(message)s - [%(filename)s:%(lineno)s]"
formatter = logging.Formatter(fmt); # 实例化formatter
handler.setFormatter(formatter); # 为handler添加formatter
logger = logging.getLogger('xzs'); # 获取名为xzs的logger
logger.addHandler(handler); # 为logger添加handler
logger.setLevel(logging.DEBUG)
logger.debug("Hello boy, Debug");
logger.info("Hello boy, Info");
if __name__ == "__main__":
log_test01()
输出结果
2012-06-04 14:48:13,606 - xzs - DEBUG - Hello boy, Debug - [xlog.py:20]
2012-06-04 14:48:13,606 - xzs - INFO - Hello boy, Info - [xlog.py:21]
这种直接配置比较简单,但不够灵活
二、通过配置文件来配置输出>>>http://blog.youkuaiyun.com/naiveloafer/article/details/7630903