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.
A única diferença nas propriedades entre o esquema de log de atualizações do resumo de chamadas e o esquema de log de resumo de chamadas é a propriedade adicional. A CallUpdatesVersion propriedade indica o quão recente é o log. O esquema de log de atualizações de resumo de chamadas tem latência menor do que o esquema de log de resumo de chamadas. Ele alcança esta baixa latência enviando propriedades de esquema assim que elas podem ser enviadas. Por outro lado, o esquema de resumo de log não envia um esquema de log até que todo o esquema de log tenha sido concluído internamente pela Microsoft.
O log de atualizações de resumo de chamadas contém dados para ajudá-lo a identificar as principais propriedades de todas as chamadas. É criado um log de atualizações de resumos de chamada distinto para cada valor participantId (ou endpointId para chamadas ponto a ponto [P2P]) na chamada.
Para cada participante de uma chamada, os Serviços de Comunicação criam um log de atualizações 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 atualizações do 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, conforme necessário, usar diagnósticos de chamadas para explorar chamadas individuais quando precisar de detalhes granulares.
Conceitos de dados
Importante
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.
Ao utilizar o esquema de registo das atualizações do resumo de chamadas, refira-se sempre ao número mais alto de CallUpdatesVersion para garantir que tem a informação mais atualizada. Sempre que os dados da chamada são atualizados, uma nova versão do log é criada contendo as informações mais atualizadas. Por exemplo, quanto maior o CallUpdatesVersion número, mais recente a atualização. Isso significa que a versão 3 é mais recente e inclui alterações mais recentes em comparação com a versão 1.
Mais sobre versões de log e latência de dados
O esquema de log de atualizações de resumo de chamadas pode exigir aproximadamente 60 minutos após o final de uma chamada para propagar dados, a maioria dos logs pode estar disponível dentro de 40 minutos.
Após o término de uma chamada, uma versão inicial (versão 1) do log é enviada para as tabelas CallSummaryUpdates e CallDiagnosticUpdates. As versões iniciais podem conter null valores, se mais informações estiverem disponíveis, versões atualizadas dos logs serão criadas com informações mais completas. Por exemplo, os dados do cliente podem ser atrasados devido a problemas de conectividade de rede entre o computador cliente e os nossos servidores, ou algo tão simples como um utilizador fechar a tampa do seu portátil após a chamada antes de os dados do cliente serem enviados e reabri-lo horas (ou dias) depois.
Devido a essas variações de coleção, você pode ver versões incrementais chegarem horas ou até dias depois. Você pode usar versões para uma compreensão mais rápida do seu recurso de chamada do que esperar até que todos os dados do cliente SDK de chamada sejam recebidos. O melhor cenário é que todos os participantes da chamada terminem suas chamadas e que o SDK de chamada possa enviar dados para o servidor.
Definições de dados
Esquema do registo de atualizações do resumo de chamadas
Importante
As informações do participante no log de atualizações 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 valor api-version associado à operação, se a operação operationName foi realizada 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 terminais conectados durante uma única chamada, e pode usá-lo para conjugar dados de diferentes registos. Se precisar abrir um caso de suporte com a Microsoft, pode usar o identificador correlationId para identificar facilmente a chamada que está a resolver. |
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 registo de data e hora para o início da chamada, com base na primeira tentativa de ligação de qualquer extremidade. |
callDuration |
A duração da chamada, expressa em segundos, é baseada na primeira tentativa de ligação e no final da última ligação entre duas extremidades. |
callType |
O tipo da chamada. Contém ou "P2P" ou "Group". Uma "P2P" chamada é uma conexão direta 1:1 entre apenas dois terminais não-servidor. Uma chamada "Group" é aquela que tem mais de dois pontos de extremidade ou é estabelecida como "Group" 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 conexão bidirecional entre um "Participant" endpoint (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 pelo qual uma conexão de participante terminou. Contém códigos de erro do SDK de Chamadas que o SDK emite (quando relevante) para cada valor 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 utilizador 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 utilizada por cada ponto de extremidade relevante (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 tenant 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 é utilizado para orientar a ediçã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 Calling que o SDK emite (quando relevante) para cada valor participantId. |
ResultCategory |
Representa a categoria do participante que encerra a chamada. Pode ser um destes 4 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 |
CallUpdatesVersion |
Representa a versão de log, com números mais altos indicando a versão publicada mais recentemente. |
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 inquilino por padrão. Todos os cenários de chamada que são entre inquilinos estão devidamente especificados 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",
Atualizações de resumo de chamadas logs
Atualizações dos registos de resumo de chamadas partilham informações sobre operações e categorias.
"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"
"callupdatesversion": "2"
}
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"
"callupdatesversion": "2"
}
Aqui está um registo de atualizações do resumo de chamadas entre locatários para o utilizador 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"
"callupdatesversion": "2"
}
Aqui está um resumo de chamada para uma chamada PSTN:
Nota
Os registos de chamadas P2P ou em grupo têm as versões de SO e SDK ocultadas, independentemente de ser a entidade do participante ou a 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"
"callupdatesversion": "2"
}
Chamadas em grupo
Os dados de uma chamada de grupo são gerados em três logs de atualizações de resumo de chamadas e seis logs de diagnóstico de chamadas. Aqui estão campos comuns para todos os registos da 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",
Atualizações de resumo de chamadas logs
Atualizações dos registos de resumo de chamadas partilham informações sobre operações e categorias.
"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"
"callupdatesversion": "2"
}
Aqui está um resumo de chamada para o 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"
"callupdatesversion": "2"
}
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"
"callupdatesversion": "2"
}
Aqui está o registo de atualizações de resumo das chamadas entre diferentes locatários:
"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"
"callupdatesversion": "2"
}
Aqui está um registo de atualizações resumidas de chamadas entre inquilinos 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"
"callupdatesversion": "2"
}
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. Quando adiciona a sua configuração de diagnóstico, ser-lhe-á pedido para selecionar registos. Para coletar todos os logs, selecione allLogs.
O volume, a retenção e o uso dos dados no Log Analytics dentro do Azure Monitor são faturados 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