• python模块之—logging日志模块


    日志的级别分为

    logging.debug("test ....")
    logging.info("test info ....")
    logging.warning("start to run db backup job ....")
    logging.error("test error ....")

    logging模块默认打印级别为warning

    一,basicConfig 终端和文件二选一

    import logging
    
    logging.basicConfig(
        # 通过level设定级别
        level=logging.DEBUG,
        #存入文件中(不在屏幕显示),默认追加的模式
        # filename='logger.log',
        # 写入模式可改为写入
        filemode='w',
        # 日志打印格式asctime=当前时间,lineno=产生日志时的行号,message=信息
        format='%(asctime)s %(lineno)d %(message)s'
    )
    # basicConfig  终端和文件二选一
    
    # %(name)s Logger的名字
    # %(levelno)s 数字形式的日志级别
    # %(levelname)s 文本形式的日志级别
    # %(pathname)s 调用日志输出函数的模块的完整路径名,可能没有
    # %(filename)s 调用日志输出函数的模块的文件名
    # %(module)s 调用日志输出函数的模块名
    # %(funcName)s 调用日志输出函数的函数名
    # %(lineno)d 调用日志输出函数的语句所在的代码行
    # %(created)f 当前时间,用UNIX标准的表示时间的浮 点数表示
    # %(relativeCreated)d 输出日志信息时的,自Logger创建以 来的毫秒数
    # %(asctime)s 字符串形式的当前时间。默认格式是 “2003-07-08 16:49:45,896”。逗号后面的是毫秒
    # %(thread)d 线程ID。可能没有
    # %(threadName)s 线程名。可能没有
    # %(process)d 进程ID。可能没有
    # %(message)s用户输出的消息

    二,二者都可以执行

    # 创建logger对象
    logger = logging.getLogger()
    
    # 会向文件输入日志
    fh = logging.FileHandler('test_log')
    
    # 会向终端显示日志
    ch = logging.StreamHandler()
    
    # 定义日志格式
    fm = logging.Formatter('%(asctime)s %(lineno)d %(message)s')
    
    # 统一两种日志格式,当然你也可以设置不同的格式
    fh.setFormatter(fm)
    ch.setFormatter(fm)
    
    # 添加两个方法
    logger.addHandler(fh)
    logger.addHandler(ch)
    # 设定日志级别
    logger.setLevel('DEBUG')
  • 相关阅读:
    Canvas与Paint的0基础使用
    PHP经常使用功能
    java枚举在android项目应用
    POJ1833 & POJ3187 & POJ3785 next_permutation应用
    usb芯片调试经验
    Equals和==比較
    JSTL标准标签库具体解释
    零基础学python-3.3 标识符
    用react native 做的一个推酷client
    Linux异常关机后,Mysql启动出错ERROR 2002 (HY000)
  • 原文地址:https://www.cnblogs.com/Robertzewen/p/9544685.html
Copyright © 2020-2023  润新知