Lo sviluppo di un software è composto da molteplici fasi che vanno dalla progettazione fino al rilascio finale. Nonostante le tecniche più sicure, il testing manuale o automatizzato, però, non sempre la consegna del prodotto al cliente si trasforma in un successo senza intoppi, errori o bug.
In questo caso, il massimo che si può aspettare dal cliente è la procedura passo passo per riprodurre il problema, rendendo difficile la comprensione e l'individuazione del bug che causa un malfunzionamento, perché il cliente non dispone di un debugger e non ha le capacità necessarie per utilizzarlo.
Per aiutare nella risoluzione del problema viene in aiuto il dump di un processo, possibile in qualsiasi momento dell'applicazione o in caso di crash (un errore grave) attraverso il task manager, come visibile in figura.

Al termine dell'operazione, il sistema indica il nome del file DMP che è stato creato contenente l'intero dump. Il cliente può quindi essere istruito per la creazione del dump e l'inoltro del file. Ottenuto il file, sulla macchina di sviluppo è possibile aprire il file dmp direttamente in Visual Studio 2010 e ottenere delle informazioni riassuntive, come in figura.

Se il file exe sfrutta il .NET Framework 4.0 ed è stato ottenuto compilando in debug, tramite il dump è possibile ottenere la risoluzione dei nomi delle funzioni e delle variabili. Attraverso infatti il link "Debug with mixed", sempre visibile nell'immagini precedente, è possibile avviare una sessione debug, simile a quanto si è abituati, e vedere su quale istruzione erano posizionati i thread e analizzare variabili per poter capire com'era la situazione che si è presentata al cliente.

Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Loggare le query più lente con Entity Framework
Utilizzare una qualunque lista per i parametri di tipo params in C#
Creare una libreria CSS universale: Immagini
Eliminare record doppi in Sql Server
Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
Utilizzare WebJobs su Linux con Azure App Service
Simulare Azure Cosmos DB in locale con Docker
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Supportare la sessione affinity di Azure App Service con Application Gateway
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Recuperare le subissue e il loro stato di completamento in GitHub
I più letti di oggi
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- .NET Conference Italia 2024 - Milano
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Utilizzare il pattern matching per semplificare le espressioni