Personalizar a agregação de dados de solicitações de rede

O Firebase Performance Monitoring agrega dados automaticamente de solicitações de rede semelhantes para ajudar a entender as tendências no desempenho das solicitações de rede.

Às vezes, é necessário personalizar como o Firebase agrega dados específicos de solicitações de rede para um melhor atendimento aos casos de uso do seu app. É possível fazer isso de duas maneiras: agregar dados em padrões de URL personalizados e personalizar como a taxa de sucesso é calculada.

Agregar dados em padrões de URL personalizados

Para cada solicitação, o Firebase verifica se o URL da solicitação de rede corresponde a um padrão de URL. Se esse URL de solicitação corresponder a um padrão de URL, o Firebase agregará automaticamente os dados da solicitação no padrão do URL.

É possível criar padrões de URL personalizados para monitorar padrões de URL específicos que o Firebase não captura com a própria correspondência automática de padrões de URL. Por exemplo, é possível usar um padrão de URL personalizado para resolver problemas de um URL específico ou monitorar um conjunto específico de URLs ao longo do tempo.

O Firebase exibe todos os padrões dos URLs, incluindo aqueles personalizados, e respectivos dados agregados na subguia Solicitações de rede da tabela de traces, que está na parte inferior do painel Desempenho do console do Firebase.

Como funciona a correspondência com padrões de URL personalizados?

O Firebase tenta associar URLs de solicitações a qualquer padrão de URL personalizado configurado antes de recorrer à correspondência automática de padrões de URL. O Firebase agrega os dados das solicitações no padrão de URL personalizado para qualquer solicitação correspondente a um padrão.

Se o URL de uma solicitação corresponder a mais de um padrão de URL personalizado, o Firebase associará a solicitação com o mais específico, de acordo com a seguinte ordem de especificidade: texto simples > * > ** da esquerda para a direita no caminho . Por exemplo, uma solicitação para example.com/books/dog corresponde a dois padrões de URL personalizados:

  • example.com/books/*
  • example.com/*/dog

No entanto, o padrão example.com/books/* é o padrão de URL correspondente mais específico, porque o segmento books mais à esquerda em example.com/books/* tem precedência sobre o segmento * mais à esquerda em example.com/*/dog.

Ao criar um novo padrão de URL personalizado, esteja ciente do seguinte:

  • As correspondências e os dados agregados de solicitações anteriores não são afetados pela criação de um novo padrão de URL personalizado. O Firebase não agrega novamente dados de solicitações de forma retroativa.

  • Apenas solicitações futuras são afetadas pela criação de um novo padrão de URL personalizado. Talvez seja necessário aguardar até 12 horas para que o Performance Monitoring colete e agregue dados em um novo padrão do URL personalizado.

Criar um padrão de URL personalizado

É possível criar um padrão do URL personalizado acessando a subguia Solicitações de rede na tabela de traces, que está na parte inferior do painel Desempenho do console do Firebase.

O membro do projeto precisa ser um proprietário ou editor para criar um novo padrão de URL personalizado. No entanto, todos os membros do projeto podem visualizar padrões de URL personalizados e os dados agregados.

É possível criar até 400 padrões de URL personalizados por aplicativo e até 100 padrões de URL personalizados por domínio para esse aplicativo.

Para criar um padrão de URL personalizado, comece com o nome do host, seguido por segmentos de caminho. O nome do host precisa incluir um domínio válido e pode incluir o subdomínio. Use a seguinte sintaxe do segmento de caminho para criar um padrão que possa corresponder aos URLs.

  • texto simples: corresponde a uma string exata
  • *: corresponde ao primeiro segmento de subdomínio ou a qualquer string em um único segmento de caminho
  • **: corresponde a um sufixo de caminho arbitrário

A tabela a seguir descreve algumas possíveis correspondências com padrões de URL personalizados:

