Partilhar via


Visão geral dos logs de chamadas dos Serviços de Comunicação do Azure

Os Serviços de Comunicação do Azure fornecem recursos de registro em log que você pode usar para monitorar e depurar sua solução de Serviços de Comunicação. Configure esses recursos por meio do portal do Azure.

O conteúdo deste artigo refere-se a logs habilitados por meio do Azure Monitor (consulte também Perguntas frequentes). Para habilitar esses logs para os Serviços de Comunicação, consulte Habilitar o registro em log nas configurações de diagnóstico.

Importante

Você deve coletar logs 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.

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 do painel 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 granulares.

Logs disponíveis

Os Serviços de Comunicação do Azure criam oito logs de chamadas:

Registros de atualizações de resumo de chamadas:

Esses dados de log chegam ao Azure Monitor mais rápido do que os logs de resumo de chamadas e recomendamos usar esses logs em vez do esquema de log de resumo de chamadas. Esse log contém informações básicas sobre a chamada, incluindo todas as IDs relevantes, carimbos de data/hora, pontos de extremidade e informações do SDK.

Para saber mais, consulte: Esquema de log de atualizações de resumo de chamadas

Logs de resumo de chamadas:

Esse log é um subconjunto do esquema de log de atualizações de resumo de chamadas. Ele contém informações básicas sobre a chamada, incluindo todos os IDs relevantes, carimbos de data/hora, pontos de extremidade e informações do SDK. Para uma latência de log mais rápida, use os logs de atualizações de resumo de chamadas.

Para saber mais, consulte: Esquema de log de resumo de chamadas

Logs de atualizações de diagnóstico de chamadas:

Esses dados de log chegam ao Azure Monitor mais rápido do que os logs de diagnóstico de chamada e recomendamos usar esses logs em vez do esquema de log de diagnóstico de chamada. Esse log contém informações sobre o fluxo de mídia de chamada de um participante, juntamente com um conjunto de métricas que indicam a qualidade das medições de experiência.

Para saber mais, consulte: Esquema de log de atualizações de diagnóstico de chamada

Registros de diagnóstico de chamadas:

Esse log é um subconjunto do esquema de log de atualizações de diagnóstico de chamada. Ele contém informações sobre o fluxo, juntamente com um conjunto de métricas que indicam a qualidade das medições de experiência. Para uma latência de log mais rápida, use os logs de atualizações de resumo de chamadas.

Para saber mais, consulte: Esquema de log de diagnóstico de chamadas

Chamar logs de operações do cliente:

Conter eventos detalhados do cliente de chamada. Esses eventos de log são gerados para cada EndpointId uma em uma chamada e o número de logs de eventos gerados depende das operações que o participante realizou durante a chamada.

Para saber mais, consulte: Esquema de log de operações do cliente de chamada

Registros de estatísticas de mídia do cliente de chamadas:

Contêm valores detalhados de fluxo de mídia. Esses logs são gerados para cada fluxo de mídia em uma chamada. Para cada EndpointId uma dentro de uma chamada (incluindo o servidor), os Serviços de Comunicação do Azure criam um log distinto para cada fluxo de mídia (áudio ou vídeo, por exemplo) entre pontos de extremidade. O volume de dados gerados em cada log depende da duração da chamada e do número de vapores de mídia na chamada.

Em uma chamada P2P, cada log contém dados relacionados a cada um dos fluxos de saída associados a cada ponto de extremidade. Em uma chamada de grupo, cada fluxo associado cria endpointType = "Server" um log que contém dados para os fluxos de entrada. Todos os outros fluxos criam logs que contêm dados para os fluxos de saída para todos os pontos de extremidade que não são do servidor. Em chamadas em grupo, use o participantId valor como a chave para unir os logs de entrada e saída relacionados em uma conexão de participante distinta.

Para saber mais, consulte: Esquema de log de séries temporais de estatísticas de mídia do cliente de chamada

Registros de pesquisa de fim de chamada:

Esses logs são preenchidos quando o cliente de chamada na Web envia uma pesquisa no final da chamada. Você pode usar esses logs para aprender a perceção subjetiva da qualidade da chamada com seus usuários.

Para saber mais, consulte: Visão geral da pesquisa de fim de chamada

Registros de métricas de chamadas:

Esses logs contêm métricas de chamada agregadas em compartimentos diários com base em atributos como Versão do SDK, nome do sistema operacional e subcódigo de erro. Esses logs são usados no painel de insights de voz e vídeo para visualizar gráficos de longo prazo de confiabilidade, qualidade e desempenho com base na contagem de chamadas bem-sucedidas e com falha da API do SDK de várias operações.

Para saber mais, consulte: Esquema de log de métricas de chamada

Conceitos de dados

As seguintes descrições de alto nível dos conceitos de dados são específicas para chamadas de voz e vídeo. Esses conceitos são importantes de serem revisados para que você possa entender o significado dos dados capturados nos logs.

Entidades e IDs

