2 votes

récupérer le logcat après un crash du système

Est-il possible de récupérer un logcat d'avant un crash système après que le téléphone se soit rétabli ? Par exemple, mon téléphone fonctionne normalement, puis il se plante et redémarre, et je veux voir les journaux lorsqu'il se rétablit pour essayer de déterminer ce qui a causé le crash. Je ne trouve aucun moyen d'afficher logcat autrement qu'en temps réel, sauf à faire tourner un émulateur de terminal et à exécuter logcat -f logcat.txt V puis le laisser tourner éternellement. Cela pourrait créer un énorme fichier qui prendrait tout mon espace de stockage.

Je n'arrive pas à croire qu'il n'y ait aucun moyen d'afficher un rapport d'accident, je n'arrive pas à trouver comment.

3voto

Chahk Points 19297

Malheureusement, logcat ne survit pas à un redémarrage brutal car les journaux sont stockés dans des tampons circulaires en mémoire, et ne sont jamais réellement écrits sur le stockage. Votre solution de laisser une session de terminal en cours d'exécution peut fonctionner, mais comme vous l'avez dit, elle peut faire croître le fichier de manière incontrôlée, et lors d'un redémarrage, elle peut corrompre le fichier de sortie. Je suggérerais d'ajouter l'option -r y -n pour que seules les entrées les plus récentes soient écrites :

logcat -r 1024 -n 10 -f /sdcard/logcat.txt &

Cela limite les journaux à 10 fichiers nommés "logcat.txt", "logcat.txt.2", etc., chacun d'une taille de 1 Mo. Lorsque cette limite est atteinte, le premier fichier est écrasé, et ainsi de suite.

Vous pouvez également vous renseigner sur /proc/last_kmsg qui stocke les journaux du noyau juste avant le dernier redémarrage. Utilisez cat /proc/last_kmsg > /sdcard/last_kmsg.txt pour écrire son contenu dans un fichier sur votre stockage.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X