Il y a beaucoup de choses intéressantes dans le journal système Android, qui sont utiles à bien des égards

  • trouver les causes profondes des problèmes
  • identifier les applications qui se comportent mal

Comment puis-je afficher et examiner le journal Android?

Commentaires

Réponse

Android 4.1 et versions ultérieures

La meilleure méthode consiste à télécharger le SDK et à utiliser adb logcat (nécessite dactiver les  » options de développement  » sur lappareil).

Il existe des applications disponibles pour afficher le journal complet du système, mais ils ne fonctionnent que sur les périphériques enracinés ou nécessitent lémission dune commande manuelle via adb pour les faire fonctionner. Pour plus dinformations, consultez consultez cette question.

Android 4.0 et versions antérieures

Vous pouvez soit télécharger le SDK et utilisez adb logcat ou obtenez Logcat Extrem à partir du Google Play Store, qui affiche le journal directement sur votre téléphone.

Commentaires

  • Vous pouvez également utiliser lémulateur de terminal avec la commande  » logcat > /sdcard/log.txt » pour lécriture continue du journal dans un fichier sur la carte SD Carte. Cela peut aider à résoudre les problèmes liés aux redémarrages aléatoires.
  • Bon point. Certains téléphones ont tendance à spammer le journal plein dinformations triviales, donc si vous souhaitez minimiser la taille du fichier et les données à parcourir, consultez la section  » Filtrage de la sortie du journal  » sur developer.android.com/guide/developing/tools/adb.html#logcat
  • LogCat Apps ne ‘ ne fonctionne pas avec JellyBean. Google a changé lAPI Android, les applications ne ‘ nont plus lautorisation de lire les journaux dautres applications que les leurs.
  • Jai créé un utilitaire simple pour collecter journaux depuis un PC: gist.github.com/hrj/5983971
  • Logcat Extreme est la belle application pour voir le journal

Réponse

Emplacements des fichiers journaux

Il existe plusieurs répertoires dans lesquels les journaux (y compris ceux des plantages) peuvent apparaître – tous ne sont pas standardisés (cest-à-dire que certains peuvent être spécifiques à la ROM).

  • /data/anr: Certains fichiers de trace semblent arriver ici (Dalvik écrit des traces de pile ici sur ANR, cest-à-dire « Application Not Responding » aka « Force-Close »; voir par exemple des extraits de journal ici )
  • /data/dontpanic semble être un emplacement standard (AOSP) et contient des journaux de plantage comprenant des traces (voir par exemple viaForensics et St ackOverflow )
  • /data/kernelpanics est un autre emplacement – nayant pas eu de « panique du noyau » sur mes appareils Android, je ny ai encore vu aucun contenu.
  • le /data/panic/panic_daemon.config peut pointer vers dautres emplacements configurés – sur mon Droid 2, il mentionne /sdcard/panic_data/
  • Le Droid 2 mentionné a également un répertoire /data/panicreports (vide ici)
  • /data/tombstones peut contenir plusieurs tombstone_nn fichiers (avec nn étant une série, augmentée à chaque nouveau fichier). Comme les pierres tombales sont placées pour les morts, cela est fait ici pour les «processus morts par accident» (cest-à-dire en panne) – et cest ce que lon appelle des «core dumps» sur les systèmes Linux / Unix. Cependant, toutes les applications ne créent pas de pierres tombales; cela doit être explicitement activé par le développeur (voir Débogage des vidages de mémoire Android ).

Il peut y avoir dautres emplacements qui ma échappé; mais comme la plupart des journaux se font sur tmpfs, ces données sont perdues lors dun redémarrage et ne correspondent pas à la question des OP.

Commandes de journalisation à utiliser avec un terminal app (ou adb)

Plusieurs commandes peuvent vous apporter des tonnes dinformations. Pour la plupart dentre eux, il est recommandé de les rediriger vers un fichier (> filename.ext) ou de les diriger vers un filtre (| grep search-for-this ):

Journal du noyau

Ce qui suit fonctionne sans racine:

$ dmesg <6>[82839.126586] PM: Syncing filesystems ... done. <7>[82839.189056] PM: Preparing system for mem sleep <4>[82839.189361] Freezing user space processes ... (elapsed 0.05 seconds) done. <4>[82839.240661] Freezing remaining freezable tasks ... (elapsed 0.00 seconds) done. <snip> 

Logcat

Ici, vous pouvez par exemple spécifiez le domaine qui vous intéresse – radio, événements …

# logcat -b events I/am_create_service( 3457): [1085416560,nitro.phonestats/.widget.WidgetProvider4x1$WidgetUpdateService4x1,,3721] I/am_destroy_service( 3457): [1085416560,nitro.phonestats/.widget.WidgetProvider4x1$WidgetUpdateService4x1,3721] I/notification_cancel( 3457): [nitro.phonestats,4,0] <snip> 

