2016-07-29 9 views
0

現在のプロジェクトをPython 2.7から3.5に変換しようとしています。最初のタスクの1つは、ロギングの構成です。柔軟性のために構成ファイルを使用し、日付はファイル名の一部です。 以下は、次のエラーが発生する3.5でPython 3.4ロギング設定

[handler_fileHandler] 
class=FileHandler 
level=DEBUG 
formatter=simpleFormatter 
# Only one log per day will be created. All messages will be appended to it. 
args=("D:\\Logs\\PyLogs\\" + time.strftime("%Y%m%d%H%M%S")+'.log', 'a') 

2.7では正常に動作ファイルハンドラを設定するためのコードは次のとおりです。

configparser.InterpolationSyntaxError: '%' must be followed by '%' or '(', found: '%Y%m%d%H%M%S")+\'.log\', \'a\')'

はこれで誰も経験していますか?設定ファイル内で日付をフォーマットするより良い方法はありますか?この記事として

+0

の置換を必要とするかもしれないと思います。しかし、['TimedRotatingFileHandler'](https://docs.python.org/3/library/logging.handlers.html#timedrotatingfilehandler)を使用してみませんか? 'class = TimedRotatingFileHandler'を' when = 'D' 'に置き換えます。 –

+0

私はTimeRotatingFileHandlerを使用しませんでした。なぜなら、私が望んだことをしなかったからですが、提案に感謝します。 –

答えて

1

同様の件名: Configparser and string with %

は、私はあなたが私は、これはすべて2.7で働いていた時驚い%

+0

私はそれを前に見ましたが、何の助けもしていませんでした。 –

+0

'%'を倍増しても問題は解決しませんでしたか? –

+0

実際それを修正しました。 問題をconfigparserからtime.strftimeに単に変更すると仮定したので、試していませんでした。 –