Klassendiagnostik::Protokoll::EventLogger

Klasse mit statischen Methoden zum Steuern der rückrufbasierten SDK-Protokollierung. Wenn Sie die Protokollierung beim Ausführen Ihres Speech SDK-Szenarios aktivieren, finden Sie detaillierte Informationen aus den kerneigenen Komponenten des SDK. Wenn Sie ein Problem an Microsoft melden, werden Sie möglicherweise aufgefordert, Protokolle bereitzustellen, um Microsoft bei der Diagnose des Problems zu unterstützen. Ihre Anwendung sollte keine Abhängigkeit von bestimmten Protokollzeichenfolgen haben, da sie von einer SDK-Version zu einer anderen ohne Vorheriges wechseln können. Verwenden Sie EventLogger, wenn Sie Zugriff auf neue Protokollzeichenfolgen erhalten möchten, sobald sie verfügbar sind, und Sie diese weiter verarbeiten müssen. Integrieren Sie beispielsweise Speech SDK-Protokolle in Ihr vorhandenes Protokollierungssammlungssystem. In Version 1.20.0 hinzugefügt.

Die Ereignisprotokollierung ist ein prozessweites Konstrukt. Dies bedeutet, dass Sie nur eine Rückruffunktion registrieren können, wenn (z. B.) mehrere Spracherkennungsobjekte parallel ausgeführt werden, um überlappende Protokolle von allen Erkennungen zu empfangen. Sie können keinen separaten Rückruf für jede Erkennung registrieren.

Elemente

Rückruffunktion festlegen

Syntax: public inline static void SetCallback ( CallbackFunction_Type callback );

Registrieren Sie eine Rückruffunktion, die für jede neue Protokollnachricht aufgerufen wird.

Die Parameter

  • callback Rückruffunktion, die aufgerufen werden soll. Legen Sie einen nullptr-Wert fest, um den Ereignisprotokollierer zu beenden.

Sie können nur eine Rückruffunktion registrieren. Dieser Aufruf erfolgt in einem Arbeitsthread des SDK, sodass die Protokollzeichenfolge irgendwo zur weiteren Verarbeitung durch einen anderen Thread kopiert werden sollte, und die Funktion sollte sofort zurückgegeben werden. In dieser Rückruffunktion sollten keine umfangreichen Verarbeitungs- oder Netzwerkaufrufe durchgeführt werden.

Filter festlegen

Syntax: public inline static void SetFilters ( std::initializer_list< std::string > filters );

Legt Filter für Rückrufe fest oder löscht sie. Nachdem Filter festgelegt wurden, wird der Rückruf nur aufgerufen, wenn die Protokollzeichenfolge mindestens eine der durch die Filter angegebenen Zeichenfolgen enthält. Bei der Übereinstimmung wird die Groß-/Kleinschreibung beachtet.

Die Parameter

  • filters Optional. Zu verwendende Filter oder eine leere Liste zum Löschen zuvor festgelegter Filter

SetzEbenen

Syntax: public inline static void SetLevel ( Level level );

Legt die Ebene der Nachrichten fest, die vom Logger erfasst werden sollen.

Die Parameter

  • level Maximale Detailstufe, die vom Logger erfasst werden soll.

CallbackFunction_Type

Syntax: typedef CallbackFunction_Type;