Share via


Azure Communication Services-Anrufautomatisierungs-Protokolle

Azure Communication Services bietet Protokollierungsfunktionen, mit denen Sie Ihre Communication Services-Lösung überwachen und debuggen können. Sie konfigurieren diese Funktionen über die Azure-Portal.

Voraussetzungen

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

  • Kategorien von Protokoll- und Metrikdaten, die an die Ziele gesendet werden, die von der Einstellung definiert 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.

    Eine einzelne Diagnoseeinstellung kann nicht mehr als einen der einzelnen Zieltypen definieren. 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 keine Anrufautomatisierungsdaten an eine dieser Optionen senden, werden Ihre Umfragedaten nicht gespeichert und gehen verloren.

Die folgenden Anweisungen konfigurieren Ihre Azure Monitor-Ressource, um mit dem Erstellen von Protokollen und Metriken für Ihre Communication Services-Instanz zu beginnen. Ausführliche Dokumentation zur Verwendung von Diagnoseeinstellungen in allen Azure-Ressourcen finden Sie unter Aktivieren der Protokollierung in Diagnoseeinstellungen.

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

Screenshot of diagnostic settings for Call Automation.

Ressourcenprotokollkategorien

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

  • Verwendungsprotokolle: Bereitstellen von Nutzungsdaten, die den einzelnen abrechnungsbezogenen Diensten zugeordnet sind.
  • Betriebsprotokolle für die Anrufautomatisierung: Bereitstellen von betriebsbereiten Informationen zu Anforderungen der Anrufautomatisierungs-API. 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: Bereitstellen von Informationen zum Ergebnis von Medienvorgängen. Diese Protokolle werden asynchron angezeigt, wenn Sie Medienanforderungen mithilfe von Anrufautomatisierungs-APIs vornehmen. Mithilfe dieser Protokolle können Sie Fehlerpunkte und mögliche Muster für die Interaktion der Benutzer mit Ihrer Anwendung identifizieren.

Verwendungsprotokollschema

Eigenschaft Beschreibung
Timestamp Der Zeitstempel (UTC) des Zeitpunkts, zu dem das Protokoll generiert wurde.
OperationName Der mit der Protokollaufzeichnung verbundene Vorgang
OperationVersion Der api-version dem Vorgang zugeordnete Wert, wenn der OperationName Vorgang über eine API ausgeführt wurde. Wenn dieser Vorgang keine API entspricht, stellt die Version die Version des Vorgangs dar, falls die eigenschaften, die der Vorgangsänderung zugeordnet sind, in Der Zukunft geändert werden.
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 properties im Blob eines Ereignisses angezeigt werden, sind in einer Protokollkategorie und einem Ressourcentyp identisch.
CorrelationID Die ID für korrelierte Ereignisse. Sie können es verwenden, um korrelierte Ereignisse zwischen mehreren Tabellen zu identifizieren.
Properties Andere Daten, die für verschiedene Kommunikationsdienste gelten.
RecordID Die eindeutige ID für einen Verwendungsdatensatz.
UsageType Der Verwendungsmodus (z. B. Chat, PSTN oder NAT).
UnitType Der Typ der Einheit, die verwendet wird, basiert auf einem Nutzungsmodus (z. B. Minuten, Megabyte oder Nachrichten).
Quantity Die Anzahl der für diesen Datensatz verwendeten oder verbrauchten Einheiten.

Betriebsprotokolle für die Anrufautomatisierung

Eigenschaft Beschreibung
TimeGenerated Der Zeitstempel (UTC) des Zeitpunkts, zu dem das Protokoll generiert wurde.
OperationName Der mit der Protokollaufzeichnung verbundene Vorgang
CorrelationID Der Bezeichner zum Identifizieren eines Anrufs und Korrelieren von Ereignissen für einen eindeutigen Aufruf.
OperationVersion Die api-version dem Vorgang zugeordnete Version, wenn der operationName Vorgang über eine API ausgeführt wurde. Wenn dieser Vorgang keine API entspricht, stellt die Version die Version des Vorgangs dar, falls die eigenschaften, die der Vorgangsänderung zugeordnet sind, in Der Zukunft geändert werden.
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 properties im Blob eines Ereignisses angezeigt werden, sind in einer Protokollkategorie und einem Ressourcentyp 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 Aufrufers, 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 zum Identifizieren 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 gestellt 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 ist 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",
}

Zusammenfassungsprotokolle für die Anrufautomatisierung

Eigenschaft Beschreibung
TimeGenerated Der Zeitstempel (UTC) des Ereignisses.
level Der Schweregrad des Ereignisses. Es muss eine von Informational, , Warning, Erroroder Critical. 
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, Canceledund 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, TextToSpeechund SSML.
playInLoop True if looping was requested for the play operation. False andernfalls.
playToParticipant True wenn der Wiedergabevorgang ein Ziel hatte. False wenn es sich um einen Play-to-All-Vorgang handelte.
interrupted True wenn die Eingabeaufforderung unterbrochen wird. False andernfalls.
resultCode Der Ergebniscode des Vorgangs.
resultSubcode Die Ergebnisuntercodierung des Vorgangs.
resultMessage Die Ergebnismeldung des Vorgangs.

Hier ist 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