Come posso trovare correlazioni tra crash e ambienti di sistema?


10

Nel mio tempo libero, sto lavorando su un piccolo sistema basato sul Web che raccoglie i rapporti sugli arresti anomali (ma non altri rapporti sugli errori non arresti anomali) inviati dalle applicazioni Windows di Delphi.

Per la risoluzione dei problemi, agli utenti piacerebbe avere una funzionalità di data mining per trovare relazioni tra le versioni hardware o del sistema operativo e il bug specifico e / o l'arresto anomalo.

Ad esempio come dovrebbe funzionare:

  • per ogni crash c'è un report nel database, che ha un codice di impronte digitali / hash della traccia dello stack (call stack) al momento dell'arresto per identificare i duplicati
  • l'algoritmo verifica se tutti i duplicati di una segnalazione di bug presentano anche altri attributi comuni, ad esempio un service pack mancante del sistema operativo
  • il risultato dell'analisi elenca tutte le proprietà che le segnalazioni di bug hanno in comune

Supponiamo che questi rapporti automatici sui bug contengano tutte le informazioni chiave come i nomi di tutti i processi attualmente in esecuzione, i nomi dei file, le informazioni sulla versione delle DLL caricate, ecc.

Come posso trovare correlazioni tra crash ripetuti e ambiente? Ci sono algoritmi specifici o metodi statistici che potrebbero aiutare?


2
Trovare la correlazione è un compito arduo. Hai visto questo strumento al lavoro? Potrebbe aiutarti a trovare il modo corretto di organizzare i tuoi dati.

Quindi vuoi fare anche il calcolo della correlazione in Delphi? Dai un'occhiata a questo elenco di funzioni matematiche di Delphi : copre molto e fornisce anche spiegazioni e collegamenti alle librerie.

@DaveBall Grazie per l'interessante link, tuttavia mentre le segnalazioni di bug provengono da Delphi, il servizio web è effettivamente implementato in Java - forse posso usare gli algoritmi come punto di partenza o in uno strumento di statistiche "offline".

1
Potresti voler esaminare "modelli di rischio discreti". Questo sembra un caso in cui si desidera regredire gli eventi di errore (crash) su caratteristiche fisse (variabili ambientali) e il tempo trascorso dall'ultimo crash. Se hai abbastanza osservazioni (rapporti sugli arresti anomali), sarai in grado di aggiungere interazioni tra le variabili ambientali al modello. Questi ti indicheranno quindi i conflitti di sistema. Sfortunatamente, non so quanto sia facile implementare un modello del genere in Java.
jmtroos,

1
Il tipo di analisi che si può presumibilmente impiegare dipende dalla dimensione del problema, ad esempio quanti tipi distinti di incidenti ci sono? Quanti possibili attributi ci sono?
Sameer,

Risposte:


1

Potresti campionare le macchine [non bloccate] del tuo utente per le stesse informazioni che ricevi in ​​un rapporto sugli arresti anomali? Perché allora potresti usare la regressione logistica per modellare quegli attributi (e interazioni) sulla probabilità di ottenere un arresto anomalo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.