2017-01-06 18 views
0

最近、かなり大きなJavaプロジェクトを開発しているチームに参加しました。これは古典的なSpring MVCアプリケーション(jspビュー、サービスクラス、ファサードなどを返すコントローラ)です。問題は、ロギングが非常に貧弱であることです。つまり、アプリケーションがSOAP要求と休止要求をインターセプトして印刷します。バグ分析中に問題が発生します。 INT環境テスト担当者が多くのテストを実行すると、どのSOAP/REST要求が実行されたアクションに属するのかを知ることは難しいです。私の質問は:どのようにそのようなアプリのログインを即座にするのですか?良い習慣は何ですか?私は今何をすることができますか?たとえば、すべての* Service、* Controller、* Facadeクラスのaspectjポイントカットを作成する必要がありますか?結果として、コントローラ入力からコントローラ出力への実行パスを簡単に追跡できる、読み取り可能な形式でログを記録したいと考えています。Java Spring MVCロギング

+0

DBにすべてのサービスリクエストとレスポンスを保存してみましょう。残りのログはそのまま残してください。 –

+0

コントローラのすべてのアクションがコントローラから実行されるすべての関数に伝播する一意のIDを持つときにログを取得することは可能ですか?関数foo()は関数a()を呼び出し、関数a()はb()を呼び出し、ログではlogg:foo()id = 1、foo()を呼び出します。 id = 2、logg:a()、id = 1、log:b()id = 1、... – user109447

答えて

0

すべての機能の入力と終了時にロガーを追加します。この目的のために()log.debugを使用することを推奨

ClassName - methodName - for some unique Id(userId/sessionId) starts/end. 

ロギングなどの重要な情報が含まれている必要があります。

関連する問題