Obtenir des informations sur lappareil

Et des tonnes: Appareil spécificités, informations de compte, services …

$ dumpsys Currently running services: LocationProxyService SurfaceFlinger accessibility account activity <snip> DUMP OF SERVICE account: Accounts: 1 Account {[email protected], type=com.google} <snip> $ dumpstate ======================================================== == dumpstate: 2012-08-18 23:39:53 ======================================================== Build: Gingerbread GWK74 - CyanogenMilestone2 Bootloader: 0x0000 Radio: unknown <snip> ------ MEMORY INFO (/proc/meminfo) ------ MemTotal: 487344 kB MemFree: 10436 kB <snip> 

Tout-en-un

Faites une grosse boule avec tout ensemble, de logcat à dumpstate:

$ bugreport > /mnt/sdcard/bugreport.txt 

Je « suis presque sûr que vous voulez vraiment rediriger cette dernière commande … xD

Quelque chose à propos des autorisations

PS: Naturellement, laccès à ces informations peut nécessiter la racine, car la plupart des sources se trouvent sur le stockage interne.

Commentaires

  • Pour obtenir plus dinformations sur les commandes adb logcat, consultez ici .
  • Ou vérifiez simplement notre logging tag-wiki @testing – qui a encore plus de références 🙂
  • Le lien pour  » Débogage des Core Dumps Android  » est mort, pouvons-nous trouver une alternative?
  • @Spidey là-bas ‘ s toujours Archive.ORG pour ce type de problème (lien vers une copie de travail t ici).
  • Pour toute autre personne comme moi qui est nouvelle sur Android, pour exécuter les commandes ci-dessus, vous devez dabord exécuter $ adb shell pour vous connecter à lappareil via un terminal. (Bien sûr, assurez-vous que votre appareil est connecté à votre ordinateur et que le débogage USB a été activé.)

Réponse

A a constaté que CatLog affiche le journal Android un peu mieux que aLogcat. Outre adb logcat, cest ce que jutilise.

Commentaires

  • Voir mon commentaire ci-dessus, concernant les applications LogCat.
  • Jai mis à jour la question. Veuillez noter que les informations relatives à la position (par exemple,  » ci-dessus « ) ) peuvent facilement devenir obsolètes, car lordre des réponses peut changer avec le temps.

Réponse

A méthode sans racine, qui fonctionne même avec les nouvelles versions dAndroid:

Prérequis:

  • Linux, Windows ou Mac
  • Câble USB pour votre appareil
  • Appareil Android

Instructions:

  1. Installez le pilote de votre périphérique pour utiliser adb. Vous trouverez tout ce dont vous avez besoin ici
  2. Téléchargez lexécutable adb pour votre système dexploitation. Il fait partie du SDK Android, mais vous pourrez peut-être trouver lexécutable adb individuellement.
  3. Connectez votre appareil Android.
  4. Activez les options de développement .
  5. Activez le débogage USB.
  6. Ouvrez une invite de commande (Windows) ou un terminal (linux / mac). Comment faire: Sous Windows: windows + r> entrez « cmd » (sans guillemets)> cliquez sur Entrée | Sous Linux: vous ne savez pas comment ouvrir un terminal? LOL | Sur Mac: Tapez Terminal dans Spotlight et ouvrez-le
  7. CD dans le répertoire où le adb exécutable est situé. Sous Windows: Allez dans le répertoire où vous avez téléchargé lexécutable adb, Shift + Clic droit et sélectionnez « Ouvrir la console » (ou similaire) | Sous Linux / Mac: Cliquez avec le bouton droit dans le répertoire et sélectionnez « Ouvrir le terminal ici » (ou simplement CD dans le répertoire)
  8. Tapez votre cmd / terminal: adb devices pour vérifier que votre appareil est correctement connecté.
  9. Si votre appareil est correctement sélectionné, tapez adb logcat pour afficher le puissant et magique logcat aka stacktrace.
  10. Reproduisez votre erreur (ou autre) sur votre appareil.
  11. Juste après, collez toute la fenêtre cmd / terminal dans un service de collage comme http://pastebin.com/ et envoyez-le nous.

(Principalement copié depuis Leandros )

An swer

Il se trouve dans /sdcard/bugreports.

Commentaires

  • Je ‘ nai jamais eu un tel dossier sur mon téléphone … est-ce spécifique à un fabricant ou à un appareil?
  • De Logcat – CyanogenMod Wiki : Vous pouvez utiliser une combinaison de touches magiques pour créer un fichier de rapport de bogue dans / sdcard / bugreports. Cela semble être un ) un peu spécifique (probablement à CM), et b) pas la réponse à la question, car lOP recherche  » généré automatiquement  » uns.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *