O recurso Monitoramento de desempenho coleta traces para ajudar você a monitorar o desempenho do app. Um trace é um relatório de dados de desempenho capturado entre dois momentos no app.
É possível criar seus próprios traces para monitorar dados de desempenho associados a um código específico no app. Com um trace de código personalizado, é possível medir o tempo que o app leva para concluir uma tarefa ou um conjunto de tarefas específicas, por exemplo, carregar um conjunto de imagens ou consultar o banco de dados.
A métrica padrão de um trace de código personalizado é a "duração" dele (o tempo entre os pontos inicial e de interrupção do trace), mas também é possível adicionar métricas personalizadas.
No código, defina o início e o fim de um trace de código personalizado usando as APIs fornecidas pelo SDK do Monitoramento de desempenho.
Os traces de código personalizados podem ser iniciados a qualquer momento depois de criados e são thread-safe.
Como a métrica padrão coletada para esses traces é "duração", às vezes eles são chamados de "traces de duração".
É possível visualizar dados desses traces na subguia Traces personalizados da tabela de traces, que está na parte inferior do painel Desempenho. Saiba mais sobre como usar o console mais adiante nesta página.
Atributos padrão e atributos e métricas personalizados
Em relação a traces de código personalizados, o Monitoramento de desempenho registra automaticamente os atributos padrão (metadados comuns, como versão do app, país, dispositivo etc.) para que você filtre os dados do trace no Console do Firebase. Também é possível adicionar e monitorar atributos personalizados, como fases de jogos ou propriedades de usuários.
É possível configurar ainda mais um trace de código personalizado para registrar métricas personalizadas de eventos relacionados ao desempenho que ocorrem no escopo do trace. Por exemplo, é possível criar uma métrica personalizada para o número de ausências e ocorrências em cache ou para o número de vezes que a interface não responde durante um período considerável.
Os atributos e as métricas personalizados são exibidos no Console do Firebase ao lado dos atributos e da métrica padrão do trace.
Adicionar traces de código personalizados
Use a API Trace do Monitoramento de desempenho para adicionar traces de código personalizados e, assim, monitorar um código de aplicativo específico.
Observações:
- Um app pode ter vários traces de código personalizados.
- Mais de um trace de código personalizado pode ser executado ao mesmo tempo.
- Os nomes dos traces de código personalizados precisam atender aos seguintes requisitos:
não ter espaço em branco no início ou no fim, não ter caractere sublinhado (
_
) no início e ter, no máximo, 100 caracteres. - Os traces de código personalizados aceitam a adição de métricas personalizadas e atributos personalizados.
Para iniciar e interromper um trace de código personalizado, junte o código que você quer rastrear com linhas de código semelhantes às seguintes:
Trace customTrace = FirebasePerformance.instance.newTrace('custom-trace');
await customTrace.start();
// Code you want to trace
await customTrace.stop();
Adicionar métricas personalizadas aos traces de código personalizados
Use a API Trace do Monitoramento de desempenho para adicionar métricas personalizadas aos traces de código personalizados.
Observações:
- Os nomes das métricas personalizadas precisam atender aos seguintes requisitos:
não ter espaço em branco no início ou no fim, não ter caractere sublinhado no início (
_
) e ter, no máximo, 100 caracteres. - Cada trace de código personalizado pode registrar até 32 métricas, incluindo a métrica Duração padrão.
Para incluir uma métrica personalizada, adicione uma linha de código semelhante às seguintes toda vez que o evento ocorrer. Por exemplo, essa métrica personalizada conta eventos relacionados ao desempenho que ocorrem no app, como ocorrências em 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();
Criar atributos personalizados para traces de código personalizados
Para usar atributos personalizados, adicione códigos ao app que definam o atributo e o associem a um trace de código personalizado específico. É possível definir o atributo personalizado a qualquer momento entre o início e a interrupção do trace.
Observações:
Os nomes dos atributos personalizados precisam atender aos seguintes requisitos: não ter espaço em branco no início ou no fim, não ter caractere sublinhado no início (
_
) e ter, no máximo, 32 caracteres.Cada trace de código personalizado pode registrar até cinco atributos personalizados.
Não use atributos personalizados que contenham informações que identifiquem um indivíduo para o Google.
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();
Acompanhar, visualizar e filtrar dados de desempenho
Acompanhar métricas específicas no painel
Para saber qual é a tendência das suas principais métricas, adicione-as ao seu quadro de métricas na parte superior do painel Desempenho. É possível identificar rapidamente as regressões conferindo as mudanças semanais ou verificar se as mudanças recentes no código melhoram o desempenho.
Para adicionar uma métrica ao quadro, acesse o painel Desempenho no Console do Firebase e clique na guia Painel. Clique em um card de métricas vazio e selecione uma métrica para adicionar ao quadro. Clique nas reticências verticais (⋮) em um card de métricas preenchido para 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, em forma de gráfico e como uma mudança percentual numérica.
Saiba mais sobre como usar o painel.
Visualizar traces e os respectivos dados
Para visualizar os traces, acesse o painel Desempenho no Console do Firebase, role para baixo até a tabela de traces e clique na subguia adequada. A tabela precisa de algumas das principais métricas para cada trace. É possível classificar a lista pela mudança percentual de uma métrica específica.
Se você clicar no nome de um trace na tabela de traces, vai ser possível clicar em várias telas para conhecer o trace e detalhar as métricas de interesse. Na maioria das páginas, também é possível usar o botão Filtrar (no canto superior à esquerda da tela) para filtrar os dados por atributo. Por exemplo:
- Filtre por Versão do app para visualizar dados de uma versão anterior ou do último lançamento.
- Filtre por Dispositivo para saber como os dispositivos mais antigos lidam com o app.
- Filtre por País para garantir que o local do banco de dados não está afetando uma região específica.
Saiba mais sobre como visualizar dados dos traces.
Próximas etapas
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 estejam prejudicando o desempenho do seu app. Por exemplo, configure um alerta por e-mail que será enviado para sua equipe quando a duração de um trace de código personalizado e específico exceder um limite definido por você.