@logbrew/sdk0.1.28@logbrew/node0.1.12@logbrew/browser0.1.11
Selecione os campos da captura
Para um checkout com falha, registre uma mensagem fixa, um modelo de rota e um código de status. Não registre nomes, endereços de e-mail ou dados de pagamento.
Para o contexto de usuário e de sessão, consulte
Captura de eventos de produto.
Um ID pode identificar uma pessoa mesmo quando não contém um nome.
Teste a seleção de campos localmente
Use Node.js 18 ou mais recente. Em um diretório vazio, instale o pacote:safe-capture.mjs:
"ok":false e termina com o código 1. Um erro
de validação do SDK imprime o código de erro do SDK. Não imprima nem faça
upload de uma prévia que contenha dados reais.
Use o mesmo padrão no seu código de captura e mantenha as asserções nos seus
testes. Adicione uma verificação para cada campo e valor que sua aplicação não
deve enviar. Se você usa ocultação baseada em padrões, execute as
verificações de novo depois de cada mudança de regra. Este teste verifica um
log na fila. Ele não substitui uma revisão de privacidade.
Mensagens de erro e pilhas
Um
options.message personalizado não remove metadata.errorMessage.
Confira o evento completo, não só o título. Mantenha valores sensíveis fora
das mensagens de erro já na origem.
Use cada controle no escopo dele
Core JavaScript e Node.js
LogBrewClient.create aceita eventFilter. Retorne false para omitir um
evento antes que ele entre na fila. Qualquer outro valor de retorno mantém o
evento. O filtro recebe uma cópia do evento, então mudar essa cópia não oculta
nada. createLogBrewNodeClient e createLogBrewBrowserClient não aplicam
eventFilter nestas versões.
droppedEvents() conta os eventos descartados por limites de tamanho ou de
fila. Ele não conta os eventos que eventFilter omitiu.
O cliente Node adiciona contexto do runtime, como a versão do Node, o sistema
operacional e a arquitetura. Defina captureRuntimeContext: false para
omitir esse contexto. Essa configuração não remove o contexto que sua
aplicação fornece e não interrompe a captura.
Navegador
Por padrão, o cliente de navegador captura erros globais, rejeições não tratadas e uma visualização de página inicial. DefinacaptureGlobalErrors,
captureUnhandledRejections ou capturePageViews como false para desativar
um deles.
As visualizações de página incluem o pathname. Elas omitem a query string, o
fragmento, o título do documento e o user agent completo, a não ser que você
defina includeQueryString, includeHash, includeDocumentTitle ou
includeUserAgent. Se um pathname puder conter valores privados, desative as
visualizações de página automáticas e envie sua própria visualização de
página com um nome de rota seguro.
sanitizeMetadata muda só os metadados. Ele não muda os nomes de
visualizações de página nem de ações. O nome de uma visualização de página
contém o pathname concreto, como page_view /orders/1234. Um routeTemplate
nos metadados define a página ou tela usada em Análises, mas não muda o nome.
shouldCaptureError omite só problemas do navegador. Ele não filtra logs nem
outros sinais.
Defina captureRuntimeContext: false para omitir a marca do navegador, a
plataforma e a família do dispositivo. Essa configuração não controla
includeUserAgent.
Antes da captura real
Teste cada caminho de captura ativado com dados sintéticos, incluindo os caminhos de erro e as integrações de logging. As mudanças na captura valem só para eventos novos.purgePendingEvents()
limpa uma fila local ociosa e falha enquanto a entrega está ativa. Ele não
impede capturas posteriores nem remove eventos que o LogBrew aceitou. O
uninstall() do navegador remove os listeners, mas mantém os eventos na fila.
Esses métodos não são um fluxo de consentimento nem de exclusão.
Depois, envie um evento sintético com o início rápido. Se
ele não aparecer, consulte Solução de problemas.
Para erros HTTP, consulte Erros da API.