@logbrew/sdk0.1.28@logbrew/node0.1.12@logbrew/browser0.1.11
Scegli i campi da acquisire
Per un checkout non riuscito, registra un messaggio fisso, un template di route e un codice di stato. Non registrare nomi, indirizzi email o dati di pagamento.
Per il contesto di utente e sessione, consulta
Acquisizione eventi di prodotto.
Un ID può identificare una persona anche quando non contiene un nome.
Prova in locale la selezione dei campi
Usa Node.js 18 o successivo. In una directory vuota, installa il pacchetto:safe-capture.mjs:
"ok":false ed esce con codice 1. Un errore
di convalida dell’SDK stampa il relativo codice di errore. Non stampare né
caricare un’anteprima che contiene dati reali.
Usa lo stesso schema nel tuo codice di acquisizione e mantieni le asserzioni
nei tuoi test. Aggiungi un controllo per ogni campo e valore che la tua app
non deve inviare. Se usi un oscuramento basato su pattern, esegui di nuovo i
controlli dopo ogni modifica alle regole. Questo test controlla un solo log in
coda. Non sostituisce una revisione della privacy.
Messaggi di errore e stack
Un
options.message personalizzato non rimuove metadata.errorMessage.
Controlla l’evento completo, non solo il titolo. Tieni i valori sensibili
fuori dai messaggi di errore già alla fonte.
Usa ogni controllo nel suo ambito
Core JavaScript e Node.js
LogBrewClient.create accetta eventFilter. Restituisci false per omettere
un evento prima che entri nella coda. Qualsiasi altro valore restituito
mantiene l’evento. Il filtro riceve una copia dell’evento, quindi le modifiche
alla copia non oscurano nulla. createLogBrewNodeClient e
createLogBrewBrowserClient non applicano eventFilter in queste versioni.
droppedEvents() conta gli eventi scartati per limiti di dimensione o di
coda. Non conta gli eventi omessi da eventFilter.
Il client Node aggiunge il contesto di runtime, come la versione di Node, il
sistema operativo e l’architettura. Imposta captureRuntimeContext: false
per ometterlo. Questa impostazione non rimuove il contesto fornito dalla tua
app e non interrompe l’acquisizione.
Browser
Per impostazione predefinita, il client browser acquisisce gli errori globali, le promise rifiutate non gestite e una visualizzazione di pagina iniziale. ImpostacaptureGlobalErrors, captureUnhandledRejections o
capturePageViews su false per disattivarne uno.
Le visualizzazioni di pagina includono il pathname. Omettono la query string,
il frammento, il titolo del documento e lo user agent completo, a meno che tu
non imposti includeQueryString, includeHash, includeDocumentTitle o
includeUserAgent. Se un pathname può contenere valori privati, disattiva le
visualizzazioni di pagina automatiche e invia tu stesso una visualizzazione di
pagina con un nome di route sicuro.
sanitizeMetadata modifica solo i metadati. Non modifica i nomi delle
visualizzazioni di pagina o delle azioni. Il nome di una visualizzazione di
pagina contiene il pathname concreto, come page_view /orders/1234. Un
routeTemplate nei metadati imposta la superficie in Analisi, ma non cambia
il nome. shouldCaptureError omette solo i problemi del browser. Non filtra i
log o altri segnali.
Imposta captureRuntimeContext: false per omettere marca del browser,
piattaforma e famiglia del dispositivo. Questa impostazione non controlla
includeUserAgent.
Prima dell’acquisizione reale
Prova ogni percorso di acquisizione attivo con dati sintetici, compresi i percorsi di errore e le integrazioni di logging. Le modifiche all’acquisizione valgono solo per i nuovi eventi.purgePendingEvents() svuota una coda locale inattiva e non riesce mentre è
in corso una consegna. Non ferma l’acquisizione successiva e non rimuove gli
eventi che LogBrew ha accettato. uninstall() del browser rimuove i listener
ma mantiene gli eventi in coda. Questi metodi non sono un flusso di consenso o
di cancellazione.
Poi invia un evento sintetico con la guida rapida. Se manca,
consulta Risoluzione degli errori. Per gli
errori HTTP, consulta Errori API.