Usar o painel do Cloud Monitoring

Nesta página, descrevemos como usar o painel do Cloud Monitoring para consultar as métricas disponíveis, criar um painel personalizado e definir alertas.

Conferir métricas do Firestore no modo Datastore

Para conferir as diferentes métricas do Firestore no modo Datastore e criar gráficos, use o Metrics Explorer no Cloud Monitoring no console do Google Cloud. Para mais informações sobre como criar gráficos, consulte Criar gráficos com o Metrics Explorer.

Configurar um painel do Cloud Monitoring

No Cloud Monitoring, os painéis personalizados permitem que você exiba de maneira organizada as informações relevantes para você. Por exemplo, é possível criar um painel para exibir as métricas de desempenho e as políticas de alertas do projeto no ambiente de produção.

Para mais informações sobre como configurar um painel personalizado, consulte Gerenciar painel personalizado e Adicionar widgets do painel.

Monitorar taxas de erro

É possível criar um painel de monitoramento para monitorar taxas de erro e garantir a disponibilidade do seu banco de dados. A disponibilidade se refere à taxa em que seu banco de dados responde dentro de um período esperado com um código de status bem-sucedido. O SLA do Firestore no modo Datastore define os detalhes específicos do que é classificado como uma solicitação válida.

A taxa de erro é determinada pela divisão do número de solicitações que resultaram em resposta de erro pelo número total de solicitações enviadas.

É possível criar um painel de exemplo para calcular taxas de erro calculando a proporção A/B para api/request_count de solicitações válidas com códigos de erro 4xx ou 5xx em contraste com o api/request_count de todas as solicitações válidas.

 Entender a disponibilidade e a taxa de erros
Figura 1. Entenda a disponibilidade e a taxa de erros.

Na Figura 1, mostramos como visualizar a proporção da taxa de erro usando as métricas api/request_count no Metrics Explorer.

criar uma política de alertas

O Cloud Monitoring permite criar alertas para notificar você quando ocorre uma alteração em uma condição de métrica. Use esses alertas para receber notificações sobre possíveis problemas antes que eles afetem os usuários.

Para mais informações sobre a criação de alertas, consulte Criar políticas de alertas de limite de métrica.

Considere o exemplo a seguir em que criamos uma política de alerta de latência. A política de alertas verifica a latência p99 em uma janela contínua de cinco minutos. Se a latência p99 permanecer acima de 250 ms por cinco minutos, o alerta será acionado.

Console

  1. No console do Google Cloud, acesse a página Monitoramento e selecione  Alertas.

    Acessar Monitoring

  2. Selecione Criar política.

  3. Selecione a métrica Latências da solicitação no recurso API consumida.

  4. Adicione um filtro de serviço para datastore.googleapis.com. A métrica api/request_latencies é monitorada durante a janela contínua de 5 minutos.

    Selecione a métrica api/request_latencies para criar o acionador.
    Figura 2. Selecione a métrica api/request_latencies para criar o acionador.
  5. Clique em Próxima para configurar o gatilho.

  6. Selecione Tipos de condição como Limite.

    Uma condição limite é definida como um valor limite de 250 ms. Um alerta é acionado quando o valor de latência p99 permanece o mesmo durante todo o período da janela contínua (5 min).

    Adicione o limite para a métrica.
    Figura 3. Adicione o limite para a métrica.
  7. Defina o Valor do limite como 250.

  8. Clique em Próxima para configurar as notificações.

  9. Defina o nome da política de alertas e clique em Próxima.

  10. Revise as configurações de alerta e clique em Criar política.

MQL

É possível implementar a mesma política de alertas de latência usando uma consulta da linguagem de consulta do Monitoring (MQL, na sigla em inglês). Para mais exemplos de como usar o MQL, consulte Exemplos de consultas MQL.

      fetch consumed_api
      | metric 'serviceruntime.googleapis.com/api/request_latencies'
      | filter (resource.service == 'firestore.googleapis.com')
      | group_by 5m,
          [value_request_latencies_percentile:
            percentile(value.request_latencies, 99)]
      | every 5m
      | condition val() > 0.25 's'