IDiagnosticsLogger<TLoggerCategory> Arabirim

Tanım

ILogger Tüm EF Core günlüğü tarafından ve DiagnosticSource değerlerini birleştirir, böylece olaylar hem ASP.NET DiagnosticSource hem de ILogger diğer her şey için gönderilebilir.

public interface IDiagnosticsLogger<TLoggerCategory> where TLoggerCategory : LoggerCategory<TLoggerCategory>, new()
public interface IDiagnosticsLogger<TLoggerCategory> : Microsoft.EntityFrameworkCore.Diagnostics.IDiagnosticsLogger where TLoggerCategory : LoggerCategory<TLoggerCategory>, new()
type IDiagnosticsLogger<'LoggerCategory (requires 'LoggerCategory :> LoggerCategory<'LoggerCategory> and 'LoggerCategory : (new : unit -> 'LoggerCategory))> = interface
type IDiagnosticsLogger<'LoggerCategory (requires 'LoggerCategory :> LoggerCategory<'LoggerCategory> and 'LoggerCategory : (new : unit -> 'LoggerCategory))> = interface
    interface IDiagnosticsLogger
Public Interface IDiagnosticsLogger(Of TLoggerCategory)
Public Interface IDiagnosticsLogger(Of TLoggerCategory)
Implements IDiagnosticsLogger

Tür Parametreleri

TLoggerCategory
Türetilmiş
Uygulamalar

Açıklamalar

Ayrıca, uyarıların günlüğe kaydedilebileceği veya oluşturulabileceği ve hassas verilerin günlüğe kaydedilip kaydedilmeyeceği konusunda karar verilebilen iletilere de müdahale eder.

Hizmet ömrü şeklindedir Scoped. Bu, her DbContext örneğin bu hizmetin kendi örneğini kullanacağı anlamına gelir. Uygulama, herhangi bir yaşam süresiyle kaydedilen diğer hizmetlere bağlı olabilir. Uygulamanın iş parçacığı güvenli olması gerekmez.

Daha fazla bilgi ve örnek için bkz. Veritabanı sağlayıcılarının ve uzantıların uygulanması .

Özellikler

DbContextLogger

IDbContextLogger.

(Devralındığı yer: IDiagnosticsLogger)
Definitions

Günlük tanımları için önbelleğe alma.

(Devralındığı yer: IDiagnosticsLogger)
DiagnosticSource

DiagnosticSource.

Interceptors

Varsa, kayıtlı kesicileri tutar.

Logger

Temel alınan ILogger.

Options

Entity Framework günlük seçenekleri.

Yöntemler

DispatchEventData(EventDefinitionBase, EventData, Boolean, Boolean)

Verilen EventData öğesini, etkinse öğesine DiagnosticSourceve etkinse bir IDbContextLoggeröğesine sevk eder.

(Devralındığı yer: IDiagnosticsLogger)
GetLogBehavior(EventId, LogLevel)

Verilenin logLevel etkinleştirilip etkinleştirilmediğini veya belirli bir olay olup olmadığını ve etkinse olayın günlüğe kaydedilmesi veya oluşturulup oluşturulmayacağını denetler.

NeedsEventData(EventDefinitionBase, Boolean, Boolean)

Belirli bir EventData olay için etkin veya etkin olup olmadığına bağlı olarak bir örneğin gerekli olup olmadığını DiagnosticSourceIDbContextLogger belirler.

(Devralındığı yer: IDiagnosticsLogger)
NeedsEventData<TInterceptor>(EventDefinitionBase, TInterceptor, Boolean, Boolean)

Verilen olay için bir EventData , IDbContextLoggerIInterceptor veya etkin olup olmadığına bağlı olarak bir örneğin gerekli olup olmadığını DiagnosticSourcebelirler.

(Devralındığı yer: IDiagnosticsLogger)
ShouldLog(EventDefinitionBase)

İletinin öğesine ILoggergönderilip gönderilmeydiğini denetler.

(Devralındığı yer: IDiagnosticsLogger)
ShouldLogSensitiveData()

Temel alınan günlükçüye hassas bilgilerin yazılıp yazılmayacağını belirten bir değer alır. Bu, hassas verilerin ilk kez günlüğe kaydedilmesinde günlüğe uyarı yazmanın da yan etkisine sahiptir.

Uzantı Metotları

SensitiveDataLoggingEnabledWarning<TLoggerCategory>(IDiagnosticsLogger<TLoggerCategory>)

Olay için SensitiveDataLoggingEnabledWarning günlükler.

Şunlara uygulanır