Monitoraggio degli errori sulle app che sto vendendo

1

Sto sviluppando script JS e PHP e li vendo su vari mercati. Ma ho bisogno di monitorare / monitorare gli errori sui miei script. Di solito, uso Sentry per le proprie app Web, ma non sono sicuro che sia corretto utilizzarlo per gli script che sto vendendo. Perché questo script conterrà alcuni token di autenticazione con permessi di scrittura e qualsiasi sviluppatore esperto potrà vederlo. Così possono abusarne e creare migliaia di errori falsi su Sentry.

Qual è il modo corretto di monitorare / tracciare gli errori in questo tipo di scenario?

    
posta Eray 08.10.2018 - 20:14
fonte

2 risposte

1

Invece di utilizzare la stessa chiave API utilizzata per inviare i log degli errori, utilizzare una chiave API per utente. In altre parole, una persona che acquista la tua biblioteca dovrà generare la sua propria chiave API e quindi darla alla libreria che ha acquistato. In questo modo, la persona verrà identificata e il livello di identificazione dipende dalle tue esigenze specifiche (potrebbe essere un semplice indirizzo e-mail o un processo di identificazione molto più completo).

In tal modo, eviterai la maggior parte dei problemi a venire dai tuoi clienti . Qualcuno che sa di essere identificato sarebbe molto meno incline a DOS o spam server, perché crederebbe che un'azione legale da parte tua sarà più facile, così come perché saprebbe che la sua chiave API può essere inserita nella lista nera.

Questo non risolve, tuttavia, i problemi che provengono dai clienti dei tuoi clienti. Immagina il sito Web di Adobe che acquista la tua libreria JavaScript. Adobe inizia a usarlo e si assicura che nessuno dello staff stia abusando dell'API dei log degli errori. Ma cosa mi impedisce, come visitatore semplice, di leggere il codice sorgente JavaScript, di estrarre la chiave API e di inviare spam ai server senza essere identificato?

Per risolvere questo secondo problema, devi fornire ai tuoi clienti un per loro per filtrare i log degli errori prima di inviarli a te. Quello che succederebbe è che invece di interagire direttamente con il tuo server, la libreria JavaScript invierà piuttosto i log degli errori alla sua controparte lato server, che valuterà se i messaggi di errore sono legittimi. In questo modo, potrebbe, ad esempio, abbinare i messaggi di errore agli utenti autenticati o tenere d'occhio un numero insolito di messaggi da un determinato IP, ecc.

Questo è tutto ma facile da sviluppare, quindi assicurati che ne valga davvero la pena. Il vantaggio di farlo in questo modo è quello di risparmiare larghezza di banda e la larghezza di banda può essere davvero molto costosa.

Se la larghezza di banda non è un problema, lascia che siano tutti i messaggi di errore. Quindi, potrai filtrarli in base all'indirizzo IP, al numero di messaggi in un dato momento, ai messaggi stessi o ai loro modelli, ecc. Dopotutto:

  • Se sei di dimensioni ridotte (ad esempio se ricevi decine di messaggi di errore al giorno), il filtro dello spam manualmente non dovrebbe essere un problema.

  • Se sei su larga scala, ricevendo migliaia di messaggi al minuto, puoi sfruttare la scala per identificare gli utenti e eliminarli automaticamente.

risposta data 11.10.2018 - 23:17
fonte
0

Chiedi agli script di inviare i loro messaggi di log al tuo server , quindi fare in modo che i tuoi server re-invii (o meno) i messaggi a Sentry.

Questo ti dà l'opportunità di filtrare gli errori falsi e mantiene i tuoi token Sentry sull'hardware sotto il tuo controllo.

    
risposta data 08.10.2018 - 23:17
fonte

Leggi altre domande sui tag