python日志输出—logging配置文件

本文介绍了Python的日志输出,分别讲解了如何在代码中直接使用logging模块以及通过配置文件进行日志设置。强调了配置文件中"class=XXXX"的重要性,并提到了formatter的配置方式,采用%(<dict key>)s进行字典关键字替换。
摘要由CSDN通过智能技术生成

一、logging直接写在代码中

      >>>http://blog.csdn.net/naiveloafer/article/details/7630673

二、通过配置文件来配置输出

配置文件:

#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=

测试代码:

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()

输出:

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]

具体就不详细说明了,总之是能够运行的,这个文件配置搞了我两天时间。

特别是class=XXXX要注意!!!


 关于formatter的配置,采用的是%(<dict key>)s的形式,就是字典的关键字替换。提供的关键字包括:

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值