Python ロギングのチュートリアルでは、フォーマットの新しい方法はチュートリアルの範囲を超えていると述べていますが、それについてどこで学ぶべきかについては触れていません。
、など.format()
のログ呼び出しでスタイル メッセージの書式設定を使用できるようにする例やドキュメントへのリンクをいただければ幸いです。debug()
info()
Python ロギングのチュートリアルでは、フォーマットの新しい方法はチュートリアルの範囲を超えていると述べていますが、それについてどこで学ぶべきかについては触れていません。
、など.format()
のログ呼び出しでスタイル メッセージの書式設定を使用できるようにする例やドキュメントへのリンクをいただければ幸いです。debug()
info()
最近、私もそれを探していました。ここで SO で解決策を指摘されたと思いますが、手元にあるのは最終的な URL だけです。これが私がすることです:
# http://plumberjack.blogspot.de/2010/10/supporting-alternative-formatting.html
class BraceMessage(object):
def __init__(self, fmt, *args, **kwargs):
self.fmt = fmt
self.args = args
self.kwargs = kwargs
def __str__(self):
return self.fmt.format(*self.args, **self.kwargs)
_F = BraceMessage
次のように使用できます。
logger.debug(_F("foo {0} {quux}", bar, quux=baz))
フォーマットはメッセージが評価される瞬間にのみ行われるため、ログ レベルが無効になっていても多くのパフォーマンスが低下することはありません。上記のスニペットの作成者は、これ (およびその他のユーティリティ) をパッケージとして利用できるようにしました: logutils
.