コンソールとファイルの両方に例外を記録するサーバーを作成しようとしています。私は料理本からいくつかのコードを引っ張った。ここにあります:pythonロギングモジュールがファイルに何も書き込まない
logger = logging.getLogger('server_logger')
logger.setLevel(logging.DEBUG)
# create file handler which logs even debug messages
fh = logging.FileHandler('server.log')
fh.setLevel(logging.DEBUG)
# create console handler with a higher log level
ch = logging.StreamHandler()
ch.setLevel(logging.ERROR)
# create formatter and add it to the handlers
formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s', datefmt='%Y-%m-%d %H:%M:%S')
ch.setFormatter(formatter)
fh.setFormatter(formatter)
# add the handlers to logger
logger.addHandler(ch)
logger.addHandler(fh)
このコードはコンソールに完全に正常に記録されますが、ファイルには何も記録されません。ファイルは作成されますが、何も書き込まれることはありません。ハンドラを閉じようとしましたが、何もしません。どちらもそれを洗い流すことはありません。私はインターネットを検索しましたが、明らかに私はこの問題の唯一の人です。誰が問題が何であるか考えているのですか?あなたの答えをありがとう。
ログにはどのようなコマンドを使用していますか?あなたは単に 'logging.debug()'を呼び出していますか? – Leopd
私はlogging.error()を使用しています – thePurpleMonkey
私のためのreproはありません。あなたのコードは正常に動作します – wim