Freigeben über


Protokolle für die Azure Communication Services-Anrufautomatisierung

Azure Communication Services bietet Protokollierungsfunktionen, mit denen Sie Ihre Communication Services-Lösung überwachen und debuggen können. Diese Funktionen können über das Azure-Portal konfiguriert werden.

Voraussetzungen

Azure Communication Services bietet Überwachungs- und Analysefunktionen über Azure Monitor-Protokolle und Azure Monitor-Metriken. Jede Azure-Ressource erfordert eine eigene Diagnoseeinstellung, die folgende Kriterien definiert:

  • Kategorien der Protokoll- und Metrikdaten, die an die in der Einstellung definierten Ziele gesendet werden. Die verfügbaren Kategorien variieren je nach Ressourcentyp.

  • Ein oder mehrere Ziele zum Senden der Protokolle. Zu den aktuellen Zielen gehören der Log Analytics-Arbeitsbereich, Azure Event Hubs und Azure Storage.

    Mit einer einzelnen Diagnoseeinstellung kann maximal einer der jeweiligen Zieltypen definiert werden. Wenn Sie Daten an mehrere Zieltypen senden möchten (z. B. zwei Log Analytics-Arbeitsbereiche), erstellen Sie mehrere Einstellungen. Jede Ressource kann bis zu fünf Diagnoseeinstellungen haben.

Wichtig

Sie müssen eine Diagnoseeinstellung in Azure Monitor aktivieren, um die Protokolldaten Ihrer Umfragen an einen Log Analytics-Arbeitsbereich, einen Event Hub oder ein Azure-Speicherkonto zu senden, um Ihre Umfragedaten zu empfangen und zu analysieren. Wenn Sie Anrufautomatisierungsdaten nicht an eine dieser Optionen senden, werden Ihre Umfragedaten nicht gespeichert und gehen verloren.

Die folgenden Anweisungen dienen zur Konfiguration Ihrer Azure Monitor-Ressource, damit Sie Protokolle und Metriken für Ihre Communication Services-Instanz erstellen können. Eine ausführliche Dokumentation zur Verwendung von Diagnoseeinstellungen für alle Azure-Ressourcen finden Sie unter Aktivieren der Protokollierung in den Diagnoseeinstellungen.

Wählen Sie unter dem Namen der Diagnoseeinstellung Betriebsprotokolle der Anrufautomatisierung und Zusammenfassungsprotokolle der Anfrufautomatisierungsereignisse aus, um die Protokolle für die Anrufautomatisierung zu aktivieren.

Screenshot: Diagnoseeinstellungen für Anrufautomatisierung

Ressourcenprotokollkategorien

Communication Services bietet die folgenden Protokolltypen, die Sie aktivieren können:

  • Nutzungsprotokolle: Stellt Nutzungsdaten bereit, die den einzelnen abgerechneten Dienstangeboten zugeordnet sind.
  • Betriebsprotokolle der Anrufautomatisierung: Stellt betriebstechnische Informationen zu Anrufautomatisierungs-API-Anforderungen bereit. Sie können diese Protokolle verwenden, um Fehlerpunkte zu identifizieren und alle Anforderungen in einem Anruf abzufragen (mithilfe der Korrelations-ID oder Serveranruf-ID).
  • Medienzusammenfassungsprotokolle für die Anrufautomatisierung: Stellt Informationen zum Ergebnis von Medienvorgängen bereit. Diese Protokolle werden asynchron angezeigt, wenn Sie Medienanforderungen mithilfe von Anrufautomatisierungs-APIs senden. Mithilfe dieser Protokolle können Sie Fehlerpunkte und mögliche Muster für die Interaktion von Benutzern mit Ihrer Anwendung identifizieren.

Protokollschema für die Nutzung

