• python 库笔记:logging 之模块级别函数


    logging 模块提供了一个灵活的框架,用于从python程序中发送日志消息

    1 日志级别

    • DEBUG: 详细信息,通常只在诊断问题时使用。
    • INFO: 确认程序按预期运行。
    • WARNING: 表示有潜在的问题。
    • ERROR: 表示一个更严重的问题,程序可能无法执行某些功能。
    • CRITICAL: 表示一个非常严重的错误,程序可能无法继续运行。

    2 记录日志方式1:模块级别函数

    • 当指定一个日志级别之后,会记录大于或等于这个日志级别的日志信息,小于的将会被丢弃,
    • 默认情况下日志打印只显示大于等于 WARNING 级别的日志
    1. import logging
    2. def test_logging():
    3. logging.debug('Python debug')
    4. logging.info('Python info')
    5. logging.warning('Python warning')
    6. logging.error('Python Error')
    7. logging.critical('Python critical')
    8. test_logging()
    9. '''
    10. WARNING:root:Python warning
    11. ERROR:root:Python Error
    12. CRITICAL:root:Python critical
    13. '''

    2.1 设置日志显示级别

    • 通过 logging.basicConfig() 可以设置 root 的日志级别,和日志输出格式
    • 需要在开头就设置,在中间设置并无作用

    2.1.1 设置日志级别

    1. import logging
    2. logging.basicConfig(level=logging.DEBUG)
    3. def test_logging():
    4. logging.debug('Python debug')
    5. logging.info('Python info')
    6. logging.warning('Python warning')
    7. logging.error('Python Error')
    8. logging.critical('Python critical')
    9. test_logging()
    10. '''
    11. DEBUG:root:Python debug
    12. INFO:root:Python info
    13. WARNING:root:Python warning
    14. ERROR:root:Python Error
    15. CRITICAL:root:Python critical
    16. '''

    2.1.2 设置存储位置

    1. import logging
    2. logging.basicConfig(filename='log.txt',level=logging.DEBUG)
    3. def test_logging():
    4. logging.debug('Python debug')
    5. logging.info('Python info')
    6. logging.warning('Python warning')
    7. logging.error('Python Error')
    8. logging.critical('Python critical')
    9. test_logging()

    相应的位置就会有一个log.txt文件,里面是logging的内容

    2.2 设置日志格式

    1. import logging
    2. logging.basicConfig(format='%(asctime)s %(message)s')
    3. def test_logging():
    4. logging.debug('Python debug')
    5. logging.info('Python info')
    6. logging.warning('Python warning')
    7. logging.error('Python Error')
    8. logging.critical('Python critical')
    9. test_logging()
    10. '''
    11. 2023-10-27 10:48:18,817 Python warning
    12. 2023-10-27 10:48:18,819 Python Error
    13. 2023-10-27 10:48:18,819 Python critical
    14. '''

    2.2.1 格式化命令

    %(name)sLogger 的名字
    %(levelno)s数字形式的日志级别
    %(levelname)s文本形式的日志级别
    %(pathname)s:调用日志函数的源文件的完整路径名
    %(filename)s调用日志函数的源文件的文件名
    %(module)s调用日志函数的模块名
    %(funcName)s调用日志函数的函数名
    %(lineno)d调用日志函数的源文件的行号
    %(created)f日志事件的时间,表示为从纪元开始的秒数
    %(asctime)s人类可读的时间格式
    %(msecs)d日志事件的毫秒部分
    %(relativeCreated)d日志事件的时间,表示为从日志记录模块加载以来的毫秒数
    %(thread)d线程 ID
    %(threadName)s线程名
    %(process)d进程 ID
    %(message)s用户输出的消息
    1. import logging
    2. logging.basicConfig(format='''%(name)s \n
    3. %(levelno)s \n
    4. %(levelname)s \n
    5. %(pathname)s \n
    6. %(filename)s: \n
    7. %(module)s: \n
    8. %(funcName)s \n
    9. %(lineno)d \n
    10. %(created)f: \n
    11. %(asctime)s \n
    12. %(msecs)d \n
    13. %(relativeCreated)d \n
    14. %(thread)d \n
    15. %(threadName)s \n
    16. %(process)d \n
    17. %(message)s''',
    18. level=logging.CRITICAL)
    19. def test_logging():
    20. logging.debug('Python debug')
    21. logging.info('Python info')
    22. logging.warning('Python warning')
    23. logging.error('Python Error')
    24. logging.critical('Python critical')
    25. test_logging()
    26. '''
    27. root
    28. 50
    29. CRITICAL
    30. C:\Users\16000\AppData\Local\Temp\ipykernel_17092\420147071.py
    31. 420147071.py:
    32. 420147071:
    33. test_logging
    34. 27
    35. 1698375176.601358:
    36. 2023-10-27 10:52:56,601
    37. 601
    38. 1961
    39. 2776
    40. MainThread
    41. 17092
    42. Python critical
    43. '''

  • 相关阅读:
    制造行业数字化运维破局之道
    观测云产品更新|Pipeline 使用体验优化;支持写入用户的自定义事件;自定义查看器支持选择更多类型的数据等
    好用的项目管理软件需要满足哪些条件?
    18.Redis系列之AOF方式持久化
    六、《图解HTTP》一些关于Web的攻击手段
    渗透测试漏洞原理之---【失效的访问控制】
    羧基化稀土荧光微球/稀土掺杂二氧化硅荧光微球/水性稀土配合物复合微球荧光油墨应用
    一文读懂IP定位技术的优缺点
    CSP2023 游记
    onnx手术刀(ONNX-GraphSurgeon):对模型的输入端进行增,删,改操作(一)
  • 原文地址:https://blog.csdn.net/qq_40206371/article/details/134070832