Udostępnij za pośrednictwem


Dzienniki automatyzacji wywołań usług Azure Communication Services

Usługi Azure Communication Services oferują funkcje rejestrowania, których można użyć do monitorowania i debugowania rozwiązania usług Komunikacyjnych. Te możliwości można skonfigurować za pośrednictwem witryny Azure Portal.

Wymagania wstępne

Usługi Azure Communication Services udostępniają funkcje monitorowania i analizy za pośrednictwem dzienników usługi Azure Monitor i metryk usługi Azure Monitor. Każdy zasób platformy Azure wymaga własnego ustawienia diagnostycznego, które definiuje następujące kryteria:

  • Kategorie danych dzienników i metryk wysyłanych do miejsc docelowych, które definiuje ustawienie. Dostępne kategorie różnią się w zależności od typu zasobu.

  • Co najmniej jedno miejsce docelowe do wysyłania dzienników. Bieżące miejsca docelowe obejmują obszar roboczy usługi Log Analytics, usługę Azure Event Hubs i usługę Azure Storage.

    Jedno ustawienie diagnostyczne może definiować nie więcej niż jedno z każdego typu docelowego. Jeśli chcesz wysłać dane do więcej niż jednego typu miejsca docelowego (na przykład dwóch obszarów roboczych usługi Log Analytics), utwórz wiele ustawień. Każdy zasób może mieć maksymalnie pięć ustawień diagnostycznych.

Ważne

Należy włączyć ustawienie diagnostyczne w usłudze Azure Monitor, aby wysyłać dane dziennika ankiet do obszaru roboczego usługi Log Analytics, centrum zdarzeń lub konta usługi Azure Storage w celu odbierania i analizowania danych ankiety. Jeśli nie wyślesz danych usługi Call Automation do jednej z tych opcji, dane ankiety nie będą przechowywane i zostaną utracone.

Poniższe instrukcje umożliwiają skonfigurowanie zasobu usługi Azure Monitor w celu rozpoczęcia tworzenia dzienników i metryk dla wystąpienia usług Communication Services. Aby uzyskać szczegółową dokumentację dotyczącą używania ustawień diagnostycznych we wszystkich zasobach platformy Azure, zobacz Włączanie rejestrowania w ustawieniach diagnostycznych.

W obszarze nazwy ustawienia diagnostycznego wybierz pozycję Dzienniki automatyzacji wywołań operacji i Dzienniki podsumowania zdarzeń usługi Call Automation, aby włączyć dzienniki dla usługi Call Automation.

Zrzut ekranu przedstawiający ustawienia diagnostyczne dla usługi Call Automation.

Kategorie dzienników zasobów

Usługi komunikacyjne oferują następujące typy dzienników, które można włączyć:

  • Dzienniki użycia: podaj dane użycia skojarzone z każdą ofertą rozliczanej usługi.
  • Dzienniki operacyjne automatyzacji wywołań: podaj informacje operacyjne dotyczące żądań interfejsu API usługi Call Automation. Tych dzienników można użyć do identyfikowania punktów awarii i wykonywania zapytań dotyczących wszystkich żądań wykonanych w wywołaniu (przy użyciu identyfikatora korelacji lub identyfikatora wywołania serwera).
  • Dzienniki podsumowania multimediów usługi Call Automation: podaj informacje o wyniku operacji na nośniku. Te dzienniki są asynchroniczne podczas wykonywania żądań multimediów przy użyciu interfejsów API usługi Call Automation. Te dzienniki ułatwiają identyfikowanie punktów awarii i możliwych wzorców interakcji użytkowników z aplikacją.

Schemat dziennika użycia

Właściwości opis
Timestamp Sygnatura czasowa (UTC) czasu wygenerowania dziennika.
OperationName Operacja skojarzona z rekordem dziennika.
OperationVersion api-version Wartość skojarzona z operacją, jeśli OperationName operacja została wykonana za pośrednictwem interfejsu API. Jeśli żaden interfejs API nie odpowiada tej operacji, wersja reprezentuje wersję operacji, na wypadek gdyby właściwości skojarzone z operacją zmieniły się w przyszłości.
Category Kategoria dziennika zdarzenia. Kategoria to stopień szczegółowości, w którym można włączać lub wyłączać dzienniki w zasobie. Właściwości wyświetlane w properties obiekcie blob zdarzenia są takie same w kategorii dziennika i typie zasobu.
CorrelationID Identyfikator skorelowanych zdarzeń. Służy do identyfikowania skorelowanych zdarzeń między wieloma tabelami.
Properties Inne dane, które mają zastosowanie do różnych trybów usług komunikacyjnych.
RecordID Unikatowy identyfikator rekordu użycia.
UsageType Tryb użycia (na przykład Czat, PSTN lub NAT).
UnitType Typ jednostki, która jest opierać się na trybie użycia (na przykład minutach, megabajtach lub komunikatach).
Quantity Liczba jednostek używanych lub używanych dla tego rekordu.

