IDiagnosticsLogger インターフェイス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
すべての EF Core ログで使用するILoggerとDiagnosticSourceを組み合わせて、イベントを ASP.NET のILoggerと他のすべてのDiagnosticSourceの両方に送信できるようにします。
public interface IDiagnosticsLogger
type IDiagnosticsLogger = interface
Public Interface IDiagnosticsLogger
- 派生
注釈
サービスの有効期間は Singleton。 つまり、1 つのインスタンスが多数の DbContext インスタンスで使用されます。 実装はスレッド セーフである必要があります。 このサービスは、 Scopedとして登録されたサービスに依存できません。
詳細と例については、 データベース プロバイダーと拡張機能の実装 を参照してください。
プロパティ
| Name | 説明 |
|---|---|
| DbContextLogger | |
| Definitions |
ログ定義のキャッシュ。 |
| DiagnosticSource | |
| Interceptors |
登録済みのインターセプター (存在する場合) を保持します。 |
| Logger |
基になる ILogger。 |
| Options |
Entity Framework のログ オプション。 |
メソッド
| Name | 説明 |
|---|---|
| DispatchEventData(EventDefinitionBase, EventData, Boolean, Boolean) |
指定した EventData を DiagnosticSource (有効な場合) にディスパッチし、有効な場合は IDbContextLoggerにディスパッチします。 |
| NeedsEventData(EventDefinitionBase, Boolean, Boolean) |
特定のイベントに対してDiagnosticSourceまたはIDbContextLoggerが有効になっているかどうかに基づいて、EventData インスタンスが必要かどうかを判断します。 |
| NeedsEventData<TInterceptor>(EventDefinitionBase, TInterceptor, Boolean, Boolean) |
特定のイベントに対してDiagnosticSource、IDbContextLogger、またはIInterceptorが有効になっているかどうかに基づいて、EventData インスタンスが必要かどうかを判断します。 |
| ShouldLog(EventDefinitionBase) |
メッセージを ILoggerに送信する必要があるかどうかを確認します。 |
| ShouldLogSensitiveData() |
機密情報を基になるロガーに書き込む必要があるかどうかを示す値を取得します。 これは、機密データが初めてログに記録されるときに、ログに警告を書き込むという副作用もあります。 |