zoukankan      html  css  js  c++  java
  • pyhon 自动化 logger

    #!/Users/windows8.1/PycharmProjects/pythonapi
    # @Software: PyCharm Community Edition
    # -*- coding: utf-8 -*-
    '''
    日志的级别包括:debug info error warming critical
    使用 RotatingFileHandler,优势定义最大字节数多少,备份次数多少次,
    设置最大字节 maxBytest = 20*1024*1024
    定义备份次数最大个数10个 backupCount=10
    不同modul的logger 类,需要封装
    '''
    import os
    import logging
    import logging.handlers
    from common import contants


    def get_logger(logger_name):
    logger = logging.getLogger(logger_name)
       #每个model输出的最低级别为 info
    logger.setLevel('INFO')
    # 定义输出格式
    fmt = "%(asctime)s-%(name)s-%(levelname)s-%(message)s-[%(filename)s:%(lineno)s]"
    formate = logging.Formatter(fmt)
      #定义日志大小 和 日志输出存放的位置
    file_name = os.path.join(contants.logs_dir,'case.log')
    file_hander = logging.handlers.RotatingFileHandler(file_name, maxBytes=20 * 1024 * 1024, backupCount=10,
    encoding='utf-8')
    file_hander.setLevel('INFO')
    file_hander.setFormatter(formate)

    logger.addHandler(file_hander)
    return logger


    # logger = get_logger(logger_name='LoginTest')
    # logger.error('this is login error')

    封装完之后需要在 contants.py 中增加log 路径:
    logs_dir = os.path.join(base_dir,"logs")
    print(logs_dir)

    common_dir = os.path.join(base_dir,"common")
    log_dir = os.path.join(common_dir,"log")
    print(log_dir)

    最后在 testcase 中引入model
    from common import contants,log
    log = log.get_logger('login/invest/rechage/register')
    再次 把 print 修改成 log.info/log.error

  • 相关阅读:
    枚举
    枚举
    比特币中的密码学原理
    贪心
    dp
    二分
    mac解决matplotlib中文乱码
    Keras使用多个GPU并行
    pyspark使用-dataframe操作
    箱线图
  • 原文地址:https://www.cnblogs.com/weihc/p/11954600.html
Copyright © 2011-2022 走看看