Eigenschaft Beschreibung
Timestamp Der Zeitstempel (UTC) für den Zeitpunkt, zu dem das Protokoll generiert wurde.
OperationName Der mit der Protokollaufzeichnung verbundene Vorgang
OperationVersion Der api-version-Wert, der dem Vorgang zugeordnet wird, wenn der OperationName-Vorgang über eine API durchgeführt wurde. Wenn keine API für diesen Vorgang vorhanden ist, entspricht die Version der Version des Vorgangs (für den Fall, dass sich die dem Vorgang zugeordneten Eigenschaften in Zukunft ändern).
Category Die Protokollkategorie des Ereignisses. Die Kategorie ist die Granularität, mit der Sie Protokolle für eine Ressource aktivieren oder deaktivieren können. Die Eigenschaften, die im properties-Blob eines Ereignisses angezeigt werden, sind innerhalb einer Protokollkategorie und eines Ressourcentyps identisch.
CorrelationID Die ID für korrelierte Ereignisse. Sie kann verwendet werden, um korrelierte Ereignisse zwischen verschiedenen Tabellen zu identifizieren.
Properties Weitere Daten, die auf verschiedene Communication Services-Modi anwendbar sind.
RecordID Die eindeutige ID für einen Nutzungsdatensatz.
UsageType Die Art der Nutzung (z. B. Chat, PSTN oder NAT).
UnitType Der Typ der Einheit, auf dem die Nutzung für eine bestimmte Nutzungsart basiert (z. B. Minuten, Megabytes oder Nachrichten).
Quantity Die Anzahl der für diesen Datensatz verwendeten oder verbrauchten Einheiten.

Betriebsprotokolle der Anrufautomatisierung

Eigenschaft Beschreibung
TimeGenerated Der Zeitstempel (UTC) für den Zeitpunkt, zu dem das Protokoll generiert wurde.
OperationName Der mit der Protokollaufzeichnung verbundene Vorgang
CorrelationID Der Bezeichner zum Identifizieren eines Anrufs und zum Korrelieren von Ereignissen für einen eindeutigen Aufruf.
OperationVersion Die api-version-Version, die dem Vorgang zugeordnet wird, wenn der operationName-Vorgang über eine API durchgeführt wurde. Wenn keine API für diesen Vorgang vorhanden ist, entspricht die Version der Version des Vorgangs (für den Fall, dass sich die dem Vorgang zugeordneten Eigenschaften in Zukunft ändern).
Category Die Protokollkategorie des Ereignisses. Die Kategorie ist die Granularität, mit der Sie Protokolle für eine Ressource aktivieren oder deaktivieren können. Die Eigenschaften, die im properties-Blob eines Ereignisses angezeigt werden, sind innerhalb einer Protokollkategorie und eines Ressourcentyps identisch.
ResultType Der Status des Vorgangs.
ResultSignature Der Unterstatus des Vorgangs. Wenn dieser Vorgang einem REST-API-Aufruf entspricht, ist dieses Feld der HTTP-Statuscode des entsprechenden REST-Aufrufs.
DurationMs Die Dauer des Vorgangs in Millisekunden.
CallerIpAddress Die IP-Adresse des Anrufers, wenn der Vorgang einem API-Aufruf entspricht, der von einer Entität mit einer öffentlich verfügbaren IP-Adresse stammt.
Level Der Schweregrad des Ereignisses.
URI Der URI der Anforderung.
CallConnectionId Die ID, die die Anrufverbindung darstellt, falls verfügbar. Diese ID unterscheidet sich für jeden Teilnehmer und wird verwendet, um seine Verbindung mit dem Anruf zu identifizieren.
ServerCallId Eine eindeutige ID zur Identifizierung eines Anrufs
SDKVersion Die für die Anforderung verwendete SDK-Version
SDKType Der für die Anforderung verwendete SDK-Typ
ParticipantId Die ID, um den Anrufteilnehmer zu identifizieren, der die Anforderung gesendet hat
SubOperationName Der Name, der zum Identifizieren des Untertyps des Medienvorgangs verwendet wird (Wiedergabe oder Erkennung)
operationID Die ID, die zum Korrelieren asynchroner Ereignisse verwendet wird

