尊重原创,原文链接
一、logging直接写在代码中
>>>http://blog.csdn.net/naiveloafer/article/details/7630673
二、通过配置文件来配置输出
配置文件:
- <span style="font-size:18px;">#Configuration for log output
- #Naiveloafer
- #2012-06-04
-
- [loggers]
- keys=root,xzs
-
- [handlers]
- keys=consoleHandler,fileHandler,rotatingFileHandler
-
- [formatters]
- keys=simpleFmt
-
- [logger_root]
- level=DEBUG
- #handlers=consoleHandler
- #handlers=fileHandler
- handlers=rotatingFileHandler
-
- [logger_xzs]
- level=DEBUG
- handlers=rotatingFileHandler
- qualname=xzs
- propagate=0
-
- [handler_consoleHandler]
- class=StreamHandler
- level=DEBUG
- formatter=simpleFmt
- args=(sys.stdout,)
-
- [handler_fileHandler]
- class=FileHandler
- level=DEBUG
- formatter=simpleFmt
- args=("../log/p2pplayer.log", "a")
-
- [handler_rotatingFileHandler]
- class=handlers.RotatingFileHandler
- level=DEBUG
- formatter=simpleFmt
- args=("../log/p2pplayer.log", "a", 20*1024*1024, 10)
-
-
- [formatter_simpleFmt]
- format=%(asctime)s - %(name)s - %(levelname)s - %(message)s - [%(filename)s:%(lineno)s]
- datefmt=</span>
测试代码:
- <span style="font-size:18px;">def log_test02():
- import logging
- import logging.config
- CONF_LOG = "../conf/p2pplayer_logging.conf"
- logging.config.fileConfig(CONF_LOG);
- logger = logging.getLogger("xzs")
- logger.debug("Hello xzs")
-
- logger = logging.getLogger()
- logger.info("Hello root")
-
- if __name__ == "__main__":
- log_test02()</span>
输出:
- <span style="font-size:18px;">2012-06-04 15:28:05,751 - xzs - DEBUG - Hello xzs - [xlog.py:29]
- 2012-06-04 15:28:05,751 - root - INFO - Hello root - [xlog.py:32]</span>
具体就不详细说明了,总之是能够运行的,这个文件配置搞了我两天时间。
特别是class=XXXX要注意!!!