• logging模块二


    • 背景,在学习logging时总是遇到无法理解的问题,总结,尝试一下更清晰明了了,让我们开始吧!

                                                            

    • logging模块常用format格式说明

    • %(levelno)s: 打印日志级别的数值
    • %(levelname)s: 打印日志级别名称
    • %(pathname)s: 打印当前执行程序的路径,其实就是sys.argv[0]
    • %(filename)s: 打印当前执行程序名,python如:login.py
    • %(funcName)s: 打印日志的当前函数
    • %(lineno)d: 打印日志的当前行号,在第几行打印的日志
    • %(asctime)s: 打印日志的时间
    • %(thread)d: 打印线程ID
    • %(threadName)s: 打印线程名称
    • %(process)d: 打印进程ID
    • %(message)s: 打印日志信息
    • 使用前理解:

      1. logging.basicConfig函数各参数:
      2.  filename: 指定日志文件名,如my.log 或my.txt
      3.  filemode: 和file函数意义相同,指定日志文件的打开模式,'w'或'a'
      4. format: 指定输出的格式和内容,format可以输出很多有用信息,如下例所示:
      5. datefmt: 指定时间格式,同time.strftime()
      6. level: 设置日志级别,默认为logging.WARNING
      7. stream: 指定将日志的输出流,可以指定输出到sys.stderr,sys.stdout或者文件,默认输出到sys.stderr,当stream和filename同时指定时,stream被忽略

    logging中使用format:

    例1:指定文件测试
    logging.basicConfig(level=logging.DEBUG,
    format='%(asctime)s %(filename)s [line:%(lineno)d] %(levelname)s %(message)s',
    datefmt='%a, %d %b %Y %H:%M:%S',
    filename='myapp.txt',
    filemode='w')
    logging.debug("这是一个debug")

    执行结果:

    例2:不指定文件,在窗口打印日志

    logging.basicConfig(level=logging.DEBUG,
    format='%(asctime)s %(thread)d %(threadName)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
    datefmt='%a, %d %b %Y %H:%M:%S',
    filemode='w')

    执行结果:

  • 相关阅读:
    学习Python之路
    基本数据类型
    pthon之变量
    函数、参数、局部函数and函数内变量修改、嵌套函数
    文件操作M2
    文件IO操作二
    文件I/O操作
    字符编码
    数据类型之集合,数据类型总结
    数据类型之列表和元组
  • 原文地址:https://www.cnblogs.com/vip136510786/p/13748019.html
Copyright © 2020-2023  润新知