11

小さなPythonプロジェクトでロギングを使用しようとしています。チュートリアルに従って、以下のコードをコードに追加しましたが、メッセージが想定どおりにファイルに記録されませんでした。

import logging
logging.basicConfig(
    filename = "a.log",
    filemode="w",
    level = logging.DEBUG)
logging.error("Log initialization failed.")

pwdにログファイルが作成されていません。(次のコードを使用してpwdを印刷しました。正しいディレクトリを確認したと思います。)そこで、ファイルを手動で作成してコードを実行しましたが、メッセージはまだログに記録されませんでした。

print "argv: %r"%(sys.argv,)
print "dirname(argv[0]): %s"%os.path.abspath(os.path.expanduser(os.path.dirname(sys.argv[0])))
print "pwd: %s"%os.path.abspath(os.path.expanduser(os.path.curdir))

私がここで間違ったことを誰かが手がかりを持っていますか?前もって感謝します。

4

1 に答える 1

26

basicConfig()少なくとも2回電話しました。ファイル名なしで初めて。ハンドラーをクリアして、再試行してください。

logging.getLogger('').handlers = []

logging.basicConfig(
    filename = "a.log",
    filemode="w",
    level = logging.DEBUG)
于 2013-03-01T22:22:22.723 に答える