Browser monitoring é uma funcionalidade em beta do AppSignal Labs. O
pacote
@appsignal/browser é publicado sob a tag beta no npm, e sua
configuração e API ainda podem mudar entre releases beta. Compartilhe seu
feedback na nossa comunidade no Discord.Como os erros são agrupados
Ocorrências do mesmo tipo de erro na mesma rota se tornam uma issue. Um bug que dispara dez mil vezes é uma coisa para triar, em vez de dez mil notificações. A rota é aquela que o SDK relatou por meio desetRouteTemplate(), ou o caminho da página quando nada foi declarado. É por isso que declarar templates importa: sem eles, /orders/1 e /orders/2 são rotas diferentes, e um bug se fragmenta em uma issue por pedido.
Lendo a lista de issues
Cada issue na lista traz:- A classe do erro e a mensagem, com a rota em que aconteceu.
- A versão em que foi introduzido, que muitas vezes é a forma mais rápida de identificar uma regressão: uma issue nova no seu release mais recente é um release que você provavelmente quer examinar.
- Uma tendência para o período selecionado, para que um pico se leia de forma diferente de um fluxo constante.
- O número total de ocorrências no período.
- Quando foi visto pela última vez.
- Para quem está atribuído.
Filtrando por tempo e versão
- Intervalo de tempo. Predefinições de uma hora a 30 dias, ou um intervalo personalizado.
- Versão. Restrinja a lista aos erros relatados por um único release. Combinado com a coluna de introdução, é assim que você confirma se um deploy é o responsável.
Investigando uma issue
Abrir uma issue mostra um sample do erro: quando aconteceu, a página em que aconteceu e o deploy em que apareceu primeiro, junto com quatro coisas a partir das quais você depura.- A mensagem de erro, completa. É aí que está o significado.
TypeErrorquase nada diz por si só, enquantoFailed to fetch dynamically imported moduleinforma que um chunk carregado sob demanda nunca chegou. - As tags que você definiu com
setTags(), exibidas ao lado do user agent e da revisão, se você definiuappVersion. Alguns nomes de tag fazem mais do que filtrar. Marque comcountry_codeoubrowsere você obtém distribuições de atributos, que mostram quais países ou navegadores veem mais erros. Templates de link transformam uma tag em link, de modo que uma taguser_idpode abrir aquele usuário no seu próprio painel administrativo. - O backtrace, que você pode ler completo ou restrito à sua própria aplicação. Stacks de front-end são muitas vezes quase inteiramente frames de framework. Uma falha de
removeChildvinda do React chega como uma parede de framesreact-domsem nada seu à vista, e a visualização da aplicação é o que corta esse ruído. - A linha do tempo de breadcrumbs que levou ao erro, que geralmente é a parte que te salva.
Triagem e notificações
Issues podem ser atribuídas, receber um estado, ser silenciadas e configuradas com suas próprias configurações de notificação, e o restante das ferramentas de incidentes do AppSignal também funciona com elas. Leia mais em Errors. Como erros de front-end ficam no namespacebrowser (veja namespaces), essas configurações são separadas das do seu back end. Se você está migrando do @appsignal/javascript, note que os erros dele eram relatados em frontend, então as configurações de notificação que você fez lá não são transferidas. Leia mais no guia de migração.