1

いくつかのレイヤー (コントローラー、サービス、dao ...) がある残りのアプリケーションにログを追加しています。

1 つのリクエストに対して別のレイヤーで同じログ ID を使用できるように、リクエストごとに一意のログ ID を識別または定義する方法を教えてください。(コントローラーで作成して各レイヤーに渡すことなく)

参考:log4jを使用しています

ありがとう!

4

1 に答える 1

1

使用しているロギング フレームワークを知らなければ、具体的なアドバイスを提供することは困難です。

これには通常、Log4J の NDC や MDC などを使用します。リクエストが受信され、診断コンテキストで関連情報がタグ付けされ、ログ フォーマッタがアプリケーションにとって意味のある方法でその診断コンテキストを吐き出します。

また、ログ ファイルのコンシューマが後で使用できるように、DC が一貫してログに記録されるようにするために、通常はカスタム メッセージ フォーマッタを使用しました。DB/メッセージキューなどに行く場合。多くの場合、コンテキストはそのままダンプされ、それに応じて処理されるため、それほど重要ではないかもしれません。

于 2013-01-16T18:44:24.983 に答える