LoggingEventSource Klasse

Definition

LoggingEventSource stellt die Verbindung zwischen allen auf ILogger basierenden Protokollen und der Protokollierung von EventSource/EventListener dar.

public ref class LoggingEventSource sealed : System::Diagnostics::Tracing::EventSource
[System.Diagnostics.Tracing.EventSource(Name="Microsoft-Extensions-Logging")]
public sealed class LoggingEventSource : System.Diagnostics.Tracing.EventSource
[<System.Diagnostics.Tracing.EventSource(Name="Microsoft-Extensions-Logging")>]
type LoggingEventSource = class
    inherit EventSource
Public NotInheritable Class LoggingEventSource
Inherits EventSource
Vererbung
LoggingEventSource
Attribute

Beispiele

Das folgende Beispiel zeigt, wie Sie einen EventListener verwenden, um ILogging-Informationen abzurufen:

class MyEventListener : EventListener 
{
    protected override void OnEventSourceCreated(EventSource eventSource) 
    {
        if (eventSource.Name == "Microsoft-Extensions-Logging") 
        {
            // initialize a string, string dictionary of arguments to pass to the EventSource.
            // Turn on loggers matching App* to Information, everything else (*) is the default level (which is EventLevel.Error)
            var args = new Dictionary<string, string>() { { "FilterSpecs", "App*:Information;*" } };
            // Set the default level (verbosity) to Error, and only ask for the formatted messages in this case.
            EnableEvents(eventSource, EventLevel.Error, LoggingEventSource.Keywords.FormattedMessage, args);
        }
    }

    protected override void OnEventWritten(EventWrittenEventArgs eventData) 
    {
        // Look for the formatted message event, which has the following argument layout (as defined in the LoggingEventSource.
        // FormattedMessage(LogLevel Level, int FactoryID, string LoggerName, string EventId, string FormattedMessage);
        if (eventData.EventName == "FormattedMessage")
            Console.WriteLine("Logger {0}: {1}", eventData.Payload[2], eventData.Payload[4]);
    }
}

Hinweise

Sie aktivieren diese Protokollierung, indem Sie die EventSource mit dem Namen Microsoft-Extensions-Loggingaktivieren.

Wenn Sie die EventSource aktiviert haben, wird das von Ihnen festgelegte EventLevel auf offensichtliche Weise auf die Ebene übersetzt, die dem ILogger zugeordnet ist (also Debug = ausführlich, Informational = Informational ... Kritisch == Kritisch)

Dadurch kann direkt nach der Ereignisebene gefiltert werden.

Für eine feinere Steuerung können Sie ein EventSource-Argument namens FilterSpecsangeben.

Das FilterSpecs Argument ist eine durch Semikolon getrennte Liste von Spezifikationen. Dabei gilt für jede Spezifikation Folgendes:

SPEC =                          // empty spec, same as *
     | NAME                     // Just a name the level is the default level
     | NAME : LEVEL            // specifies level for a particular logger (can have a * suffix).

Wenn Name der Name eines ILoggers ist (Groß-/Kleinschreibung), kann Name ein * haben, das als Platzhalter als SUFFIX fungiert. Daher stimmt Net* mit allen Protokollierungen überein, die mit dem "Net" beginnen.

„LEVEL“ ist eine Zahl oder eine LogLevel-Zeichenfolge. 0=Trace, 1=Debug, 2=Information, 3=Warning, 4=Error, Critical=5 Dies gibt die Ebene für das zugeordnete Muster an. Wenn die Zahl nicht angegeben wird (erste Form der Spezifikation), wird die Standardebene für EventSource verwendet.

Wenn ein Name mit mehreren Mustern übereinstimmt, wird die erste Übereinstimmung verwendet.

Zusätzlich zum Argument level und FilterSpec können Sie auch EventSource-Schlüsselwörter festlegen. Informationen hierzu finden Sie in der Definition von Schlüsselwörtern weiter unten. Im Prinzip können Sie jedoch entscheiden, was Sie verwenden möchten:

  • Keywords.Message: Sie erhalten das Ereignis mit den Daten in analysierter Form.
  • Keywords.JsonMessage: Sie erhalten ein Ereignis mit den Daten in Analyseform, aber als JSON-Blob (nicht nach Argument aufgeschlüsselt ...)
  • Keywords.FormattedMessage : Sie erhalten ein Ereignis, bei dem die Daten als Zeichenfolge formatiert sind

Es wird erwartet, dass Sie nur eines dieser Schlüsselwörter gleichzeitig aktivieren, aber Sie können sie alle aktivieren und dieselben Daten auf drei verschiedene Arten protokolliert erhalten.

Eigenschaften

ConstructionException

Ruft alle Ausnahmen, die während der Konstruktion einer Ereignisquelle ausgelöst wurden.

(Geerbt von EventSource)
Guid

Der eindeutige Bezeichner für die Ereignisquelle.

(Geerbt von EventSource)
Name

Der Anzeigename der Klasse, die von der Ereignisquelle abgeleitet ist.

(Geerbt von EventSource)
Settings

Ruft die Einstellungen ab, die für diese Ereignisquelle verwendet wurden.

(Geerbt von EventSource)

Methoden

Dispose()

Gibt alle von der aktuellen Instanz der EventSource-Klasse verwendeten Ressourcen frei.

(Geerbt von EventSource)
Dispose(Boolean)

Gibt die von der EventSource-Klasse verwendeten nicht verwalteten Ressourcen frei und gibt (optional) auch die verwalteten Ressourcen frei.

(Geerbt von EventSource)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetTrait(String)

Ruft den dem angegebenen Schlüssel zugeordneten Merkmalwert ab.

