2010-05-14 68 views
3

我正在写一个Python脚本来从Flickr中检索数据。为了记录的目的,我有以下设置功能:神秘的logging.basicConfig问题(Python)

def init_log(logfile): 
    format = '%(asctime)s - %(levelname)s - %(message)s' 
    logging.basicConfig(filename=logfile,level=logging.DEBUG,format=format) 

我使用Python外壳测试这一点,它按预期工作,创建一个文件,如果一个不存在。但从我的程序中调用它是停止工作的地方。该函数肯定被调用,并且参数logfile正常工作 - logging.basicConfig只是不创建任何文件。我甚至没有收到任何错误或警告。

我对Python Flickr API的使用可能是罪魁祸首,但我对此表示怀疑。有任何想法吗?

回答

5

如果根记录器没有配置处理程序,则logging.basicConfig函数只会执行任何操作。如果在已经有一些处理程序连接到根的情况下调用,则它基本上是无操作的(如文档所述)。

Python Flickr API可能会执行一些日志记录,在这种情况下,您可能会发现basicConfig应该在您的代码中早些时候调用。

+0

谢谢!打开几十个stackoverflow问题后,你的答案是帮助我的答案。我不知道什么库或提交导致这个停止工作,我没有看到任何东西搞乱从最新的提交记录。但只是将我的记录器设置移动到我的脚本开始(而不是在主函数内)解决了我的问题。 – 2016-11-21 14:09:06