O Monitoramento de Desempenho coleta rastreamentos para ajudar você a monitorar o desempenho do seu aplicativo. Um rastreamento é um relatório de dados de desempenho capturados entre dois momentos no seu aplicativo.
Você pode criar seus próprios rastreamentos para monitorar dados de desempenho associados a códigos específicos em seu aplicativo. Com um rastreamento de código personalizado , você pode medir quanto tempo leva para seu aplicativo concluir uma tarefa específica ou um conjunto de tarefas, por exemplo, carregar um conjunto de imagens ou consultar seu banco de dados.
A métrica padrão para um rastreamento de código personalizado é sua "duração" (o tempo entre os pontos inicial e final do rastreamento), mas você também pode adicionar métricas personalizadas .
No seu código, você define o início e o fim de um rastreamento de código personalizado usando as APIs fornecidas pelo SDK do Performance Monitoring.
Os rastreamentos de código personalizados podem ser iniciados a qualquer momento após terem sido criados e são thread-safe.
Como a métrica padrão coletada para esses rastreamentos é "duração", eles às vezes são chamados de "rastreamentos de duração".
Você pode visualizar os dados desses rastreamentos na subguia Rastreamentos personalizados da tabela de rastreamentos, que fica na parte inferior do painel Desempenho (saiba mais sobre como usar o console posteriormente nesta página).
Atributos padrão, atributos customizados e métricas customizadas
Para rastreamentos de código personalizados, o Monitoramento de desempenho registra automaticamente atributos padrão (metadados comuns, como versão do aplicativo, país, dispositivo etc.) para que você possa filtrar os dados do rastreamento no Console do Firebase. Você também pode adicionar e monitorar atributos personalizados (como nível de jogo ou propriedades do usuário).
Você também pode configurar um rastreamento de código personalizado para registrar métricas personalizadas para eventos relacionados ao desempenho que ocorrem dentro do escopo do rastreamento. Por exemplo, você pode criar uma métrica personalizada para o número de acertos e erros do cache ou o número de vezes que a UI deixa de responder por um período perceptível.
Atributos e métricas personalizados são exibidos no console do Firebase junto com os atributos padrão e a métrica padrão para o rastreamento.
Adicionar rastreamentos de código personalizados
Use a API Performance Monitoring Trace para adicionar rastreamentos de código customizados para monitorar o código do aplicativo específico.
Observe o seguinte:
- Um aplicativo pode ter vários rastreamentos de código personalizados.
- Mais de um rastreamento de código personalizado pode ser executado ao mesmo tempo.
- Os nomes para rastreamentos de código personalizados devem atender aos seguintes requisitos: nenhum espaço em branco à esquerda ou à direita, nenhum caractere de sublinhado (
_
) à esquerda e o comprimento máximo é de 100 caracteres. - Os rastreamentos de código personalizados oferecem suporte à adição de métricas e atributos personalizados .
Para iniciar e interromper um rastreamento de código personalizado, envolva o código que você deseja rastrear com um código semelhante ao seguinte:
Trace customTrace = FirebasePerformance.instance.newTrace('custom-trace');
await customTrace.start();
// Code you want to trace
await customTrace.stop();
Adicione métricas personalizadas a rastreamentos de código personalizados
Use a API Performance Monitoring Trace para adicionar métricas personalizadas a rastreamentos de código personalizados.
Observe o seguinte:
- Os nomes para métricas personalizadas devem atender aos seguintes requisitos: nenhum espaço em branco à esquerda ou à direita, nenhum caractere de sublinhado (
_
) à esquerda e o comprimento máximo é de 100 caracteres. - Cada rastreamento de código personalizado pode registrar até 32 métricas (incluindo a métrica Duração padrão).
Para adicionar uma métrica personalizada, adicione uma linha de código semelhante à seguinte sempre que o evento ocorrer. Por exemplo, essa métrica personalizada conta eventos relacionados ao desempenho que ocorrem no seu aplicativo, como ocorrências de cache ou novas tentativas.
Trace customTrace = FirebasePerformance.instance.newTrace("custom-trace");
await customTrace.start();
// Code you want to trace
customTrace.incrementMetric("metric-name", 1);
// More code
await customTrace.stop();
Crie atributos personalizados para rastreamentos de código personalizados
Para usar atributos customizados, adicione código ao seu aplicativo que defina o atributo e o associe a um rastreamento de código customizado específico. Você pode definir o atributo personalizado a qualquer momento entre o início e o término do rastreamento.
Observe o seguinte:
Os nomes para atributos customizados devem atender aos seguintes requisitos: nenhum espaço em branco à esquerda ou à direita, nenhum caractere de sublinhado (
_
) à esquerda e o comprimento máximo é de 32 caracteres.Cada rastreamento de código customizado pode registrar até cinco atributos customizados.
Não use atributos personalizados que contenham informações que identifiquem pessoalmente um indivíduo para o Google.
O Monitoramento de Desempenho não coleta nenhuma informação de identificação pessoal (PII), como nomes, endereços de e-mail ou números de telefone. Os desenvolvedores podem coletar dados adicionais usando o Monitoramento de Desempenho criando atributos customizados em rastreamentos de código customizados. Esses dados coletados por meio do Monitoramento de desempenho não devem conter informações que identifiquem pessoalmente um indivíduo para o Google.
Aqui está um exemplo de mensagem de log que não contém informações de identificação pessoal:
customTrace.putAttribute("experiment", "A"); // OK
Aqui está um exemplo que contém informações de identificação pessoal (não use esse tipo de atributo personalizado em seu aplicativo):
customTrace.putAttribute(("email", user.getEmailAddress()); // Don't do this!
Os dados que expõem qualquer informação de identificação pessoal estão sujeitos a exclusão sem aviso prévio.
Trace trace = FirebasePerformance.instance.newTrace("test_trace");
// Update scenario.
trace.putAttribute("experiment", "A");
// Reading scenario.
String? experimentValue = trace.getAttribute("experiment");
// Delete scenario.
trace.removeAttribute("experiment");
// Read attributes.
Map<String, String> traceAttributes = trace.getAttributes();
Rastreie, visualize e filtre dados de desempenho
Acompanhe métricas específicas em seu painel
Para saber a tendência de suas principais métricas, adicione-as ao quadro de métricas na parte superior do painel Desempenho . Você pode identificar regressões rapidamente vendo as alterações semanais ou verificando se as alterações recentes no seu código estão melhorando o desempenho.
Para adicionar uma métrica ao seu quadro de métricas, acesse o painel de desempenho no console do Firebase e clique na guia Painel . Clique em um cartão de métrica vazio e selecione uma métrica existente para adicionar ao seu quadro. Clique nas reticências verticais ( ⋮ ) em um cartão de métrica preenchido para obter mais opções, como substituir ou remover uma métrica.
O quadro de métricas mostra os dados de métricas coletados ao longo do tempo, tanto em formato gráfico quanto como uma variação percentual numérica.
Saiba mais sobre como usar o painel .
Ver rastreamentos e seus dados
Para visualizar seus rastreamentos, acesse o painel Desempenho no console do Firebase, role para baixo até a tabela de rastreamentos e clique na subguia apropriada. A tabela exibe algumas métricas principais para cada rastreamento e você pode até classificar a lista pela alteração percentual de uma métrica específica.
Se você clicar em um nome de rastreamento na tabela de rastreamentos, poderá clicar em várias telas para explorar o rastreamento e detalhar as métricas de interesse. Na maioria das páginas, você pode usar o botão Filtrar (canto superior esquerdo da tela) para filtrar os dados por atributo, por exemplo:
- Filtre por versão do aplicativo para visualizar dados sobre uma versão anterior ou mais recente
- Filtre por dispositivo para saber como os dispositivos mais antigos lidam com seu aplicativo
- Filtre por país para garantir que a localização do seu banco de dados não esteja afetando uma região específica
Saiba mais sobre como visualizar dados para seus rastreamentos .
Próximos passos
Saiba mais sobre como usar atributos para examinar dados de desempenho.
Saiba mais sobre como rastrear problemas de desempenho no Console do Firebase.
Configure alertas para alterações de código que estão prejudicando o desempenho do seu aplicativo. Por exemplo, você pode configurar um alerta por email para sua equipe se a duração de um rastreamento de código personalizado específico exceder um limite definido por você.