Como monitorar a latência do lado do servidor para operações em um contêiner ou conta do Azure Cosmos DB

O Azure Monitor para Azure Cosmos DB fornece uma exibição de métricas para monitorar sua conta e criar painéis. As métricas do Azure Cosmos DB são coletadas por padrão, esse recurso não exige que você habilite ou configure nada explicitamente. As métricas de latência do lado do servidor, direta e por gateway, são usadas para exibir a latência do lado do servidor de uma operação em dois modos de conexão diferentes. Use a métrica de latência do lado do servidor do gateway se a operação de pedido estiver no modo de conectividade do gateway. Use a métrica direta de latência do lado do servidor se a operação de solicitação estiver no modo de conectividade direta. O Azure Cosmos DB fornece SLA inferior a 10 ms para operações de leitura/gravação de ponto com conectividade direta. Para operações de leitura pontual e gravação pontual, os SLAs são calculados conforme detalhado no documento SLA. Para obter mais informações sobre o modo de conexão, consulte o artigo Modos de conectividade.

A tabela a seguir indica qual API oferece suporte a métricas de latência do lado do servidor (Direct versus Gateway):

API Latência direta do lado do servidor ** Gateway de latência no servidor
SQL
MongoDB
Cassandra
Gremlin
Table

Você pode monitorizar as métricas de latência do lado do servidor se observar uma latência excepcionalmente alta para operações pontuais, como:

  • Uma operação GET ou SET com chave de partição e ID
  • Uma operação de leitura ou escrita ou
  • Uma consulta

Você pode consultar o log de diagnóstico para verificar o tamanho dos dados retornados. Se vir uma latência alta sustentada em operações de consulta, deverá verificar o registo de diagnóstico para ver uma taxa de transferência ou RUs/s mais elevada usada. A latência do lado do servidor mostra a quantidade de tempo gasto na infraestrutura de back-end antes que os dados sejam retornados ao cliente. É importante olhar para essa métrica para descartar quaisquer problemas de latência de back-end.

Exibir as métricas de latência do lado do servidor

  1. Inicie sessão no portal Azure.

  2. Selecione Monitor na barra de navegação esquerda e selecione Métricas.

    Painel de Métricas no Azure Monitor

  3. A partir do painel de Métricas, selecione um recurso>, escolha a assinatura e > de recursos. Para o Tipo de recurso, selecione Contas do Azure Cosmos DB, escolha uma das suas contas existentes do Azure Cosmos DB e selecione Aplicar.

    Selecione o escopo da conta para visualizar as métricas

  4. Em seguida, selecione a métrica Server Side Latency Gateway na lista de métricas disponíveis, se sua operação estiver no modo de conectividade de gateway. Selecione a métrica Server Side Latency Direct , se sua operação estiver no modo de conectividade direta. Para saber mais detalhadamente sobre todas as métricas disponíveis nesta lista, consulte o artigo Métricas por categoria . Neste exemplo, vamos selecionar Server Side Latency Gateway e Avg como o valor de agregação. Além desses detalhes, você também pode selecionar o Intervalo de tempo e a granularidade de tempo das métricas. No máximo, você pode visualizar as métricas dos últimos 30 dias. Depois de aplicar o filtro, é apresentado um gráfico com base no filtro. Você pode ver a latência do lado do servidor no modo de conectividade do gateway a cada 5 minutos durante o período selecionado.

    Escolha a métrica Server-Side Latency Gateway no portal do Azure

Filtros para latência do lado do servidor

Você também pode filtrar métricas e obter os gráficos exibidos por um CollectionName, DatabaseName, OperationType, Region e PublicAPIType específicos.

Para filtrar as métricas, selecione Adicionar filtro e escolha a propriedade necessária, como PublicAPIType e selecione o valor Sql. Selecione Aplicar divisão para OperationType. Em seguida, o gráfico exibe a latência do lado do servidor para diferentes operações no modo de conexão de gateway durante o período selecionado. As operações executadas via Stored procedure não são registradas, portanto, não estão disponíveis na métrica OperationType.

As métricas do Server Side Latency Gateway para cada operação são exibidas conforme mostrado na imagem a seguir:

Filtros para métricas de latência do gateway no lado do servidor

Você também pode agrupar as métricas usando a opção Aplicar divisão .

Observação

As solicitações que entram no Azure Cosmos DB nem sempre têm como alvo um contêiner. Por exemplo, você pode criar um banco de dados dentro de uma conta distribuída globalmente e a solicitação ainda será registrada para a métrica de latência do lado do servidor. A solicitação é registrada porque leva tempo para criar um recurso de banco de dados, mas não tem como destino um contêiner. Se vires que o valor da métrica CollectionName é <empty>, isto significa que o destino não é um contentor, mas outro recurso no Azure Cosmos DB.

Como solução alternativa, você pode filtrar proativamente suas métricas para um contêiner específico (CollectionName) para excluir solicitações que não são específicas do contêiner que é o assunto da consulta.

Passos seguintes