語言

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)

根據給定事件是否有 a DiagnosticSource 或 IDbContextLogger enabled 來判斷是否需要實EventData例。

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

根據給定事件是否存在 DiagnosticSource、 、 IDbContextLogger或 IInterceptor 啟用,判斷是否需要實EventData例。

ShouldLog(EventDefinitionBase)

檢查訊息是否應該傳送到 ILogger.

ShouldLogSensitiveData()

會獲得一個值,指示是否應該將敏感資訊寫入底層記錄器。 這也帶來副作用,就是在首次記錄敏感資料時,會寫入警告。

適用於