zoukankan      html  css  js  c++  java
  • loggong模块

    logging模块

    用于便捷记录日志且线程安全的模块

    1、单文件日志

     1 import logging
     2    
     3    
     4 logging.basicConfig(filename='log.log',
     5                     format='%(asctime)s - %(name)s - %(levelname)s -%(module)s:  %(message)s',
     6                     datefmt='%Y-%m-%d %H:%M:%S %p',
     7                     level=10)
     8    
     9 logging.debug('debug')
    10 logging.info('info')
    11 logging.warning('warning')
    12 logging.error('error')
    13 logging.critical('critical')
    14 logging.log(10,'log')

    日志等级:

    1 CRITICAL = 50
    2 FATAL = CRITICAL
    3 ERROR = 40
    4 WARNING = 30
    5 WARN = WARNING
    6 INFO = 20
    7 DEBUG = 10
    8 NOTSET = 0

    注:只有【当前写等级】大于【日志等级】时,日志文件才被记录。

    2、多文件日志

    对于上述记录日志的功能,只能将日志记录在单文件中,如果想要设置多个日志文件,logging.basicConfig将无法完成,需要自定义文件和日志操作对象。

    日志一:

    # 定义文件
    file_1_1 = logging.FileHandler('l1_1.log', 'a', encoding='utf-8')
    fmt = logging.Formatter(fmt="%(asctime)s - %(name)s - %(levelname)s -%(module)s:  %(message)s")
    file_1_1.setFormatter(fmt)
     
    file_1_2 = logging.FileHandler('l1_2.log', 'a', encoding='utf-8')
    fmt = logging.Formatter()
    file_1_2.setFormatter(fmt)
     
    # 定义日志
    logger1 = logging.Logger('s1', level=logging.ERROR)
    logger1.addHandler(file_1_1)
    logger1.addHandler(file_1_2)
     
     
    # 写日志
    logger1.critical('1111')

    日志二:

    1 # 定义文件
    2 file_2_1 = logging.FileHandler('l2_1.log', 'a')
    3 fmt = logging.Formatter()
    4 file_2_1.setFormatter(fmt)
    5  
    6 # 定义日志
    7 logger2 = logging.Logger('s2', level=logging.INFO)
    8 logger2.addHandler(file_2_1)

    如上述创建的两个日志对象

    • 当使用【logger1】写日志时,会将相应的内容写入 l1_1.log 和 l1_2.log 文件中
    • 当使用【logger2】写日志时,会将相应的内容写入 l2_1.log 文件中
  • 相关阅读:
    ASP.NET页面生命周期
    C#之virtual override new解析
    js之闭包、this
    C#使用定时任务框架Windows.TaskSchedule.exe安装控制台应用程序创建的Windows服务
    C# 利用 Windows服务模板 创建、安装与卸载Windows服务
    SQL代码生成器
    C#之JSON序列化与反序列化
    Vue源码学习1——Vue构造函数
    angular编写表单验证
    使用canvas编写时间轴插件
  • 原文地址:https://www.cnblogs.com/Acekr/p/7467609.html
Copyright © 2011-2022 走看看