Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O log de resumo de chamadas contém dados para ajudá-lo a identificar as principais propriedades de todas as chamadas. É criado um registo de resumo de chamada diferente para cada valor participantId (ou endpointId para chamadas peer-to-peer [P2P]) na chamada.
Para cada participante em uma chamada, os Serviços de Comunicação criam um log de resumo de chamada distinto. Se alguém voltar a participar numa chamada, esse participante terá o mesmo valor EndpointId, mas um valor ParticipantId diferente. Esse endpoint pode então ter dois registos de resumo de chamadas.
Como usar os registros de chamadas
Recomendamos que você colete todos os logs de chamadas disponíveis em um recurso de análise de log para que possa monitorar o uso de chamadas e melhorar a qualidade da chamada e receber novos logs dos Serviços de Comunicação do Azure à medida que os lançamos.
Existem duas ferramentas principais que pode utilizar para monitorizar as suas chamadas e melhorar a qualidade das chamadas.
Recomendamos usar os painéis de insights de voz e vídeo para iniciar investigações de qualidade e usar diagnósticos de chamadas, conforme necessário, para explorar chamadas individuais quando precisar de detalhes específicos.
Conceitos de dados
Importante
Você deve recolher registos se quiser analisá-los. Para saber mais, consulte: Como faço para armazenar logs?
O Azure não armazena seus dados de log de chamadas, a menos que você habilite essas Configurações de Diagnóstico específicas. Os dados da sua chamada não estão disponíveis retroativamente. Você acumula dados depois de criar as Configurações de diagnóstico.
Definições de dados
Esquema de log de resumo de chamadas
Importante
As informações do participante no log de resumo de chamadas variam de acordo com o locatário participante. A versão do SDK e a versão do sistema operativo serão redigidas se o participante não estiver no mesmo inquilino (também designado por cross-tenant) que o recurso dos Serviços de Comunicação. Os participantes entre locatários são classificados como usuários externos convidados por um locatário de recurso para participar e colaborar durante uma chamada.
Esta tabela descreve cada propriedade.
| Propriedade | Descrição |
|---|---|
time |
A marca temporal (UTC) quando o log foi gerado. |
operationName |
A operação associada ao registro de log. |
operationVersion |
O api-version valor associado à operação, se a operationName operação foi executada através de uma API. Se nenhuma API corresponder a esta operação, a versão representa a versão da operação, caso as propriedades associadas à operação mudem no futuro. |
category |
A categoria de registo do evento. Essa propriedade é a granularidade na qual você pode habilitar ou desabilitar logs em um recurso. As propriedades que aparecem dentro do properties blob de um evento são as mesmas dentro de uma categoria de log e tipo de recurso. |
correlationId |
O ID exclusivo de uma chamada. Ele identifica eventos correlacionados de todos os participantes e pontos de extremidade que se conectam durante uma única chamada, e você pode usá-lo para unir dados de logs diferentes. Se alguma vez precisar de abrir um caso de suporte com a Microsoft, pode usar o valor correlationId para identificar facilmente a chamada que está a solucionar. |
identifier |
O ID exclusivo para o usuário. A identidade pode ser um usuário dos Serviços de Comunicação do Azure, uma ID de usuário do Microsoft Entra, uma ID de usuário anônima do Teams ou uma ID de bot do Teams. Você pode usar esse ID para correlacionar eventos do usuário em logs. |
callStartTime |
Um carimbo de data e hora para o início da chamada, baseado na primeira tentativa de conexão de qualquer endpoint. |
callDuration |
A duração da chamada, expressa em segundos, calculada a partir da primeira tentativa de conexão até ao final da última conexão entre duas extremidades. |
callType |
O tipo de chamada. Contém "P2P" ou "Group". Uma chamada "P2P" é uma conexão direta 1:1 entre apenas dois endpoints não pertencentes a um servidor. Uma "Group" chamada é uma chamada que tem mais de dois pontos de extremidade ou é criada como "Group" chamada antes da conexão. |
teamsThreadId |
O identificador de thread do Teams. Esse ID é relevante somente quando a chamada é organizada como uma reunião do Teams. Em seguida, representa o caso de uso da interoperabilidade entre o Microsoft Teams e os Serviços de Comunicação do Azure. Esse ID é exposto em logs operacionais. Você também pode obter esse ID através das APIs de bate-papo. |
participantId |
O ID gerado para representar a ligação bidirecional entre um endpoint "Participant" (endpointType = "Server") e o servidor. Quando callType = "P2P", há uma conexão direta entre dois pontos de extremidade e nenhum participantId valor é gerado. |
participantStartTime |
A marca temporal para o início da primeira tentativa de conexão do participante. |
participantDuration |
A duração de cada ligação do participante em segundos, desde participantStartTime até ao carimbo de data/hora quando a ligação terminou. |
participantEndReason |
O motivo do fim de uma conexão de um participante. Ele contém códigos de erro do SDK de chamada que este emite (quando relevante) para cada valor de participantId. |
endpointId |
A ID exclusiva que representa cada ponto de extremidade conectado à chamada, onde endpointType define o tipo de ponto de extremidade. Quando o valor é null, a entidade conectada é o servidor dos Serviços de Comunicação (endpointType = "Server"). O valor endpointId pode, às vezes, persistir para o mesmo usuário em várias chamadas (correlationId) para clientes nativos. O número de valores endpointId determina o número de registos de resumo das chamadas. Um log de resumo distinto é criado para cada endpointId valor. |
endpointType |
Esse valor descreve as propriedades de cada ponto de extremidade conectado à chamada. Pode conter "Server", "VOIP", "PSTN", "BOT", ou "Unknown". |
sdkVersion |
A string de versão do SDK de Chamada dos Serviços de Comunicação que cada ponto de extremidade relevante utiliza (por exemplo, "1.1.00.20212500"). |
osVersion |
Uma cadeia de caracteres que representa o sistema operacional e a versão de cada dispositivo de ponto de extremidade. |
participantTenantId |
O ID do inquilino da Microsoft associado à identidade do participante. O locatário pode ser o locatário do Azure que possui o recurso dos Serviços de Comunicação do Azure ou o locatário da Microsoft associado a uma identidade do Microsoft 365. Este campo é usado para orientar a redação entre locatários. |
participantType |
Descrição do participante como uma combinação de seu cliente (Serviços de Comunicação do Azure ou Teams) e sua identidade (Serviços de Comunicação do Azure ou Microsoft 365). Os valores possíveis incluem: Serviços de Comunicação do Azure (identidade dos Serviços de Comunicação do Azure e SDK dos Serviços de Comunicação do Azure), Teams (identidade do Teams e cliente do Teams), Serviços de Comunicação do Azure como usuário externo do Teams (identidade dos Serviços de Comunicação do Azure e SDK dos Serviços de Comunicação do Azure na chamada ou reunião do Teams), Serviços de Comunicação do Azure como usuário do Microsoft 365 (identidade do Microsoft 365 e cliente dos Serviços de Comunicação do Azure), e Teams Voice Apps. |
pstnParticipantCallType |
Representa o tipo e a direção dos participantes PSTN, incluindo chamadas de emergência, roteamento direto, transferência, encaminhamento e assim por diante. |
ParticipantEndSubCode |
Representa o subcódigo de erro do SDK de Chamadas que o SDK emite (quando relevante) para cada valor participantId. |
ResultCategory |
Representa a categoria do participante que encerra a chamada. Pode ser um destes quatro valores: Success, ExpectedError, UnexpectedClientError, UnexpectedServerError. |
DiagnosticOptions |
Esse valor permite que os desenvolvedores anexem tags personalizadas à telemetria do cliente, que podem ser visualizadas na seção Diagnóstico de chamadas. Isso ajuda a identificar e solucionar problemas de forma mais eficaz. Para saber como adicionar tags personalizadas a esse valor, consulte Tutorial sobre como adicionar tags personalizadas à telemetria do cliente |
callDebuggingInfo |
Esse valor contém um objeto JSON com pares chave-valor que representam as propriedades internas da chamada, usada para fins de depuração da Microsoft. |
TPE |
Esse valor indica que a chamada está associada a um cenário de extensibilidade do Teams Phone. |
Códigos de erro
A participantEndReason propriedade contém um valor do conjunto de códigos de erro Calling SDK. Você pode consultar esses códigos para solucionar problemas que foram detetados durante a chamada, para cada ponto de extremidade. Consulte Solução de problemas de códigos de resposta de fim de chamada para SDK de chamada, SDK de automação de chamadas, PSTN, SDK de bate-papo e SDK de SMS.
Dados de exemplo para vários tipos de chamada
Nota
Neste artigo, as chamadas P2P e de grupo estão dentro do mesmo tenant por padrão. Todos os cenários de chamada que são entre locatários são especificados adequadamente ao longo do artigo.
Chamada P2P
Aqui estão campos compartilhados para todos os logs em uma chamada P2P:
"time": "2021-07-19T18:46:50.188Z",
"resourceId": "SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/RESOURCEGROUPS/ACS-TEST-RG/PROVIDERS/MICROSOFT.COMMUNICATION/COMMUNICATIONSERVICES/ACS-PROD-CCTS-TESTS",
"correlationId": "aaaa0000-bb11-2222-33cc-444444dddddd",
Registos de resumo de chamadas
Registros de resumo de chamadas compartilham informações de operação e categoria:
"operationName": "CallSummary",
"operationVersion": "1.0",
"category": "CallSummary",
Aqui está um resumo de chamada para o usuário VoIP 1:
"properties": {
"identifier": "acs:61fddbe3-0003-4066-97bc-6aaf143bbb84_0000000b-4fee-66cf-ac00-343a0d003158",
"callStartTime": "2021-07-19T17:54:05.113Z",
"callDuration": 6,
"callType": "P2P",
"teamsThreadId": "null",
"participantId": "null",
"participantStartTime": "2021-07-19T17:54:06.758Z",
"participantDuration": "5",
"participantEndReason": "0",
"endpointId": "570ea078-74e9-4430-9c67-464ba1fa5859",
"endpointType": "VoIP",
"sdkVersion": "1.0.1.0",
"osVersion": "Windows 10.0.17763 Arch: x64"
}
Aqui está um resumo de chamada para o usuário VoIP 2:
"properties": {
"identifier": "acs:7af14122-9ac7-4b81-80a8-4bf3582b42d0_06f9276d-8efe-4bdd-8c22-ebc5434903f0",
"callStartTime": "2021-07-19T17:54:05.335Z",
"callDuration": 6,
"callType": "P2P",
"teamsThreadId": "null",
"participantId": "null",
"participantStartTime": "2021-07-19T17:54:06.335Z",
"participantDuration": "5",
"participantEndReason": "0",
"endpointId": "a5bd82f9-ac38-4f4a-a0fa-bb3467cdcc64",
"endpointType": "VoIP",
"sdkVersion": "1.1.0.0",
"osVersion": "null"
}
Aqui está um log de resumo de chamadas entre locatários para o usuário VoIP 1:
"properties": {
"identifier": "1e4c59e1-r1rr-49bc-893d-990dsds8f9f5",
"callStartTime": "2022-08-14T06:18:27.010Z",
"callDuration": 520,
"callType": "P2P",
"teamsThreadId": "null",
"participantId": "null",
"participantTenantId": "02cbdb3c-155a-4b95-b829-6d56a45787ca",
"participantStartTime": "2022-08-14T06:18:27.010Z",
"participantDuration": "520",
"participantEndReason": "0",
"endpointId": "02cbdb3c-155a-4d98-b829-aaaaa61d44ea",
"endpointType": "VoIP",
"sdkVersion": "Redacted",
"osVersion": "Redacted"
}
Aqui está um resumo de chamada para uma chamada PSTN:
Nota
Os registos de chamadas P2P ou de grupo têm versões do sistema operativo e do SDK redigidas, independentemente de ser o locatário do participante ou o locatário do bot.
"properties": {
"identifier": "b1999c3e-bbbb-4650-9b23-9999bdabab47",
"callStartTime": "2022-08-07T13:53:12Z",
"callDuration": 1470,
"callType": "Group",
"teamsThreadId": "19:36ec5177126fff000aaa521670c804a3@thread.v2",
"participantId": " b25cf111-73df-4e0a-a888-640000abe34d",
"participantStartTime": "2022-08-07T13:56:45Z",
"participantDuration": 960,
"participantEndReason": "0",
"endpointId": "8731d003-6c1e-4808-8159-effff000aaa2",
"endpointType": "PSTN",
"sdkVersion": "Redacted",
"osVersion": "Redacted"
}
Chamadas em grupo
Os dados de uma chamada em grupo são gerados em três logs de resumo de chamadas e seis logs de diagnóstico de chamadas. Aqui estão campos compartilhados para todos os logs na chamada:
"time": "2021-07-05T06:30:06.402Z",
"resourceId": "SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/RESOURCEGROUPS/ACS-TEST-RG/PROVIDERS/MICROSOFT.COMMUNICATION/COMMUNICATIONSERVICES/ACS-PROD-CCTS-TESTS",
"correlationId": "bbbb1111-cc22-3333-44dd-555555eeeeee",
Registos de resumo de chamadas
Registros de resumo de chamadas compartilham informações de operação e categoria:
"operationName": "CallSummary",
"operationVersion": "1.0",
"category": "CallSummary",
Segue um resumo da chamada para o terminal VoIP 1:
"properties": {
"identifier": "acs:1797dbb3-f982-47b0-b98e-6a76084454f1_0000000b-1531-729f-ac00-343a0d00d975",
"callStartTime": "2021-07-05T06:16:40.240Z",
"callDuration": 87,
"callType": "Group",
"teamsThreadId": "19:meeting_MjZiOTAyN2YtZWU1Yi00ZTZiLT77777OOOOO99999jgxOTkw@thread.v2",
"participantId": "04cc26f5-a86d-481c-b9f9-7a40be4d6fba",
"participantStartTime": "2021-07-05T06:16:44.235Z",
"participantDuration": "82",
"participantEndReason": "0",
"endpointId": "5ebd55df-ffff-ffff-89e6-4f3f0453b1a6",
"endpointType": "VoIP",
"sdkVersion": "1.0.0.3",
"osVersion": "Darwin Kernel Version 18.7.0: Mon Nov 9 15:07:15 PST 2020; root:xnu-4903.272.3~3/RELEASE_ARM64_S5L8960X"
}
Aqui está um resumo de chamada do terminal VoIP 3:
"properties": {
"identifier": "acs:1797dbb3-f982-47b0-b98e-6a76084454f1_0000000b-1531-57c6-ac00-343a0d00d972",
"callStartTime": "2021-07-05T06:16:40.240Z",
"callDuration": 87,
"callType": "Group",
"teamsThreadId": "19:meeting_MjZiOTAyN2YtZWU1Yi00ZTZiLTk2ZDUtYTZlM2I2ZjgxOTkw@thread.v2",
"participantId": "1a9cb3d1-7898-4063-b3d2-26c1630ecf03",
"participantStartTime": "2021-07-05T06:16:40.240Z",
"participantDuration": "87",
"participantEndReason": "0",
"endpointId": "5ebd55df-ffff-ffff-ab89-19ff584890b7",
"endpointType": "VoIP",
"sdkVersion": "1.0.0.3",
"osVersion": "Android 11.0; Manufacturer: Google; Product: redfin; Model: Pixel 5; Hardware: redfin"
}
Aqui está um resumo da chamada para o ponto final 2 da PSTN.
"properties": {
"identifier": "null",
"callStartTime": "2021-07-05T06:16:40.240Z",
"callDuration": 87,
"callType": "Group",
"teamsThreadId": "19:meeting_MjZiOTAyN2YtZWU1Yi00ZTZiLT77777OOOOO99999jgxOTkw@thread.v2",
"participantId": "515650f7-8204-4079-ac9d-d8f4bf07b04c",
"participantStartTime": "2021-07-05T06:17:10.447Z",
"participantDuration": "52",
"participantEndReason": "0",
"endpointId": "46387150-692a-47be-8c9d-1237efe6c48b",
"endpointType": "PSTN",
"sdkVersion": "null",
"osVersion": "null"
}
Aqui está um log de resumo de chamadas entre múltiplos inquilinos:
"properties": {
"identifier": "1e4c59e1-r1rr-49bc-893d-990dsds8f9f5",
"callStartTime": "2022-08-14T06:18:27.010Z",
"callDuration": 912,
"callType": "Group",
"teamsThreadId": "19:meeting_MjZiOTAyN2YtZWU1Yi00ZTZiLT77777OOOOO99999jgxOTkw@thread.v2",
"participantId": "aa1dd7da-5922-4bb1-a4fa-e350a111fd9c",
"participantTenantId": "02cbdb3c-155a-4b95-b829-6d56a45787ca",
"participantStartTime": "2022-08-14T06:18:27.010Z",
"participantDuration": "902",
"participantEndReason": "0",
"endpointId": "02cbdb3c-155a-4d98-b829-aaaaa61d44ea",
"endpointType": "VoIP",
"sdkVersion": "Redacted",
"osVersion": "Redacted"
}
Aqui está um registo de resumo de chamadas de vários locatários com um bot como participante.
"properties": {
"identifier": "b1902c3e-b9f7-4650-9b23-9999bdabab47",
"callStartTime": "2022-08-09T16:00:32Z",
"callDuration": 1470,
"callType": "Group",
"teamsThreadId": "19:meeting_MmQwZDcwYTQtZ000HWE6NzI4LTg1YTAtNXXXXX99999ZZZZZ@thread.v2",
"participantId": "66e9d9a7-a434-4663-d91d-fb1ea73ff31e",
"participantStartTime": "2022-08-09T16:14:18Z",
"participantDuration": 644,
"participantEndReason": "0",
"endpointId": "69680ec2-5ac0-4a3c-9574-eaaa77720b82",
"endpointType": "Bot",
"sdkVersion": "Redacted",
"osVersion": "Redacted"
}
Perguntas mais frequentes
Como faço para armazenar logs?
A secção seguinte explica este requisito.
Os logs dos Serviços de Comunicação do Azure não são armazenados em sua conta do Azure por padrão, portanto, você precisa começar a armazená-los para que ferramentas como informações de voz e vídeo, painel e diagnóstico de chamadas funcionem. Para coletar esses logs de chamadas, você precisa habilitar uma configuração de diagnóstico que direcione os dados da chamada para um espaço de trabalho do Log Analytics.
Os dados não são armazenados retroativamente, portanto, você começa a capturar registros de chamadas somente depois de definir a configuração de diagnóstico.
Siga as instruções para adicionar configurações de diagnóstico para seu recurso em Habilitar logs por meio de Configurações de Diagnóstico no Azure Monitor. Recomendamos que você colete inicialmente todos os logs. Depois de entender os recursos do Azure Monitor, determine quais logs você deseja reter e por quanto tempo. Ao adicionar sua configuração de diagnóstico, você será solicitado a selecionar logs. Para coletar todos os logs, selecione allLogs.
O volume, a retenção e o uso dos seus dados no Log Analytics do Azure Monitor são cobrados através dos medidores de dados existentes do Azure. Recomendamos que você monitore suas políticas de retenção e uso de dados para considerações de custo, conforme necessário. Para obter mais informações, consulte Controlando custos.
Se você tiver várias IDs de recurso dos Serviços de Comunicação do Azure, deverá habilitar essas configurações para cada ID de recurso.
Próximos passos
Analise a visão geral de todos os logs de voz e vídeo, consulte: Visão geral dos logs de chamadas dos Serviços de Comunicação do Azure
Aprenda as práticas recomendadas para gerenciar a qualidade e a confiabilidade de suas chamadas, consulte: Melhorar e gerenciar a qualidade das chamadas
Saiba mais sobre o painel de informações para monitorar os registros de chamadas de voz e chamadas de vídeo.
Saiba como usar os registros de chamadas para diagnosticar problemas de qualidade e confiabilidade de chamadas com o Diagnóstico de chamadas, consulte: Diagnóstico de chamadas