• logging 模块


    import logging

    logging.basicConfig(filename='access.log',
    # format='%(asctime)s - %(name)s - %(levelname)s -%(module)s: %(message)s',
    # datefmt='%Y-%m-%d %H:%M:%S %p',
    # level=30,
    # )
    #
    #
    # logging.debug('debug日志') # 10
    # logging.info('info日志') # 20
    # logging.warning('warning日志') # 30
    # logging.error('error日志') # 40
    # logging.critical('critical日志') # 50

    日志分为五个登记 10 20 30 40 50 

    logger对象:负责产生日志

    filter对象负责:过滤日志(了解)

    handler对象:控制 日志的输出位置(文件/终端)

    formmater对象 :规定日志内容的格式

    import logging

    # 1.logger对象:负责产生日志
    logger = logging.getLogger('转账记录')
    # 2.filter对象:过滤日志(了解)

    # 3.handler对象:控制日志输出的位置(文件/终端)
    hd1 = logging.FileHandler('a1.log',encoding='utf-8') # 输出到文件中
    hd2 = logging.FileHandler('a2.log',encoding='utf-8') # 输出到文件中
    hd3 = logging.StreamHandler() # 输出到终端

    # 4.formmater对象:规定日志内容的格式
    fm1 = logging.Formatter(
    fmt='%(asctime)s - %(name)s - %(levelname)s -%(module)s: %(message)s',
    datefmt='%Y-%m-%d %H:%M:%S %p',
    )
    fm2 = logging.Formatter(
    fmt='%(asctime)s - %(name)s: %(message)s',
    datefmt='%Y-%m-%d',
    )

    # 5.给logger对象绑定handler对象
    logger.addHandler(hd1)
    logger.addHandler(hd2)
    logger.addHandler(hd3)

    # 6.给handler绑定formmate对象
    hd1.setFormatter(fm1)
    hd2.setFormatter(fm2)
    hd3.setFormatter(fm1)

    # 7.设置日志等级
    logger.setLevel(20)

    # 8.记录日志
    logger.debug('写了半天 好累啊 好热啊 好想释放')

  • 相关阅读:
    图与链表的深拷贝
    Codeforces Round #686(Div.3) [C- Sequence
    前缀和
    递归改非递归
    STL源码剖析笔记
    第六章 进程
    C++ 设计模式--模板模式、策略模式、观察者模式
    宏定义方式 进行枚举类型和枚举类型的相互转换
    Linux常见信号介绍
    git rebase 操作
  • 原文地址:https://www.cnblogs.com/yangxinpython/p/11222425.html
Copyright © 2020-2023  润新知