pytest + loguru + allure 生成的报告没有log信息

背景

前段时间一直认为loguru这个库很不错,并且应用到了项目中,生成的日志文件也非常好看但是最后的allure报告中和html报告中都没有log信息。

然就是各种查查:

loguru作者说loguru默认是stderr ,然后了解啥是:stdoutstderr学习地址:https://bbs.csdn.net/topics/340004602。

解决办法

import os
import logging
from loguru import logger
from public.global_public_fun import logs_path


class PropagateHandler(logging.Handler):
    def emit(self, record):
        logging.getLogger(record.name).handle(record)

def get_logger():
    log_path = os.path.join(logs_path, 'run_txt.log')
    logger.remove()
    logger.add(log_path)
    logger.add(PropagateHandler())

    return logger


if __name__ == '__main__':
    logger = get_logger()
    logger.info('runlog')

posted @ 2022-11-30 17:43  Tarzen  阅读(402)  评论(0编辑  收藏  举报