Wywoływanie dzienników operacyjnych usługi Automation

Właściwości opis
TimeGenerated Sygnatura czasowa (UTC) czasu wygenerowania dziennika.
OperationName Operacja skojarzona z rekordem dziennika.
CorrelationID Identyfikator umożliwiający zidentyfikowanie wywołania i skorelowanie zdarzeń dla unikatowego wywołania.
OperationVersion Wersja api-version skojarzona z operacją, jeśli operationName operacja została wykonana za pośrednictwem interfejsu API. Jeśli żaden interfejs API nie odpowiada tej operacji, wersja reprezentuje wersję operacji, na wypadek gdyby właściwości skojarzone z operacją zmieniły się w przyszłości.
Category Kategoria dziennika zdarzenia. Kategoria to stopień szczegółowości, w którym można włączać lub wyłączać dzienniki w zasobie. Właściwości wyświetlane w properties obiekcie blob zdarzenia są takie same w kategorii dziennika i typie zasobu.
ResultType Stan operacji.
ResultSignature Podstatu operacji. Jeśli ta operacja odpowiada wywołaniu interfejsu API REST, to pole jest kodem stanu HTTP odpowiedniego wywołania REST.
DurationMs Czas trwania operacji w milisekundach.
CallerIpAddress Adres IP obiektu wywołującego, jeśli operacja odpowiada wywołaniu interfejsu API pochodzącemu z jednostki z publicznie dostępnym adresem IP.
Level Poziom ważności zdarzenia.
URI Identyfikator URI żądania.
CallConnectionId Identyfikator reprezentujący połączenie wywołania, jeśli jest dostępny. Ten identyfikator jest inny dla każdego uczestnika i służy do identyfikowania połączenia z połączeniem.
ServerCallId Unikatowy identyfikator identyfikująy wywołanie.
SDKVersion Wersja zestawu SDK używana dla żądania.
SDKType Typ zestawu SDK używany dla żądania.
SubOperationName Nazwa używana do identyfikowania podtypu operacji nośnika (odtwórz lub rozpoznaj).
operationID Identyfikator używany do korelowania zdarzeń asynchronicznych.

Oto przykład dziennika operacyjnego usługi Call Automation:

[
{
"TimeGenerated [UTC]": "5/25/2023, 5:43:25.746 PM",
"Level": "Informational",
"CorrelationId": "aaaa0000-bb11-2222-33cc-444444dddddd",
"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",
}

Dzienniki podsumowania multimediów usługi Call Automation

Właściwości opis
TimeGenerated Sygnatura czasowa (UTC) zdarzenia.
level Poziom ważności zdarzenia. Musi być jednym z Informationalelementów , Warning, Errorlub Critical. 
resourceId Identyfikator zasobu, który emitował zdarzenie.
durationMs Czas trwania operacji w milisekundach.
callerIpAddress
correlationId Identyfikator łańcucha skype'a. 
operationName Nazwa operacji, którą reprezentuje to zdarzenie.
operationVersion
resultType Stan wydarzenia. Typowe wartości to Completed, Canceledi Failed.
resultSignature Podstatu operacji. Jeśli ta operacja odpowiada wywołaniu interfejsu API REST, to pole jest kodem stanu HTTP odpowiedniego wywołania REST.
operationId Identyfikator operacji używany do korelowania zdarzeń asynchronicznych.
recognizePromptSubOperationName Podtyp operacji. Potencjalne wartości to File, TextToSpeechi SSML.
playInLoop True jeśli zażądano pętli dla operacji odtwarzania. False jeśli w przeciwnym razie.
playToParticipant True jeśli operacja odtwarzania miała cel. False jeśli była to operacja play-to-all.
interrupted True jeśli monit zostanie przerwany. False jeśli w przeciwnym razie.
resultCode Kod wyniku operacji.
resultSubcode Kod podrzędny wyniku operacji.
resultMessage Komunikat wynikowy operacji.

Oto przykład dziennika podsumowania multimediów usługi Call Automation:

[
{
"TimeGenerated [UTC]": "5/24/2023, 7:57:40.480 PM",
"Level": "Informational",
"CorrelationId": "bbbb1111-cc22-3333-44dd-555555eeeeee",
"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."
}

Następne kroki