Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1158526
  • 博文数量: 177
  • 博客积分: 1857
  • 博客等级: 上尉
  • 技术积分: 2751
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-14 22:55
  • 认证徽章:
个人简介

吾生有涯,而知无涯,适当止学.循序渐进,步步提升 Talk is cheap, show me the code.

文章分类

全部博文(177)

文章存档

2018年(12)

2017年(24)

2016年(31)

2015年(15)

2014年(5)

2013年(10)

2012年(80)

分类: Python/Ruby

2017-09-15 09:33:26

由于想给自己的Python程序添加日志功能,学习下Python的日志模块。

一个简单的例子:

点击(此处)折叠或打开

  1. import logging

  2. ##第一个简单的例子
  3. logging.warning('Watch out!') # will print a message to the console 输出到控制台
  4. logging.info('I told you so') # will not print anything 没有任何输出信息
输出至控制台的信息,如下:

点击(此处)折叠或打开

  1. D:\stock>python test4_logger.py
  2. WARNING:root:Watch out!
输出日志到文件中

点击(此处)折叠或打开

  1. import logging

  2. ##输出到example日志文件中
  3. logging.basicConfig(filename='example.log',level=logging.DEBUG)
  4. logging.debug('This message should go to the log file')
  5. logging.info('So should this')
  6. logging.warning('And this, too')
在当前目录中,有一个example.log日志文件,输出日志如下:

点击(此处)折叠或打开

  1. DEBUG:root:This message should go to the log file
  2. INFO:root:So should this
  3. WARNING:root:And this, too
----------------------------------------简单的日志的分割线-----------------------------------------------------------
由于自己写的模块,需要模块化,要有配置文件,能复用。控制台和文件都能输出。
源代码如下:

配置文件如下:

点击(此处)折叠或打开

  1. [loggers]
  2. keys=root,simpleExample
  3. [handlers]
  4. keys=consoleHandler,fileHandler
  5. [formatters]
  6. keys=simpleFormatter
  7. [logger_root]
  8. level=DEBUG
  9. handlers=consoleHandler,fileHandler
  10. [logger_simpleExample]
  11. level=DEBUG
  12. handlers=consoleHandler,fileHandler
  13. qualname=simpleExample
  14. propagate=0
  15. [handler_consoleHandler]
  16. class=StreamHandler
  17. level=DEBUG
  18. formatter=simpleFormatter
  19. args=(sys.stdout,)
  20. [formatter_simpleFormatter]
  21. format=%(asctime)s - %(name)s - %(levelname)s - %(message)s
  22. datefmt=
  23. [handler_fileHandler]
  24. class=logging.handlers.TimedRotatingFileHandler
  25. level=DEBUG
  26. formatter=simpleFormatter
  27. args=("zsd.log", "midnight")

Python执行文件:

点击(此处)折叠或打开

  1. import logging
  2. import logging.config

  3. logging.config.fileConfig('logging.conf')
  4. # create logger
  5. logger = logging.getLogger('simpleExample')

  6. # 'application' code
  7. logger.debug('debug message')
  8. logger.info('info message')
  9. logger.warn('warn message')
  10. logger.error('error message')
  11. logger.critical('critical message')


阅读(3370) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
请登录后评论。

登录 注册