zoukankan      html  css  js  c++  java
  • python中的日志

    • DEBUG:最详细的日志信息,仅在开发时使用
    • INFO:一般的系统信息,仅限于开发中
    • WARNING警告:描述系统发生小问题的信息,但通常不影响功能
    • ERROR错误:描述系统发生大问题的信息,可能会导致功能不正常
    • CRITICAL严重错误:描述系统发生严重问题的信息,应用程序有崩溃的风险

    ​ 日志等级:debug < info < warning < error < critical,而日志的信息量是依次减少的。一般使用debug和info级别日志获取尽可能详细的日志信息来开发或部署调试。

    log的四大组件:

    • loggers(记录器)日志系统的入口、
    • Handlers(处理器)决定用何种方式处理记录器的信息、
    • Filters(过滤器)决定哪些日志会被输出、
    • Formatters(格式化器)主要功能是确定最终输出的形式和内容

    日志的处理流程:一条日志信息想要被最终输出需要依次经过几次过滤,分别是:

    1. 日志器等级过滤
    2. 日志的过滤器过滤
    3. 日志的处理器等级过滤
    4. 日志的处理器的过滤器过滤
    5. 确定最终输出的形式和内容。

    代码:

    # 获取logger
    logger = logging.getLogger(__name__)
    # 配置处理策略
    handler = logging.FileHandler("log.txt", encoding="utf-8")
    # 格式处理--%(级别名字)s-%(时间)s-%(信息)s
    formater = logging.Formatter("%(levelname)s-%(time)s-%(masagee)s")
    
    # 格式工具绑定在处理器上
    handler.setFormatter(formatter)
    # 将自定义的处理者交给logger
    logger.addHandler(handler)
    logger.error()
    

    Django作为一个重量级框架,都帮我们集成好了,直接在settings里面配置LOGGING={},定义版本,format定义格式,handlers配置处理策略,loggers配置handlers、level等级。使用的时候就放到视图函数里面就ok了。

  • 相关阅读:
    bash task list and interrupt
    bash字符串大小写转换方法
    Spectrum Mask
    OFDM中CP的优缺点
    模块边界使用寄存器来做数据的交互
    跨时钟域信号处理
    FPGA中一个Slice所含资源
    Verilog中if-else改写成case的方法
    同步序列的自相关与互相关
    TCP三次握手四次挥手
  • 原文地址:https://www.cnblogs.com/lance-lzj/p/13992088.html
Copyright © 2011-2022 走看看