什么时候应该在Python项目中调用logging.basicConfig?

时间:2013-02-01 16:09:08

标签: python logging

我正在查看python logging模块来替换自定义代码,但我无法决定应该在哪里调用basicConfig方法。

如果我开发了一个名为mymodule的模块,其中包含子模块,那么在basicConfig中仅调用mymodule一次似乎是个好主意。

但是如果我(或其他人)想在自己的模块或程序中使用mymodule并使用logging模块,他们就无法自己调用basicConfig并且无法使用这些选项授予basicConfig中的mymodule

我知道有一些黑客可以解决这个问题。但是使用basicConfig的正确方法是什么,应该在哪里调用?

1 个答案:

答案 0 :(得分:3)

在程序启动代码中调用它;从__name__ == '__main__'测试触发,最好是:

if __name__ == '__main__':
    import sys

    main(sys.argv)

并将您需要做的所有事情放在主要功能中,而不是模块库中的一部分,包括记录配置。