Come prendere i log su Android: Logcat, dmesg e ramoops

click fraud protection

Ti stai chiedendo come prendere i log su Android? In questa guida vi raccontiamo i vari log comuni su Android e come raccoglierli.

I log sono molto utili quando uno sviluppatore sta diagnosticando un errore con un software. Quindi, come utente, quando ti lamenti con uno sviluppatore di un problema con la sua app Android o un firmware aftermarket (ROM personalizzata), ti chiederanno di inviare un registro per aiutarli a risolvere il problema. Android include una serie di registri che si occupano di diverse parti del firmware e ci sono diversi modi per raccogliere tali registri. In questa guida parleremo dei vari log comuni e di come raccoglierli su Android per segnalazioni di bug.

Prima di iniziare, dovresti configurare Android Debug Bridge sul tuo computer poiché potresti aver bisogno dell'accesso ADB per alcuni di questi registri. Abbiamo un'ottima guida su come configurare ADB su qualsiasi computer.

Registri di panico del kernel

I registri di panico del kernel sono utili per capire cosa è successo durante un avvio non riuscito. Se stai tentando di eseguire una ROM personalizzata ma il tuo telefono è bloccato nel ciclo di avvio, puoi raccogliere i registri di panico del kernel per aiutare lo sviluppatore della ROM a scoprire cosa è andato storto.

La maggior parte dei produttori di Android utilizza driver upstream "pstore" e "ramoops" per archiviare i log del kernel dopo un panico. Ramoops scrive i suoi log nella RAM prima che il sistema si blocchi. Con l'accesso root, questi log possono essere recuperati da:

/sys/fs/pstore/console-ramoops

Il nome del file potrebbe essere leggermente diverso ma sarà nella directory pstore. Puoi ottenerlo usando ADB pull o in qualsiasi altro modo tu voglia. Per esempio:

adb pull /sys/fs/pstore/console-ramoops C:\Users\Gaurav\Desktop\filename

Messaggi del conducente

Il registro dal buffer dei messaggi del driver può essere utilizzato per diagnosticare problemi con i driver di sistema e perché qualcosa non funziona. Su Android, puoi utilizzare l'output "dmesg" per ottenere questi log. Avrai bisogno accesso root per ottenere questi registri però. Utilizzare il seguente comando ADB per esportare il registro completo.

adbshellsu-cdmesg > dmesg.log

Registri di sistema

I log di sistema sono utili quando qualcosa nel sistema genera un errore. Android consente di raccogliere log di sistema utilizzando Logcat. I messaggi di registro possono essere visualizzati in una finestra Logcat in Android Studio oppure è possibile utilizzare lo strumento da riga di comando per estrarli.

Nel Google Play Store sono disponibili anche diverse app Android che consentono un facile accesso a questi strumenti. Parleremo di queste app più avanti in questo articolo. Inoltre, diverse ROM personalizzate sono dotate di opzioni nelle impostazioni degli sviluppatori per raccogliere i registri di sistema.

Per raccogliere i log utilizzando ADB, utilizzare il seguente comando. Questo comando esporterà un registro continuo, quindi usa Ctrl + C per interromperlo.

adblogcat > logcat.txt

È possibile utilizzare il parametro -d per esportare il log completo in una volta sola.

adblogcat-d > logcat.txt

Se lo desideri, puoi anche visualizzare o salvare il buffer radio utilizzando il seguente comando.

adblogcat-dbradio > radio.txt

Se il tuo dispositivo è rootato, puoi utilizzare l'app Terminale sul dispositivo stesso per raccogliere i registri. Per salvare un registro utilizzando Terminale sul tuo telefono, digita il seguente comando in modo che il registro venga salvato sul tuo telefono.

logcat -d -f /sdcard/logcat.txt

App Android per la raccolta dei log

Logcat estremo

Logcat Extreme può aiutarti a leggere gli output di logcat e dmesg, nonché i registri dei record. Richiede l'accesso root per mostrare correttamente i log.

Logcat estremoSviluppatore: SCDevs

Prezzo: gratuito.

3.9.

Scaricamento

Lettore logcat

Logcat Reader è un'app open source che ti consente di leggere e salvare i registri di sistema. Codifica a colori i log in base alla priorità dei log.

Lettore logcatSviluppatore: Darshan Parajuli

Prezzo: gratuito.

4.2.

Scaricamento

Avvio live

Questa app non è una vera e propria sostituzione di logcat, ma è interessante a modo suo e merita una menzione. L'obiettivo di questa app non è quello di aiutarti effettivamente a eseguire il debug, ma di darti un'animazione di avvio alternativa che sembra uscita da un film di fantascienza.

LiveBoot sostituisce l'animazione di avvio del tuo dispositivo con output logcat e dmesg man mano che si verificano. La sua configurazione di output include il livello di logcat, la selezione del buffer e del formato, se mostrare dmesg e altro. Richiede l'accesso root e SuperSU versione 2.40 o successiva. Puoi trovare ulteriori informazioni sull'app sul suo Discussione XDA.

[radice] Live BootSviluppatore: Catena di fuoco

Prezzo: gratuito.

4.2.

Scaricamento

Questi sono alcuni dei modi in cui puoi raccogliere i log su Android. Se stai cercando un modo per ottenere l'accesso root sul tuo telefono Android, consulta la nostra guida dettagliata su come eseguire il root del telefono.