Para corresponder a... Crie um padrão de URL personalizado como... Exemplos de correspondências com este padrão de URL
Um URL exato example.com/foo/baz example.com/foo/baz
Qualquer segmento de caminho único (*) example.com/*/baz example.com/foo/baz
example.com/bar/baz
example.com/*/*/baz example.com/foo/bar/baz
example.com/bah/qux/baz
example.com/foo/* example.com/foo/baz
example.com/foo/bar

Observação: esse padrão não vai corresponder a example.com/foo.

Um sufixo de caminho arbitrário (**) example.com/foo/** example.com/foo
example.com/foo/baz
example.com/foo/baz/more/segments
subdomain.example.com/foo.bar/** subdomain.example.com/foo.bar
subdomain.example.com/foo.bar/baz
subdomain.example.com/foo.bar/baz/more/segments
O primeiro segmento de subdomínio (*) *.example.com/foo bar.example.com/foo
baz.example.com/foo

Visualizar padrões de URL personalizados e seus dados

O Firebase exibe todos os padrões dos URLs, incluindo aqueles personalizados, e respectivos dados agregados na subguia Solicitações de rede da tabela de traces, que está na parte inferior do painel Desempenho do console do Firebase.

Para visualizar apenas padrões de URL personalizados, selecione Padrões personalizados no menu suspenso da subguia Solicitações de rede da tabela de traces. Se um padrão de URL personalizado não tiver dados agregados, ele só aparecerá nessa lista.

Quando o período de retenção de dados termina para os dados agregados em um padrão de URL, o Firebase exclui esses dados. Se todos os dados agregados em um padrão do URL personalizado expirarem, o Firebase não excluirá esse padrão do console do Firebase. Em vez disso, o Firebase continuará a listar padrões dos URLs personalizados "vazios" na lista Padrões personalizados da subguia Solicitações de rede da tabela de traces.

Remover um padrão de URL personalizado

Você pode remover padrões de URL personalizados do seu projeto. Não é possível remover um padrão de URL automático.

  1. No painel Desempenho, role para baixo até a tabela de traces e selecione a subguia Solicitações de rede.

  2. Selecione Padrões personalizados no menu suspenso da subguia Solicitações de rede.

  3. Passe o cursor sobre a linha do padrão de URL personalizado que você quer remover.

  4. Clique em na extremidade direita da linha, selecione Remover padrão personalizado e confirme a remoção na caixa de diálogo.

Ao remover um padrão de URL personalizado, esteja ciente do seguinte:

  • Todas as solicitações futuras são associadas ao próximo padrão de URL personalizado mais específico correspondente. Se o Firebase não encontrar padrões de URL personalizados correspondentes, ele recorrerá à correspondência automática de padrões de URL.

  • As correspondências e os dados agregados de solicitações anteriores não são afetados pela remoção de um padrão de URL personalizado.

    Ainda é possível acessar um padrão de URL personalizado removido e os dados agregados na subguia Solicitações de rede (com a opção Todas as solicitações de rede selecionada) até o fim da período de armazenamento de dados aplicável. Quando todos os dados agregados no padrão de URL personalizado removido expirarem, o Firebase excluirá o padrão.

  • A subguia Solicitações de rede (com a opção Padrões personalizados selecionada) não lista padrões de URL removidos.

Próximas etapas

  • Configure alertas para solicitações de rede que estejam afetando o desempenho do app. Por exemplo, configure um alerta por e-mail para sua equipe que será enviado quando o tempo de resposta para um padrão de URL específico exceder um limite definido por você.

Personalizar como a taxa de sucesso é calculada

A taxa de sucesso é uma das métricas monitoradas pelo Firebase em cada solicitação de rede. Ela é a porcentagem de respostas bem-sucedidas em relação ao total de respostas e ajuda a medir as falhas na rede e no servidor.

Em especial, o Firebase conta automaticamente como respostas bem-sucedidas as solicitações de rede com um código de resposta no intervalo entre 100 e 399.

É possível personalizar o cálculo da taxa de sucesso contando códigos de erro específicos como "respostas bem-sucedidas", além dos códigos de resposta que o Firebase conta automaticamente.

Por exemplo, caso seu app tenha uma API de endpoint de pesquisa, é possível contar as respostas 404 como "bem-sucedidas", já que elas são esperadas para um endpoint desse tipo. Vamos supor que há 100 amostras para esse endpoint a cada hora, sendo que 60 delas são respostas 200 e as outras 40 são respostas 404. Antes de você configurar a taxa de sucesso, ela é 60%. Depois de configurar para contar as respostas 404 como bem-sucedidas, ela vai ser 100%.

Configurar o cálculo da taxa de sucesso

Para configurar o cálculo da taxa de sucesso de um padrão do URL da rede, é preciso ter a permissão firebaseperformance.config.update. Os papéis a seguir incluem essa permissão necessária por padrão: Administrador de desempenho do Firebase, Administrador de qualidade do Firebase, Administrador do Firebase e Proprietário/editor do projeto.

  1. Acesse a guia Painel do Performance Monitoring no console do Firebase e selecione o app em que você quer configurar um cálculo de taxa de sucesso.
  2. Role até a tabela de traces na parte de baixo da tela e selecione a guia Solicitações de rede.
  3. Encontre o padrão do URL para o qual você quer configurar o cálculo da taxa de sucesso.
  4. À direita da linha, abra o menu flutuante () e selecione Configurar taxa de sucesso.
  5. Siga as instruções na tela para selecionar os códigos de resposta que você quer contar como opções bem-sucedidas.