2010-12-01 7 views
3

ログ出力の冗長性を軽減する方法を知っている人はdev_appserver.pyですか?googleアプリケーションエンジンpythonログレベルノイズリダクション

これらのログの騒音レベルは私を狂っているだけです。私はlog4jでJavaのこの種の設定を行う方法を知っていますが、実際にはGoogleのアプリエンジンPythonでここで失われています。あなたが唯一のlogging.setLevel()で与えられたレベルまたは上記の文をログへのロギングライブラリを指示することができ

答えて

1

ソリューション1.

。このレベルのしきい値を、望ましくないメッセージが含まれているレベルより高く設定すると、dev_appserverからの不要なメッセージが除外されます。あなたのログメッセージが現れ、次のいずれかを実行する必要があるようにするに

  • はあなたのログメッセージが、少なくともあなたは(おそらくWARN)上記設定のフィルタリングアウトのしきい値でログインしていることを確認します。
  • 自分でcustom loggerを設定して使用してください。次に、devサーバーで使用されるルート・ロガーとは独立して、ロガーのロギング・レベルを制御できます。

ソリューション2.

あなたはDEBUGとINFOレベルを避けるために持っているか、あなたがあなた自身のロガーを作成し使用する必要があるため、上記の回避策は少し面倒です。

別の解決策は、dev_appserver.py(および関連するモジュール)からの問題のログメッセージをコメントアウトすることです。これは手で行うのはかなり苦しいですが、特定のフォルダ(およびそのサブフォルダ)内のすべてのファイルのロギング呼び出しを置き換えるツールを書いています - Python logging and performance: how to have your cake and eat it tooをチェックしてください。

+0

ありがとう、私は解決策1が私のために働くと思います。私は本当にlog4jのようなものを期待していました。ルートロガーを "デバッグ"し、dev_appserverを含むパッケージ/フォルダを "エラー"に設定することができます。 – jpswain

+2

Btw、私のコードでは、ライブラリlogging.setLevel(logging.ERROR)などを教えてください。 onApplicationStartなどのコールバックがありますか?アプリエンジンのすべてに適用されるので、選択的にオーバーライドできますか?ありがとう – jpswain

関連する問題