Language

IDiagnosticsLogger インターフェイス

定義

すべての EF Core ログで使用するILoggerとDiagnosticSourceを組み合わせて、イベントを ASP.NET のILoggerと他のすべてのDiagnosticSourceの両方に送信できるようにします。

public interface IDiagnosticsLogger
type IDiagnosticsLogger = interface
Public Interface IDiagnosticsLogger
派生

注釈

サービスの有効期間は Singleton。 つまり、1 つのインスタンスが多数の DbContext インスタンスで使用されます。 実装はスレッド セーフである必要があります。 このサービスは、 Scopedとして登録されたサービスに依存できません。

詳細と例については、 データベース プロバイダーと拡張機能の実装 を参照してください。

プロパティ

Name 説明
DbContextLogger

IDbContextLogger。

Definitions

ログ定義のキャッシュ。

DiagnosticSource

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()

機密情報を基になるロガーに書き込む必要があるかどうかを示す値を取得します。 これは、機密データが初めてログに記録されるときに、ログに警告を書き込むという副作用もあります。

適用対象