(Geerbt von EventSource)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IsEnabled()

Bestimmt, ob die aktuelle Ereignisquelle aktiviert ist.

(Geerbt von EventSource)
IsEnabled(EventLevel, EventKeywords)

Bestimmt, ob die aktuelle Ereignisquelle, die die angegebene Ebene und das Schlüsselwort enthält, aktiviert ist.

(Geerbt von EventSource)
IsEnabled(EventLevel, EventKeywords, EventChannel)

Bestimmt, ob die aktuelle Ereignisquelle für Ereignisse mit der angegebenen Ebene, Schlüsselwort und Kanal aktiviert ist.

(Geerbt von EventSource)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
OnEventCommand(EventCommandEventArgs)

Wird aufgerufen, wenn die aktuelle Ereignisquelle vom Controller aktualisiert wird.

(Geerbt von EventSource)
ToString()

Ruft eine Zeichenfolgendarstellung der aktuellen Ereignisquellinstanz ab.

(Geerbt von EventSource)
Write(String)

Schreibt ein Ereignis ohne Felder, jedoch mit dem angegebenen Namen und den Standardoptionen.

(Geerbt von EventSource)
Write(String, EventSourceOptions)

Schreibt ein Ereignis ohne Felder, jedoch mit dem angegebenen Namen und den angegebenen Optionen.

(Geerbt von EventSource)
Write<T>(String, EventSourceOptions, Guid, Guid, T)

Schreibt ein Ereignis mit dem angegebenen Namen, verwandten Aktivitäten und den angegebenen Optionen und Ereignisdaten.

(Geerbt von EventSource)
Write<T>(String, EventSourceOptions, T)

Schreibt ein Ereignis mit dem angegebenen Namen und den angegebenen Daten und Optionen.

(Geerbt von EventSource)
Write<T>(String, EventSourceOptions, T)

Schreibt ein Ereignis mit dem angegebenen Namen und den angegebenen Optionen und Ereignisdaten.

(Geerbt von EventSource)
Write<T>(String, T)

Schreibt ein Ereignis mit dem angegebenen Namen und den angegebenen Daten.

(Geerbt von EventSource)
WriteEvent(Int32)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichner.

(Geerbt von EventSource)
WriteEvent(Int32, Byte[])

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und Bytearray-Arguments.

(Geerbt von EventSource)
WriteEvent(Int32, EventSource+EventSourcePrimitive[])

Schreibt ein Ereignis unter Verwendung des angegebenen Ereignisbezeichners und einer variablen Anzahl von Ereignisquellgrundtypen.

(Geerbt von EventSource)
WriteEvent(Int32, Int32)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und 32-Bit-Ganzzahl-Arguments.

(Geerbt von EventSource)
WriteEvent(Int32, Int32, Int32)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und 32-Bit-Ganzzahl-Argumente.

(Geerbt von EventSource)
WriteEvent(Int32, Int32, Int32, Int32)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und 32-Bit-Ganzzahl-Argumente.

(Geerbt von EventSource)
WriteEvent(Int32, Int32, String)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und den 32-Bit-Ganzzahl- und Zeichenfolgenargumenten.

(Geerbt von EventSource)
WriteEvent(Int32, Int64)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und 64-Bit-Ganzzahl-Arguments.

(Geerbt von EventSource)
WriteEvent(Int32, Int64, Byte[])

Schreibt die Ereignisdaten mithilfe des bereitgestellten Bezeichners und den 64-Bit-Ganzzahl- und Bytearray-Argumenten.

(Geerbt von EventSource)
WriteEvent(Int32, Int64, Int64)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und 64-Bit-Argumente.

(Geerbt von EventSource)
WriteEvent(Int32, Int64, Int64, Int64)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und 64-Bit-Argumente.

(Geerbt von EventSource)
WriteEvent(Int32, Int64, String)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und den 64-Bit-Ganzzahl- und Zeichenfolgenargumenten.

(Geerbt von EventSource)
WriteEvent(Int32, Object[])

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und Argumentarrays.

(Geerbt von EventSource)
WriteEvent(Int32, String)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und Zeichenfolgenargument.

(Geerbt von EventSource)
WriteEvent(Int32, String, Int32)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und Argumente.

(Geerbt von EventSource)
WriteEvent(Int32, String, Int32, Int32)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und Argumente.

(Geerbt von EventSource)
WriteEvent(Int32, String, Int64)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und Argumente.

(Geerbt von EventSource)
WriteEvent(Int32, String, String)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und Zeichenfolgenargumente.

(Geerbt von EventSource)
WriteEvent(Int32, String, String, String)

Schreibt ein Ereignis mithilfe des bereitgestellten Ereignisbezeichners und Zeichenfolgenargumente.

(Geerbt von EventSource)
WriteEventCore(Int32, Int32, EventSource+EventData*)

Erstellt eine neue WriteEvent-Überladung mithilfe des bereitgestellten Ereignisbezeichners und den Ereignisdaten.

(Geerbt von EventSource)
WriteEventWithRelatedActivityId(Int32, Guid, Object[])

Schreibt ein Ereignis, die angibt, dass die aktuelle Aktivität mit einer andere Aktivität in Beziehung steht.

(Geerbt von EventSource)
WriteEventWithRelatedActivityIdCore(Int32, Guid*, Int32, EventSource+EventData*)

Schreibt ein Ereignis, die angibt, dass die aktuelle Aktivität mit einer andere Aktivität in Beziehung steht.

(Geerbt von EventSource)

Ereignisse

EventCommandExecuted

Tritt auf, wenn ein Befehl von einem Ereignislistener stammt.

(Geerbt von EventSource)

Gilt für: