zoukankan      html  css  js  c++  java
  • python logging模块的快速应用-输出到文件

    运行程序怎能没有日志打印需求输出到文件。

    如果程序要快速打log,下面的两种方式可以参考。

    方式1

    import logging  # 引入logging模块
    import os.path
    import time
    # 第一步,创建一个logger
    logger = logging.getLogger()
    logger.setLevel(logging.INFO)  # Log等级总开关
    # 第二步,创建一个handler,用于写入日志文件
    rq = time.strftime('%Y%m%d%H%M', time.localtime(time.time()))
    log_path = os.path.dirname(os.getcwd()) + '/Logs/'
    log_name = log_path + rq + '.log'
    logfile = log_name
    fh = logging.FileHandler(logfile, mode='w')
    fh.setLevel(logging.DEBUG)  # 输出到file的log等级的开关
    # 第三步,定义handler的输出格式
    formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s")
    fh.setFormatter(formatter)
    # 第四步,将logger添加到handler里面
    logger.addHandler(fh)
    # 日志
    logger.debug('this is a logger debug message')
    logger.info('this is a logger info message')
    logger.warning('this is a logger warning message')
    logger.error('this is a logger error message')
    logger.critical('this is a logger critical message')
    

    方式2

    import logging
    import os
    
    path = os.getcwd() # 获取当前文件路径
    file = os.path.join(path, 2021.log"")
    
    logging.basicConfig(filename=file, level=logging.INFO, format="%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s")
    
    # 可以放log了
    logging.info("我就是要打个log")
    
    
  • 相关阅读:
    一段关于生成器代码的解读
    (十三)内置函数
    (十二)生成器和生成器函数,推导式和表达式
    (十一)函数名的使用,闭包,迭代器
    (十)函数的动态传参,作用域
    (九)函数
    (八)文件操作
    (七)深浅拷贝
    (六)id(),is和==,内存常量
    (五)字典,集合
  • 原文地址:https://www.cnblogs.com/davis12/p/14558837.html
Copyright © 2011-2022 走看看