Se Mister Download Manager si chiude inaspettatamente o smette di rispondere, si apre una finestra di segnalazione errori. Mostra cosa è successo, permette di leggere l'intero rapporto e può inviarlo agli sviluppatori su GitHub. Ogni segnalazione aiuta a risolvere il problema per tutti.

Cosa vedi
- Mister Download Manager si è chiuso inaspettatamente: MDM si è bloccato o ha riscontrato un errore interno e si è chiuso.
- Mister Download Manager ha smesso di rispondere: la sua finestra non ha risposto per 8 secondi. MDM è ancora in esecuzione, bloccato. Termina e riavvia MDM chiude la copia bloccata e ne avvia una nuova. Se MDM risponde di nuovo da solo, la finestra lo indica.
Nella finestra:
- Cosa stavi facendo quando è successo? è facoltativo. Poche parole, come "Ho aperto Aggiungi URL", sono di grande aiuto.
- Il rapporto mostra tutto ciò che verrebbe inviato. Leggilo prima, se vuoi.
- Invia su GitHub apre nel tuo browser il modulo Crash report di GitHub, già compilato, insieme alla cartella che contiene il rapporto. Trascina il file del rapporto nel modulo, controllalo e invia. Hai bisogno di un account GitHub. Nulla viene inviato automaticamente.
- Se qualcuno ha già segnalato lo stesso problema, la finestra lo indica (Già segnalato come problema #…). Apri il problema segnalato lo apre e mette il tuo rapporto negli appunti, così puoi aggiungerlo come commento.
Gli altri pulsanti copiano il rapporto, aprono la sua cartella o riavviano MDM.
Cosa contiene un rapporto
- Cosa è successo: l'errore e il punto nel codice di MDM in cui si è verificato.
- Lo stack: il punto nel codice di MDM in cui si è bloccato o congelato, e cosa stavano facendo tutte le altre sue parti.
- Il log recente di MDM: ad esempio "comando AddUrl" o "finestra aperta: add-url".
- Il sistema: la versione di MDM e come l'hai installato, il tuo sistema operativo e la sua versione, il processore, la lingua e il tema, e quanti download e code hai. Questi sono solo conteggi.
Non contiene nessuna delle seguenti informazioni:
- i tuoi indirizzi di download o nomi di file;
- il tuo nome utente, che appare come
~nei percorsi delle cartelle.
Se un messaggio di errore cita qualcosa che hai digitato, quel testo è nel rapporto, quindi leggilo prima di inviare.
Il file di dati di crash (.dmp) è un'istantanea di ciò che MDM stava eseguendo in quel momento. Aiuta molto gli sviluppatori, ma può contenere frammenti di ciò che MDM aveva in memoria, come gli indirizzi di download. Viene allegato solo quando selezioni Allega anche i dati di crash.
Dove vengono conservati i rapporti
Nella cartella dati di MDM:
crashes\: ogni rapporto (.txt) e i suoi dati di crash (.dmp);logs\: il log di MDM (mdm.log, con quelli più vecchi comemdm.1.loge così via, 2 MB ciascuno).
La cartella dati di MDM è %APPDATA%\misterdownloadmanager su Windows, ~/Library/Application Support/misterdownloadmanager su macOS e ~/.local/share/misterdownloadmanager su Linux. In modalità portatile è la cartella data accanto al programma.
Il log registra ciò che MDM fa, quindi un rapporto può mostrare cosa ha portato a un problema. Per registrare maggiori dettagli, avvia MDM con la variabile d'ambiente MDM_LOG=debug.
Per gli sviluppatori
Come funziona: una seconda copia di MDM, il monitor, si avvia accanto ad essa con --crash-monitor. Il codice di crash si trova in crates/crash e crates/app/src/crash.rs.
- Cattura dei problemi. Quando MDM si blocca (un'eccezione di Windows, un segnale su Linux, un'eccezione Mach su macOS), va in panico o si blocca, chiede al monitor un dump. Un blocco è un frame della finestra in esecuzione per più di 8 secondi, rilevato da un thread watchdog che ignora il tempo trascorso inattivo. Il monitor quindi scrive un minidump di ogni thread dall'esterno, tramite
minidumperecrash-handler. Un processo bloccato non scrive mai il proprio dump, ed è così che lo fanno anche Firefox, Crashpad e Sentry. - Lettura del dump. Il monitor legge il dump con
rust-minidumpdi Mozilla. Utilizza i simboli Breakpad della release, se trovati, o le informazioni di debug native accanto a una build da sorgente. La Firma del rapporto (ad esempiofreeze in misterdownloadmanager::winui::combo_edit) rimane la stessa per tutti i rapporti di un problema, e la finestra cerca problemi esistenti per essa. - Simboli. Le build di release mantengono le tabelle delle linee (
debug = "line-tables-only"), ma nessun download include le informazioni di debug. La CI le trasforma inMisterDownloadManager-<version>-symbols-<platform>.zip(tools/installer/symbols.py, usandodump_symsdi Mozilla), pubblicate accanto agli altri file della release. La finestra del rapporto recupera lo zip per la propria versione quando uno stack mostra indirizzi grezzi. - Un
.dmpda un problema:
cargo run -p mdm-crash --bin mdm-symbolicate -- crash.dmp MisterDownloadManager-<version>-symbols-windows-x64.zip
- Test.
cargo test -p mdm-crashesegue un vero blocco, panico e crash (examples/crashy.rs) e controlla la firma di ogni rapporto. Per provarlo nell'app, avvia MDM conMDM_CRASH_TEST=1, quindi eseguimisterdownloadmanager /show crash-test:freeze(opanic,crash,abort).
Gratuito, open source, senza pubblicità, senza versioni di prova.
Scarica Mister Download Manager