Hier sehen Sie ein Beispiel für ein Betriebsprotokoll für die Anrufautomatisierung:

[
{
"TimeGenerated [UTC]": "5/25/2023, 5:43:25.746 PM",
"Level": "Informational",
"CorrelationId": "e2a97d52-0cbb-4adf-8c4b-e10f791fb764",
"OperationName": "Play",
"OperationVersion": "3/6/23",
"URI": "ccts-media-synthetics-prod.communication.azure.com",
"ResultType": "Succeeded",
"ResultSignature": "202",
"DurationMs": "82",
"CallerIpAddress": "40.88.50.228",
"CallConnectionId": "401f3500-fcb6-4b84-927e-81cd6372560b",
"ServerCallId": "aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzZWEyLTAxLmNvbnYuc2t5cGUuY29tL2NvbnYvZzRoWlVoS1ZEVUtma19HenRDZ1JTQT9pPTEyJmU9NjM4MjA1NDc4MDg5MzEzMjIz",
"SdkVersion": "",
"SdkType": "unknown",
"SubOperationName": "File",
"OperationId": "5fab0875-3211-4879-8051-c688d0854c4d",
}

Medienzusammenfassungsprotokolle der Anfrufautomatisierung

Eigenschaft Beschreibung
TimeGenerated Der Zeitstempel (UTC) des Ereignisses
level Der Schweregrad des Ereignisses. Muss Informational, Warning, Error oder Critical sein. 
resourceId Die ID der Ressource, die das Ereignis ausgegeben hat.
durationMs Die Dauer des Vorgangs in Millisekunden.
callerIpAddress
correlationId Die Skype-Ketten-ID 
operationName Der Name des Vorgangs, den dieses Ereignis darstellt.
operationVersion
resultType Der Status des Ereignisses. Typische Werte sind Completed, Canceled und Failed.
resultSignature Der Unterstatus des Vorgangs. Wenn dieser Vorgang einem REST-API-Aufruf entspricht, ist dieses Feld der HTTP-Statuscode des entsprechenden REST-Aufrufs.
operationId Die Vorgangs-ID, die zum Korrelieren asynchroner Ereignisse verwendet wird
recognizePromptSubOperationName Ein Untertyp des Vorgangs. Mögliche Werte sind File, TextToSpeech und SSML.
playInLoop True, wenn eine Schleife für den Wiedergabevorgang angefordert wurde. Andernfalls False
playToParticipant True, wenn der Wiedergabevorgang ein Ziel hatte. False, wenn es sich um einen Vorgang mit Wiedergabe für alle handelte
interrupted True, wenn die Eingabeaufforderung unterbrochen wird. Andernfalls False
resultCode Der Ergebniscode des Vorgangs
resultSubcode Der Ergebnisuntercode des Vorgangs
resultMessage Die Ergebnismeldung des Vorgangs

Hier sehen Sie ein Beispiel für ein Medienzusammenfassungsprotokoll für die Anrufautomatisierung:

[
{
"TimeGenerated [UTC]": "5/24/2023, 7:57:40.480 PM",
"Level": "Informational",
"CorrelationId": "d149d528-a392-404c-8fcd-69087e9d0802",
"ResultType": "Completed",
"OperationName": "Play",
"OperationId": "7bef24d5-eb95-4ee6-bbab-0b7d45d91288",
"PlayInLoop": "FALSE",
"PlayToParticipant": "TRUE",
"PlayInterrupted": "FALSE",
"RecognizePromptSubOperationName": "",
"ResultCode": "200",
"ResultSubcode": "0",
"ResultMessage": "Action completed successfully."
}

Nächste Schritte

  • Informationen zum Insights-Dashboard für die Überwachung von Protokollen und Metriken der Anrufautomatisierung finden Sie hier.