Familiarize-se com os seguintes termos:

  • Call: Conforme representado nos dados, uma chamada é uma abstração representada por correlationId. Os valores para correlationId são exclusivos para cada chamada e têm limite de tempo com base em callStartTime e callDuration.

  • Participante: Representa a conexão entre um ponto de extremidade e o servidor. Um participante (participantId) está presente apenas quando a chamada é uma chamada de grupo.

  • Ponto de extremidade: A entidade mais exclusiva, representada por endpointId. Cada chamada é um evento que contém dados de dois ou mais pontos de extremidade. Os endpoints representam os participantes na chamada.

    EndpointType informa se o ponto de extremidade é um usuário humano (PSTN ou VoIP), um bot ou o servidor que está gerenciando vários participantes em uma chamada. Quando um endpointType valor é "Server", o ponto de extremidade não recebe uma ID exclusiva. Você pode analisar endpointType e o número de endpointId valores para determinar quantos usuários e outros participantes não humanos (bots e servidores) ingressam em uma chamada.

    SDKs nativos para Android e iOS reutilizam o mesmo endpointId valor para um usuário em várias chamadas, para que você possa entender as experiências em todas as sessões. Esse processo difere dos pontos de extremidade baseados na Web, que sempre geram um novo endpointId valor para cada nova chamada.

  • Stream: A entidade mais granular. Há um fluxo para cada direção (entrada ou saída) e mediaType valor (por exemplo, Audio ou Video).

P2P vs. chamadas em grupo

Nota

Neste artigo, as chamadas P2P e de grupo estão dentro do mesmo locatário por padrão. Todos os cenários de chamada que são cross-tenant são especificados de acordo ao longo do artigo.

Existem dois tipos de chamadas, representadas por callType:

  • Chamada ponto a ponto (P2P): uma conexão entre apenas dois pontos de extremidade, sem nenhum ponto de extremidade do servidor. As chamadas P2P são iniciadas como uma chamada entre esses pontos de extremidade e não são criadas como um evento de chamada de grupo antes da conexão.

    Diagrama mostrando uma chamada P2P em dois pontos de extremidade.

  • Chamada em grupo: qualquer chamada que tenha mais de dois pontos de extremidade conectados. As chamadas de grupo incluem um ponto de extremidade do servidor e a conexão entre cada ponto de extremidade e o servidor. As chamadas P2P que adicionam outro ponto de extremidade durante a chamada deixam de ser P2P e se tornam uma chamada em grupo. Você pode determinar a linha do tempo de quando cada ponto de extremidade ingressou na chamada usando as participantStartTime métricas e participantDuration .

    Diagrama mostrando uma chamada de grupo em vários pontos de extremidade.

Exemplos de vários tipos de chamada

Nota

Neste artigo, as chamadas P2P e de grupo estão dentro do mesmo locatário por padrão. Todos os cenários de chamada que são cross-tenant são especificados de acordo ao longo do artigo.

Exemplo: chamada P2P

O diagrama a seguir representa dois pontos de extremidade conectados diretamente em uma chamada P2P. Neste exemplo, os Serviços de Comunicação criam dois logs de resumo de chamadas (um para cada participantID valor) e quatro logs de diagnóstico de chamadas (um para cada fluxo de mídia).

Para os participantes do cliente de chamada dos Serviços de Comunicação do Azure, há também uma série de logs de operações do cliente de chamada e logs de séries cronológicas de estatísticas de mídia do cliente de chamada. O número exato desses logs depende do tipo de operações SDK que são chamadas e da duração da chamada.

Diagrama mostrando uma chamada P2P dentro do mesmo locatário.

Exemplo: chamada em grupo

O diagrama a seguir representa um exemplo de chamada de grupo com três participantId valores (o que significa três participantes) e um ponto de extremidade do servidor. Vários valores para endpointId podem aparecer em vários participantes - por exemplo, quando eles reingressam em uma chamada do mesmo dispositivo. Os Serviços de Comunicação criam um log de resumo de chamadas para cada participantId valor. Ele cria quatro logs de diagnóstico de chamada: um para cada fluxo de mídia por participantId.

Para participantes do cliente de chamada dos Serviços de Comunicação do Azure, os logs de operações do cliente de chamada são os mesmos que as chamadas P2P. Para cada participante que usa o SDK de chamada, há uma série de logs de operações do cliente de chamada.

Para os participantes do cliente de chamada dos Serviços de Comunicação do Azure, os logs de operações do cliente de chamada e os logs de séries cronológicas de estatísticas de mídia do cliente de chamada são os mesmos que as chamadas P2P. Para cada participante que usa o SDK de chamada, há uma série de logs de operações do cliente de chamada e logs de séries cronológicas de estatísticas de mídia do cliente de chamada.

Diagrama mostrando uma chamada de grupo dentro do mesmo locatário.

Exemplo: chamada P2P entre locatários

O diagrama a seguir representa dois participantes em vários locatários que estão conectados diretamente em uma chamada P2P. Neste exemplo, os Serviços de Comunicação criam um log de resumo de chamadas (um para cada participante) com versões editadas do sistema operacional e do SDK. Os Serviços de Comunicação também criam quatro logs de diagnóstico de chamadas (um para cada fluxo de mídia). Cada log contém dados relacionados ao fluxo de saída do participantID.

Diagrama mostrando uma chamada P2P entre locatários.

Exemplo: chamada de grupo entre locatários

O diagrama a seguir representa um exemplo de chamada de grupo com três participantId valores em vários locatários. Os Serviços de Comunicação criam um log de resumo de chamadas para cada participante com versões editadas do sistema operacional e do SDK. Os Serviços de Comunicação também criam quatro logs de diagnóstico de chamada relacionados a cada participantId valor (um para cada fluxo de mídia).

Diagrama mostrando uma chamada de grupo entre locatários.

Nota

Esta versão suporta apenas logs de diagnóstico de saída. As versões do SO e do SDK associadas ao bot e ao participante podem ser editadas porque os Serviços de Comunicação tratam as identidades dos participantes e dos bots da mesma maneira.

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 de dados no Log Analytics no Azure Monitor são cobrados por meio de 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