python项目中的重写记录器

python项目中的重写记录器,python,python-3.x,logging,Python,Python 3.x,Logging,我有一个现有的python项目。执行时,它使用常规的logger.warning()或logger.error()或类似的python日志代码语句记录消息 我的任务是在记录任何内容时将日志发送到实时可视仪表板。我已经通过以下方式了解了实时可视化部分: 我正在努力解决的是,我应该如何覆盖现有的记录器行为,以便在以现有方式实际记录之前发送用于绘图的消息,从而使所需的更改最小化,并与现有的代码库解耦 我在论坛上看到了一些建议: logging.setLoggerClass(CustomLogger)

我有一个现有的python项目。执行时,它使用常规的
logger.warning()
logger.error()
或类似的python日志代码语句记录消息

我的任务是在记录任何内容时将日志发送到实时可视仪表板。我已经通过以下方式了解了实时可视化部分:

  • 我正在努力解决的是,我应该如何覆盖现有的记录器行为,以便在以现有方式实际记录之前发送用于绘图的消息,从而使所需的更改最小化,并与现有的代码库解耦

  • 我在论坛上看到了一些建议:

    logging.setLoggerClass(CustomLogger)

  • 这是一个好的设计决策吗?在现有的代码库中,每个模块都使用以下构造来使用日志记录:

    import logging
    
    logger = logging.getLogger(__name__)
    
    logger.debug("it's just an example.")
    

    如果要将现有日志发送到新的目标,则无需重写任何内容,并向根日志记录器注册一个附加自定义项。