zoukankan      html  css  js  c++  java
  • 15.python日志模块

    1、什么是日志?
    日志是一种可以追踪某些软件运行时所发生事件的方法。

    2、日志的作用
    1、程序调试

    2、了解软件程序运行情况,是否正常

    3、软件程序运行故障分析与问题定位

    3、日志等级
    日志级别分别从低到高:
    debug 调试信息
    info 关键时间说明
    warning 警告信息
    error 错误信息
    critical 严重错误信息


    4、如何实现日志的收集

    1、logging模块

    logging模块是Python内置的标准模块,主要用于输出运行日志,可以设

    置输出日志的等级、日志保存路径、日志文件回滚等。


    2、如何实现日志输出

    1)第一种方式是使用logging提供的模块级别的函数

    # 第一种方式是使用logging提供的模块级别的函数

    import time

    format="%(asctime)s %(name)s ,文件: %(filename)s 函数: %(funcName)s ,行号:%(lineno)d , %(levelname)s %(message)s"
    logging.basicConfig(format=format,
    datefmt="%Y/%m/%d %H:%M:%S",
    level=logging.DEBUG,
    filename='{}_log.txt'.format(time.strftime('%Y_%m_%d_%H_%M_%S',time.localtime()))
    )
    logging.debug("debug级别错误信息")

    def sum(a,b):
    try:
    sum=a+b
    except Exception as error:
    logging.debug(error)


    2)第二种方式是使用Logging日志系统的四大组件

    1、日志器 logger
    2、处理器 handler
    3、过滤器 filter
    4、格式器 formattor

    关系:日志器是入口,一个日志器可以多个处理器,每个处理器都有对应的过滤器和格式器

    如何python实现日志收集“

    # 第二种方式是使用Logging日志系统的四大组件
    logger=logging.getLogger("logger")
    #日志输出的最低级别(忽略当前最低级别以下级别的日志信息)
    logger.setLevel(logging.ERROR)
    # 创建控制台处理
    sh=logging.StreamHandler()
    # 创建文件处理器
    fh=logging.FileHandler(filename="{}_log2.txt".format(time.strftime('%Y_%m_%d_%H_%M_%S',time.localtime()))
    ,encoding="utf-8")
    # 把控制台处理器添加到日志器中
    logger.addHandler(sh)
    # 指定格式器显示的格式
    formatter=logging.Formatter(fmt="%(asctime)s %(name)s ,文件: %(filename)s 函数: %(funcName)s ,行号:%(lineno)d , %(levelname)s %(message)s",
    datefmt="%Y/%m/%d %H:%M:%S")
    # 控制台处理器指定格式
    sh.setFormatter(formatter)
    # 添加文件处理器到日志器
    logger.addHandler(fh)
    # 文件处理器设置格式
    fh.setFormatter(formatter)
    logger.warning("警告信息")
    logger.error("错误信息")
    logger.critical("严重错误信息")









  • 相关阅读:
    递归 正则表达式 杨辉三角
    js 获取浏览器高度和宽度值
    CSS样式大全
    P2501 [HAOI2006]数字序列 (LIS,DP)(未完成)
    Luogu1064 金明的预算方案 (有依赖的背包)
    Luogu2783 有机化学之神偶尔会做作弊 (树链剖分,缩点)
    Luogu5020 货币系统 (完全背包)
    Luogu2798 爆弹虐场 (二分,Kruskal)
    luogu1419 寻找段落 (二分,单调队列)
    Luogu1083 借教室 (线段树)
  • 原文地址:https://www.cnblogs.com/Murraya/p/14020612.html
Copyright © 2011-2022 走看看