2010-11-29 8 views
4

をロギング:それは正常に動作しますが、すべての要求は今、このような情報メッセージをログに記録します無効にAppstatsのここに記載されているよう私はAppstatsのを使用してい

http://code.google.com/appengine/docs/python/tools/appstats.html

保存されました。キー:appstats:039300、部分:65バイト、フル:12926バイト、オーバーヘッド:0.000 + 0.004;リンク:http://example.com/stats/details?time=1290733239309

Appstatsの実行中にログメッセージを無効にする方法はありますか?

私はext/appstats/recording.pyのコピーを取ってlogging.info()の呼び出しをコメントアウトできますか?それとも良い方法がありますか?

ありがとうございました。

答えて

6

sample appstats config fileをご覧ください。あなたはあなたの要求の一部に対してのみ実行するようにappstatsを設定することができます。ロギングメッセージの数を減らす必要がありますが、それでも情報は保持されます。

appstatsにパッチを適用する場合は、303の行を/google/appengine/ext/appstats/recording.pyにしてください。 webappを使用している場合は、簡単にmonkey-patchのappstatsをsaveメソッドをその_saveメソッドに置き換えて簡単に行う必要があります。

また、feature requestを送信し、グループへのリンクを投稿してください。私はロギングコールを無効にできることは有効な要求だと思います。彼らはログを少し混乱させる傾向があります。

+1

+1モンキーパッチ – systempuntoout

+1

ありがとう、ロバート - 猿パッチアプローチはうまくいきます。 –

6

他の人が興味を持っている場合は、ロバートの猿パッチの提案を使ってロギングを削除した方法を紹介します。

Appstatsのを挿入するための標準的なアプローチは、このようなものです:

def webapp_add_wsgi_middleware(app):  
    from google.appengine.ext.appstats import recording  
    app = recording.appstats_wsgi_middleware(app)  
    return app 

これは私が代わりにやったことです:

def webapp_add_wsgi_middleware(app):  

    from google.appengine.ext.appstats import recording 

    def save(self): 
     try:   
      self._save()  
     except Exception: 
      pass 

    recording.Recorder.save = save 

    app = recording.appstats_wsgi_middleware(app) 

    return app 

これは、元のセーブ()関数の「すべての例外を無視する」行動を保持し、その周りのすべてのロギングを削除します。

+0

これは、(有害で有益な)ログメッセージを1つ取り除くためには多くの問題があるようです。 –

2

Appstatsの著者はこちらです。なぜロギングを無効にしたいのですか?私はあなたが理由を理解していないので、あなたがそれを無効にしたいと驚いています。合理的な使用例であれば、設定フラグを追加して無効にすることができます。

+0

こんにちはGuido、統計をチェックするときに、私はちょうど私が作成したリクエストのパフォーマンスをチェックしているので、/ _ah/stats/URLに行き、最後のいくつかのリクエストの1つをクリックします。したがって、ログ内の統計リンクを使用しないので、すべての要求に対してインフォメーションログを追加するだけで、ログが煩雑になります。場合によってはすべての情報レベルのログを確認したいのですが、すべての要求が統計行に記録されていれば、ノイズの中に他のログを見ることはできません。ありがとう。 –

+0

私は基本的には、いつでも私の開発マシン上でappstatsを稼働させたいと思っています。appstatsロギングの99%は、私の個人的なデバッグ/ロギングから気を散らすランダムノイズです。 –

+0

本当にこれらのログエントリが煩わしいと思うならば、_save()を呼び出すためにRecorder.save()をオーバーライドするかmonkey-patchすることができます。このログをオプションにするために、トラッカーに機能リクエストを提出することもできますが、優先順位は低くなります。 –

関連する問題