語言

IDiagnosticsLogger 介面

定義

結合 ILogger 並 DiagnosticSource 供所有 EF Core 記錄使用,以便將事件同時傳送給 ILogger ASP.NET,以及 DiagnosticSource 所有其他專案。

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

備註

服務存留期為 Singleton 。 這表示許多 DbContext 實例都會使用單一實例。 實作必須是安全線程。 此服務不能相依于註冊為 Scoped 的服務。

如需詳細資訊和範例,請參閱 資料庫提供者和延伸模組的實作 。

屬性

名稱 Description
DbContextLogger

IDbContextLogger。

Definitions

記錄定義的快取。

DiagnosticSource

DiagnosticSource。

Interceptors

保留已註冊的攔截器,如果有的話。

Logger

基礎 ILogger。

Options

Entity Framework 記錄選項。

方法

名稱 Description
DispatchEventData(EventDefinitionBase, EventData, Boolean, Boolean)

如果已啟用,則會將指定的 EventData 分派給 DiagnosticSource ,如果已啟用,則會 IDbContextLogger 分派 。

NeedsEventData(EventDefinitionBase, Boolean, Boolean)

根據指定的事件是否有 EventDataDiagnosticSource 或 IDbContextLogger 啟用 ,判斷是否需要實例。

NeedsEventData<TInterceptor>(EventDefinitionBase, TInterceptor, Boolean, Boolean)

根據指定的事件是否有 EventDataDiagnosticSource 、、 IDbContextLogger 或 IInterceptor 啟用實例,判斷是否需要實例。

ShouldLog(EventDefinitionBase)

檢查是否應該將訊息傳送至 ILogger 。

ShouldLogSensitiveData()

取得值,指出是否應該將敏感性資訊寫入基礎記錄器。 這也會對第一次記錄敏感性資料時將警告寫入記錄檔的副作用。

適用於