Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Monitorar a atividade do Cloud Firestore

Veja nesta página como monitorar o uso do Cloud Firestore e detectar possíveis problemas no seu app. Analisar o uso do seu app também pode ajudar você a ter uma ideia do que esperar na sua fatura. Além disso, se algo parecer fora do normal, ter uma visão clara das operações do seu banco de dados pode ser uma ferramenta útil para a solução de problemas.

Painel de uso

O Console do Google Cloud Platform e o Console do Firebase incluem um painel de uso do Cloud Firestore que mostra leituras, gravações e exclusões de documentos ao longo do tempo.

Console do GCP

Acessar a página de uso do Cloud Firestore (Console do GCP)

O painel de uso do Cloud Firestore no Console do GCP.

Controle de acesso

O painel de uso precisa da permissão monitoring.timeSeries.list do Cloud IAM. Os papéis de proprietário, editor e visualizador do projeto concedem essa permissão. Você também pode concedê-la por meio de um papel do Cloud Monitoring ou um papel personalizado.

Console do Firebase

Acessar a página de uso do Cloud Firestore (Console do Firebase)

O painel de uso do Cloud Firestore no Console do Firebase.

Painel de uso e relatórios de faturamento

Os painéis de uso do Cloud Firestore nos consoles do Firebase e do Cloud fornecem uma estimativa de uso. Eles podem ajudar você a identificar picos de uso. No entanto, o painel não oferece uma visualização exata das operações faturadas. Geralmente, o uso faturado é maior que o valor exibido no painel. Em todos os casos de discrepância, o relatório de faturamento tem prioridade sobre o painel de uso.

Estas são algumas das operações que causam discrepâncias entre o painel e o uso faturado:

  • Operações de importação e exportação. As leituras e gravações realizadas por essas operações não aparecem no painel de uso.
  • Gravações de ambiente autônomo. As operações que não geram uma mudança no banco de dados, como uma atualização que não altera os valores do campo ou uma gravação em um documento excluído, são contabilizadas como operações faturadas. No entanto, o painel de uso não inclui essas operações.
  • Gravações recolhidas. Nos casos em que há várias gravações no mesmo documento em uma sequência rápida, o painel de uso pode agrupar diversas gravações e contabilizá-las como apenas uma. No uso de faturamento, cada gravação continua sendo contada separadamente.

    O painel de uso também recolhe gravações em transformações de campo, como carimbos de data/hora do servidor, incrementos numéricos e operações de união de matrizes. Para as transformações de campo, o painel pode contar várias operações como apenas uma.

  • Consultas que não retornam resultados. O custo de consultas sem resultados é o de uma operação de leitura. Esse uso é faturado, mas não aparece no painel.

Uso da regra de segurança

Além disso, o Console do Firebase fornece um painel de avaliação das Regras de segurança, uma visualização rápida e útil das invocações de regras. É possível complementar esse painel com análises detalhadas no Cloud Monitoring.

Acessar a página "Regras"

Painel de monitoramento de regras
do Cloud Firestore no Console do Firebase.

Cotas diárias

Quando você cria um projeto do Firebase, também cria um no Google Cloud. A página Cotas do App Engine no Console do GCP acompanha as informações de uso diárias do Cloud Firestore, incluindo leituras, gravações, gravações de índice, exclusões, dados armazenados e saída de rede.

Acessar a página "Cotas"

Uso do Cloud Firestore na página "Cotas do App Engine".

Cloud Monitoring

O Cloud Monitoring coleta métricas, eventos e metadados de produtos do Google Cloud. O painel de uso no Console do Cloud Firestore informa os mesmos dados de métricas. Para configurar alertas de uso e painéis personalizados, use o Cloud Monitoring.

O Cloud Monitoring inclui as seguintes métricas do Cloud Firestore:

Nome da métrica Descrição
Leituras de documento

O número de leituras de documentos bem-sucedidas. É possível separar essa métrica pelo tipo de leitura: PESQUISA ou CONSULTA.

Essa métrica não inclui leituras de operações de exportação gerenciadas.

Gravações de documento

O número de gravações de documentos bem-sucedidas. É possível separar a métrica pelo tipo de gravação: CRIAR ou ATUALIZAR.

Essa métrica não inclui gravações de operações de importação gerenciadas.

Exclusões de documento O número de exclusões de documentos bem-sucedidas.
Conexões ativas

O número de conexões ativas no seu banco de dados.

Cada SDK para Web e dispositivos móveis ativo mantém uma única conexão, que pode ser compartilhada entre vários listeners de snapshots. As bibliotecas de cliente do servidor criam uma conexão por listener.

Listeners de snapshots

O número de listeners de snapshots em todas as conexões ativas.

Avaliações de regra

