Usar o painel do Cloud Monitoring
Esta página descreve como usar um painel do Cloud Monitoring para conferir as métricas disponíveis, criar um painel personalizado e definir alertas.
Conferir as métricas do Firestore
Para conferir as diferentes métricas do Firestore e criar gráficos, use uma destas opções:
A página Monitoramento na seção do Firestore no console do Google Cloud. Esta página inclui um painel de monitoramento predefinido. Também é possível criar até um painel personalizado. Para acessar a página Monitoramento de um banco de dados, siga estas etapas:
No console do Google Cloud, abra a página Bancos de Dados do Firestore.
Selecione um banco de dados na lista.
No menu de navegação, clique em Monitoring para abrir um painel.
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.
Ver o painel do Cloud Monitoring
No Cloud Monitoring, os painéis personalizados permitem mostrar informações relevantes de maneira organizada. Por exemplo, você pode criar um painel para mostrar as métricas de desempenho e as políticas de alerta do projeto no ambiente de produção.
Para mais informações sobre como configurar um painel personalizado, consulte Gerenciar painel personalizado e Adicionar widgets de painel.
Monitorar as taxas de erro
É possível criar um painel de monitoramento para monitorar as taxas de erro e garantir a disponibilidade do banco de dados. A disponibilidade se refere à taxa em que o banco de dados responde dentro de um período esperado com um código de status. O SLA do Firestore define os detalhes específicos do que é classificado como uma solicitação válida.
A taxa de erros é determinada dividindo o número de solicitações que resultaram em uma resposta de erro pelo número total de solicitações enviadas.
É possível criar um painel de exemplo para calcular as 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 a api/request_count
de todas as solicitações válidas.
Na Figura 1, você pode conferir como visualizar a proporção da taxa de erros usando as métricas api/request_count no Metrics Explorer.
Criar uma política de alertas
Com o Cloud Monitoring, você pode criar alertas para receber notificações quando ocorrer uma mudança em uma condição de métrica. Você pode usar esses alertas para receber notificações sobre possíveis problemas antes que eles afetem os usuários.
Para mais informações sobre como criar 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 do P99 em uma janela contínua de cinco minutos. Se a latência do p99 permanecer acima de 250 ms por 5 minutos, o alerta será acionado.
Console
No console do Google Cloud, acesse a página Monitoramento e selecione notifications Alertas.
Selecione Criar política.
Selecione a métrica Latências de solicitação no recurso API utilizada.
Adicione um filtro de serviço para
firestore.googleapis.com
para bancos de dados nativos do Firestore.Clique em Próxima para configurar o acionador.
Selecione Tipos de condição como Limite.
Uma condição de limite é definida como um valor de 250 ms. Um alerta é acionado quando o valor da latência p99 permanece o mesmo durante todo o período da janela contínua (5 minutos).
Defina o Valor do limite como 250.
Clique em Próxima para configurar as notificações.
Defina o nome da política de alertas e clique em Próxima.
Revise as configurações de alerta e clique em Criar política.
MQL
É possível implementar a mesma política de alerta de latência usando uma consulta de linguagem de consulta de monitoramento (MQL). Para mais exemplos de uso do 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'