当前位置:   article > 正文

python中打印日志_python 打印日志

python 打印日志

一、日志介绍
1、日志级别:日志的优先级、重要性或者严重程度
2、日志的作用:调试程序,跟踪定位bug,分析用户行为与数据统计
3、常见的日志级别(从小级别到大级别排序):
        debug:调试级别,打印非常详细的日志信息,通常用于代码调试
        info:信息级别,打印一般的日志信息,突出强调程序的运行过程
        warming:警告级别,打印警告信息,表明可能出现潜在的错误
        error:错误级别,打印错误异常信息,该级别的错误可能导致程序无法运行
        critical:严重错误级别,这表明系统可能无法继续运行
4、当指定日志级别后,程序会记录所有日志级别大于或者等于指定级别的东西
5、日志的格式:
        %(levelno)s 打印日志级别的数值
        %(levelname)s 打印日志级别名称
        %(pathname)s 打印当前执行程序的路径,其实就是sys.argv[0]
        %(filename)s 打印当前执行程序名
        %(funcName)s 打印日志的当前函数
        %(lineno)d 打印日志的当前行号
        %(asctime)s 打印日志的记录时间
        %(thread)d 打印线程ID
        %(threadName)s 打印线程的名称
        %(process)d 打印进程的ID
        %(message)s 打印日志的信息

二、logging用法

基本用法:

  1. # 导库,一个标准的第三方库用于日志的打印
  2. import logging
  3. # 基本用法
  4. logging.debug('这是一条调试信息')
  5. logging.info('这是日志信息')
  6. logging.warning('打印警告')
  7. logging.error('这是一条错误信息')
  8. logging.critical('这是一条严重错误信息')

输出信息如下:

  1. WARNING:root:打印警告
  2. ERROR:root:这是一条错误信息
  3. CRITICAL:root:这是一条严重错误信息

上述代码中我们打印了五种日志,但是输出结果只有三种,这是因为指定日志级别后,程序会记录大于或者等于指定级别的日志,下面我们来指定打印debug级别的日志:

  1. # 导包
  2. import logging
  3. # 设置日志级别 打印日志
  4. logging.basicConfig(level=logging.DEBUG)
  5. # 基本用法
  6. logging.debug('这是一条调试信息')
  7. logging.info('这是日志信息')
  8. logging.warning('打印警告')
  9. logging.error('这是一条错误信息')
  10. logging.critical('这是一条严重错误信息')

输出结果如下:

  1. DEBUG:root:这是一条调试信息
  2. INFO:root:这是日志信息
  3. WARNING:root:打印警告
  4. ERROR:root:这是一条错误信息
  5. CRITICAL:root:这是一条严重错误信息

我们还可以指定日志的格式,演示输出时的日志格式化:

  1. import logging
  2. fm = "%(asctime)s %(levelname)s [%(name)s] [%(filename)s] [%(funcName)s:%(lineno)d]"
  3. # 设置日志级别 打印日志
  4. logging.basicConfig(level=logging.DEBUG,format=fm)
  5. # 基本用法
  6. logging.debug('这是一条调试信息')
  7. logging.info('这是日志信息')
  8. logging.warning('打印警告')
  9. logging.error('这是一条错误信息')
  10. logging.critical('这是一条严重错误信息')

 输出信息如下:

  1. 2023-07-17 22:48:59,062 DEBUG [root] [logger.py] [<module>:36]
  2. 2023-07-17 22:48:59,063 INFO [root] [logger.py] [<module>:37]
  3. 2023-07-17 22:48:59,063 WARNING [root] [logger.py] [<module>:38]
  4. 2023-07-17 22:48:59,063 ERROR [root] [logger.py] [<module>:39]
  5. 2023-07-17 22:48:59,063 CRITICAL [root] [logger.py] [<module>:40]

我们还可以输出日志到指定的文件:

  1. # 导库,一个标准的第三方库用于日志的打印
  2. import logging
  3. fm = "%(asctime)s %(levelname)s [%(name)s] [%(filename)s] [%(funcName)s:%(lineno)d]"
  4. # 设置日志级别 打印日志 设置日志打印的文件路径
  5. logging.basicConfig(level=logging.DEBUG,format=fm,filename="testlog//log01.log")
  6. # 基本用法
  7. logging.debug('这是一条调试信息')
  8. logging.info('这是日志信息')
  9. logging.warning('打印警告')
  10. logging.error('这是一条错误信息')
  11. logging.critical('这是一条严重错误信息')

指定了日志打印的文件后点击运行,打开testlog文件夹下的log01文件,能发现已经打印了:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/512687
推荐阅读
相关标签
  

闽ICP备14008679号