ASP.NET Core 2アプリケーションでは、各リクエストに一意の識別子(例:Guid)が必要なので、各ログにそのidを含め、各リクエストのログのシーケンスを理解できます。
これを自分で書くのは難しいことではありませんが、使用できる組み込み機能や、これを実現するASP.NET Core 2の方法があるのでしょうか。
System.Diagnostics.Activity
クラスを使用できます( source )。から アクティビティユーザーガイド
Activity.Id
は、 HTTP Correlation Protocol に関して階層的なRequest-Idとして機能します
これは、たとえばアプリ監視のために Microsoft/ApplicationInsights-aspnetcore によって使用されます。
ASP.NET CoreにはHttpContext.TraceIdentifier
これは、現在のリクエストを一意に識別します。
Kestrelによって各着信要求に対して生成されるため、呼び出しを別のサービスから1つのサービスに関連付けるのには適していませんが、単一の要求のログを相互に関連付ける、またはユーザーに表示される可能性のあるエラーメッセージを関連付けるには適しています対応するログ。
correlation id を探しているように聞こえます。多分 相関IDミドルウェア が役立つでしょうか?