logging日志

打印 上一主题 下一主题

主题 904|帖子 904|积分 2712

★ 基本介绍
  1. logging是Python内置的日志处理模块,用来记录程序的运行状态和故障排除;因为print是同步代码,会影响代码的执行速度,而logging是异步的,可以在多进程爬取中、在协程爬取中使用logging记录调试信息而不会影响到代码的异步执行和运行效率。
复制代码
★ 日志信息品级


  • 日志信息分成五级;从高到低排序为:

    • CRITICAL:严重错误
    • ERROR: 错误
    • WARNING: 警告  (默认级别)
    • INFO: 主要信息
    • DEBUG: 调试信息

★ 日志输出


  • 将日志输出到控制台
    1. import logging
    2. # 定义日志输出格式和等级
    3. logging.basicConfig(level=logging.WARNING,  
    4.                     format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')  
    5. logger = logging.getLogger("日志名")
    6. logger.debug()
    7. logger.error()
    8. ...
    复制代码
  • 将日志输出到文件
    1. import logging  
    2. logging.basicConfig(level=logging.WARNING,  
    3.                     filename='./log.txt',  
    4.                     filemode='w',  
    5.                     format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')  
    6. logger = logging.getLogger("日志名")
    7. # use logging  
    8. logger.info('这是 loggging info message')  
    9. logger.debug('这是 loggging debug message')  
    10. logger.warning('这是 loggging a warning message')  
    11. logger.error('这是 an loggging error message')  
    12. logger.critical('这是 loggging critical message')
    复制代码
  • 将日志输出到控制台同时输出到文件
    1. import logging  
    2. # 第一步,创建一个logger  
    3. logger = logging.getLogger()  
    4. logger.setLevel(logging.INFO)  # Log等级总开关  
    5. # 第二步,创建一个handler,用于写入日志文件  
    6. logfile = './log.txt'  
    7. fh = logging.FileHandler(logfile, mode='a')  # open的打开模式这里可以进行参考
    8. fh.setLevel(logging.DEBUG)  # 输出到file的log等级的开关  
    9. # 第三步,再创建一个handler,用于输出到控制台  
    10. ch = logging.StreamHandler()  
    11. ch.setLevel(logging.WARNING)   # 输出到console的log等级的开关  
    12. # 第四步,定义handler的输出格式  
    13. formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s")  
    14. fh.setFormatter(formatter)  
    15. ch.setFormatter(formatter)  
    16. # 第五步,将logger添加到handler里面  
    17. logger.addHandler(fh)  
    18. logger.addHandler(ch)  
    19. # 日志  
    20. logger.debug('这是 logger debug message')  
    21. logger.info('这是 logger info message')  
    22. logger.warning('这是 logger warning message')  
    23. logger.error('这是 logger error message')  
    24. logger.critical('这是 logger critical message')
    复制代码

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

缠丝猫

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表