Spring ベースの Java Web アプリケーションを作成しました。
リクエストごとに、リクエストを処理するために「コントローラ クラス」のインスタンスが作成されます。
ビジネスロジックでは、プログラムが正確に何をしたかを追跡できるように、各リクエストに自動的に割り当てられたUNIQUE IDでログを記録したいと考えています。
ログは次のようになります (同時に 2 つの要求)。
[INFO] request #XXX: begin.
[INFO] request #XXX: did step 1
[INFO] request #YYY: begin.
[INFO] request #XXX: did step 2
[INFO] request #YYY: did step 1
[INFO] request #XXX: end.
[INFO] request #YYY: end.
ログから、次のことがわかります: req #XXX: begin-step1-step2-end req #YYY: begin-step1-end
ロギングがコードのどこでも簡単に呼び出せることを願っているので、すべての Java 関数に「requestId」のパラメーターを追加したくありません。
ロギング ツールを静的な方法で呼び出すことができれば完璧です。
LOG.doLog("did step 1");
どうすればこれを行うことができますか?ありがとうございました :)