Sentry-javascript: Adicione texto a elementos em breadcrumbs ui.click

Criado em 12 mai. 2016  ·  18Comentários  ·  Fonte: getsentry/sentry-javascript

Isso tornaria as coisas mais fáceis, especialmente para aplicativos em que os nomes das classes não revelam muito.

Algo na linha de:

 div > button.btn.btn-lg.btn-primary "Purchase"

Se o elemento contiver muito texto, ele poderá ser truncado.

Comentários muito úteis

Só queria adicionar - estou usando react & styled-components para que meus nomes de classe sejam gerados automaticamente, seria ótimo ter mais contexto (sem ter que manualmente captureBreadcrumb ):

screen shot 2018-07-02 at 4 36 14 pm

Todos 18 comentários

Então, isso é algo que eu gostaria de fazer, mas estou preocupado em aumentar nossa função de serialização DOM a ponto de começar a adicionar uma sobrecarga perceptível aos manipuladores de cliques.

Mas, vou explorar.

Uma alternativa fácil poderia ser apenas fazer

target = elem.outerHTML;

que produzirá o elemento clicado exatamente como está. Você perderá a estrutura da árvore - mas na minha experiência pessoal isso não ajuda tanto quanto ver o elemento completo e real que estou acostumado a ver no meu código o tempo todo e, portanto, posso reconhecer mais rapidamente.

Isso resolveria https://github.com/getsentry/raven-js/issues/576 também

@soroushhakami – começamos com outerHTML primeiro, mas o depreciamos para este método utilitário.

A razão pela qual não escolhemos outerHTML (como @mitsuhiko comentou):

  • o formato do seletor CSS pode mostrar mais informações com menos caracteres
  • outerHTML pode incluir dados temporários ruidosos, por exemplo

    • strings data-reactid longas (no React 0.14 e anteriores)

    • atributos title gerados dinamicamente destinados a dicas de ferramentas

  • teríamos muitos elementos vazios addEventListener está configurado
  • tínhamos botões com a mesma classe/conteúdo, que só são contextualizados via informação ancestral

Basicamente, outerHTML parece bom quando você mostra um monte de exemplos hipotéticos onde parece bom, mas nossa experiência de executá-lo ao vivo por algumas semanas foi que era insuficiente.

Ah entendi, faz sentido, obrigado pela explicação! 👍

Adicionei etiquetas de identificação a todos os meus botões. Surpreso que eles não aparecem nas migalhas de pão. Mesmo que fosse uma tag personalizada, eu ficaria feliz com isso. Mas a etiqueta de identificação parece ser ideal devido à sua singularidade.

@nblasgen – se você puder fornecer um caso de teste com falha, ficaria feliz em ver o que está acontecendo.

Mas agora o código deve capturar IDs , e há um teste que verifica isso .

+1 para mostrar IDs ou uma tag personalizada como data-sentry-id="Some text here"

Vou fechar este por enquanto, pois estamos cientes dessa peça que falta e estaremos revisitando como isso está funcionando na próxima versão principal.

Ref: https://github.com/getsentry/raven-js/issues/783
Ref: https://github.com/getsentry/raven-js/issues/576

Só queria adicionar - estou usando react & styled-components para que meus nomes de classe sejam gerados automaticamente, seria ótimo ter mais contexto (sem ter que manualmente captureBreadcrumb ):

screen shot 2018-07-02 at 4 36 14 pm

@kamilogorek alguma atualização sobre isso?

Existe a possibilidade de ajustar o clique em "mensagem"?

Talvez mais dados possam ser passados ​​para breadcrumbCallback para que as pessoas escolham o que precisam sem enviá-lo para o sentry por padrão? Talvez até um elemento de dom inteiro?

@TuxujPes será possível na próxima versão principal, mas não nesta, pois requer algumas alterações de API pública que só podemos introduzir em versões principais.

@kamilogorek isso soa muito bem. Alguma estimativa sobre a data de lançamento principal?

Em algum lugar perto do final do terceiro trimestre (desculpe-me o tempo de resposta tão longo, estava de férias).

+1 para mostrar IDs ou uma tag personalizada como data-sentry-id="Some text here"

Eles poderiam analisar se existe essa informação e levá-la. Se existir, deixe os seletores com um botão para mais informações.

@hiagodotme @TuxujPes @adamreisnz este recurso já está disponível no novo SDK - https://docs.sentry.io/learn/filtering/?platform=javascript#before -breadcrumb

FYI: apenas não esqueça que usar o novo SDK traz +50Kb para o tamanho do pacote #1552

@ 1999 adiciona 12,7kB quando comparado ao raven-js, não use tamanhos não compactados para comparação, pois não é relevante.
Além disso, a v5 (https://github.com/getsentry/sentry-javascript/pull/1919) será <15kB, então você não terá que se preocupar com o aumento da carga útil.

@kamilogorek Tenho um pouco de medo de PRs com mais de 200 arquivos de alterações, isso parece mais um SDK completamente novo do que uma nova versão. Além disso, qual é a data de lançamento ETA dele?

Esta página foi útil?
0 / 5 - 0 avaliações