如何在python中配置不同模块写入同一目标的日志

2024-04-23 09:12:09 发布

您现在位置:Python中文网/ 问答频道 /正文

所以。。。我已经阅读了this和所有日志教程(也许我错过了一些东西)

假设我有两个包和两个类。你知道吗

套餐Foo Foo类

包装栏 分类栏

Foo类使用的是class Bar。你知道吗

类栏正在使用外部库。你知道吗

我不希望的是能够以这样的方式配置日志记录:我可以在一个文件中看到Bar和Foo的日志,但不能看到来自外部库的日志。如果没有代码复制,我是不会这么做的。你知道吗

我已经知道如何将日志写入文件,以及如何从文件(json,yaml)配置日志。但我不想在每个文件中都编写相同的配置代码行。你知道吗

也许有什么“正确”的方法,我错过了?你知道吗

编辑1

哦,我忘了说,这个软件包是用设置.py酒吧也被其他一些项目使用。你知道吗


Tags: 文件方法代码jsonyamlfoo方式记录
1条回答
网友
1楼 · 发布于 2024-04-23 09:12:09

在每个文件中配置日志记录不需要写行,只需在从if __name__ == '__main__'子句调用的一个地方。您可以为FooBar配置记录器以使用相同的FileHandler,并且可以为外部库记录器使用适当的级别(或Filter),以防止输出来自外部库的任何日志。AFAIK您可以使用文档中的方法在不复制代码的情况下完成这项工作。你知道吗

如果你根据我所说的去尝试一些东西,遇到一些具体的问题,你可以更新你的问题,使之更具体,希望得到一个更具体的答案。你知道吗

更新:有关__name__ == '__main__'的更多信息,请参阅this question and its answers。你知道吗

相关问题 更多 >