O número de avaliações das regras do Cloud Firestore realizadas em resposta às solicitações de gravação ou leitura. É possível analisar essa métrica por meio do resultado da solicitação (PERMITIR, NEGAR ou ERRO).

Uso de atualizações em tempo real

Use as métricas de conexões ativas e listeners de snapshots para medir o uso de atualizações em tempo real.

Digamos que um usuário abra o aplicativo no telefone. O aplicativo se conecta ao Cloud Firestore e assina 10 consultas. Isso aumenta as métricas em 1 conexão ativa e 10 listeners de snapshots.

Taxa de amostra

As amostras das métricas do Cloud Firestore aparecem a cada minuto, mas as atualizações podem levar até quatro minutos para serem exibidas nos painéis.

Ao usar essas métricas, é possível configurar um painel do Cloud Firestore como o exemplo abaixo:

Uso do Cloud Firestore em um painel do Cloud Monitoring.

Conclua as etapas abaixo para começar a monitorar o Cloud Firestore com o Cloud Monitoring.

Criar um espaço de trabalho do Cloud Monitoring

Para monitorar o Cloud Firestore com o Cloud Monitoring, você precisa configurar um espaço de trabalho para seu projeto. Um espaço de trabalho organiza informações de monitoramento de um ou mais projetos. Após a configuração, é possível criar painéis personalizados e políticas de alertas.

  1. Abrir a página do Cloud Monitoring

    Se o projeto já faz parte de um espaço de trabalho, a página do Cloud Monitoring é aberta. Caso contrário, selecione um espaço de trabalho para seu projeto.

  2. Selecione a opção Novo espaço de trabalho ou então um espaço de trabalho existente.

  3. Clique em Adicionar. Após a criação do espaço de trabalho, a página do Cloud Monitoring é aberta.

Criar um painel e adicionar um gráfico

Exiba as métricas do Cloud Firestore coletadas do Cloud Monitoring nos seus próprios gráficos e painéis.

Antes de continuar, verifique se o projeto faz parte de um espaço de trabalho do Cloud Monitoring.

  1. Na página do Cloud Monitoring, abra o espaço de trabalho e acesse a página Painéis.

    Acessar a página Painéis

  2. Clique em Criar painel e insira um nome para o painel.

  3. No canto superior à direita, clique em Adicionar gráfico.

  4. Na janela Adicionar gráfico, insira um título para o gráfico. Clique na guia Métrica.

  5. No campo Encontrar tipo de recurso e métrica, insira Cloud Firestore. No menu suspenso preenchido automaticamente, selecione uma das métricas do Cloud Firestore.

  6. Para adicionar mais métricas ao mesmo gráfico, clique em Adicionar métrica e repita a etapa anterior.

  7. Se preferir, personalize seu gráfico conforme necessário. Por exemplo, no campo Filtro, clique em + Adicionar um filtro. Role para baixo e selecione um valor ou intervalo para a métrica na qual você quer filtrar o gráfico.

  8. Clique em Salvar.

Saiba mais sobre os gráficos do Cloud Monitoring em Como trabalhar com gráficos.

Crie uma política de alertas

Crie uma política de alertas com base nas métricas do Cloud Firestore. Basta seguir as etapas abaixo para fazer esse processo, que enviará e-mails para você sempre que uma métrica específica do Cloud Firestore atingir um determinado limite.

Antes de continuar, verifique se o projeto faz parte de um espaço de trabalho do Cloud Monitoring.

  1. Na página do Cloud Monitoring, abra o espaço de trabalho e acesse a página Alertas.

    Acessar a página "Criar nova política de alertas"

  2. Clique em Criar política.

  3. Insira um nome para sua política de alertas.

  4. Adicione uma condição de alerta com base em uma das métricas do Cloud Firestore. Clique em Adicionar condição.

  5. Selecione um Objetivo. No campo Encontrar tipo de recurso e métrica, insira Cloud Firestore. No menu suspenso preenchido automaticamente, selecione uma das métricas do Cloud Firestore.

  6. Em Acionadores de política, use os campos suspensos para definir sua condição de alerta.

  7. Adicione um canal de notificação à sua política de alertas. Em Notificações, clique em Adicionar canal de notificação. Selecione E-mail no menu suspenso.

  8. Digite seu e-mail no campo Endereço de e-mail. Clique em Adicionar.

  9. Como opção, preencha o campo de documentação para incluir outras informações na sua notificação por email.

  10. Clique em Salvar.

Se o uso do Cloud Firestore exceder o limite configurado, você receberá um alerta por e-mail: Um exemplo de e-mail de alerta do Cloud Firestore.

Para saber mais sobre políticas de alerta, consulte Introdução a alertas.

A seguir