Jak pořizovat protokoly na Androidu: Logcat, dmesg a ramoops

Zajímá vás, jak pořizovat protokoly na Androidu? V této příručce vám řekneme o různých běžných protokolech v systému Android a o tom, jak je shromažďovat.

Protokoly jsou velmi užitečné, když vývojář diagnostikuje chybu v nějakém softwaru. Když si tedy jako uživatel stěžujete vývojáři na problém s jejich aplikací pro Android nebo firmwarem pro trh s náhradními díly (vlastní ROM), požádá vás o odeslání protokolu, který mu pomůže problém vyřešit. Android obsahuje řadu protokolů, které se zabývají různými částmi firmwaru, a existuje řada způsobů, jak tyto protokoly shromažďovat. V této příručce budeme hovořit o různých běžných protokolech a o tom, jak je můžete shromažďovat v systému Android pro hlášení chyb.

Než začneme, měli byste v počítači nastavit Android Debug Bridge, protože pro některé z těchto protokolů možná budete potřebovat přístup ADB. Máme skvělého průvodce jak nastavit ADB na libovolném počítači.

Protokoly o panice jádra

Protokoly paniky jádra jsou užitečné pro zjištění, co se stalo během neúspěšného spouštění. Pokud se pokoušíte spustit vlastní ROM, ale váš telefon se zasekl ve spouštěcí smyčce, můžete shromažďovat protokoly o panice jádra, které vývojáři ROM pomohou zjistit, co se pokazilo.

Většina výrobců Androidu používá upstream ovladače „pstore“ a „ramoops“ k ukládání protokolů jádra po panice. Ramoops zapisuje své protokoly do paměti RAM před zhroucením systému. S přístupem root lze tyto protokoly načíst z:

/sys/fs/pstore/console-ramoops

Název souboru se může mírně lišit, ale bude v adresáři pstore. Můžete to získat pomocí ADB pull nebo jakýmkoli jiným způsobem, který chcete. Například:

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

Zprávy řidiče

Protokol z vyrovnávací paměti zpráv ovladačů lze použít k diagnostice problémů se systémovými ovladači a proč něco nefunguje. V systému Android můžete k získání těchto protokolů použít výstup 'dmesg'. Budeš potřebovat root přístup získat tyto protokoly. Pomocí následujícího příkazu ADB exportujte celý protokol.

adbshellsu-cdmesg > dmesg.log

Systémové protokoly

Systémové protokoly jsou užitečné, když něco v systému vyvolá chybu. Android umožňuje shromažďování systémových protokolů pomocí Logcat. Zprávy protokolu lze zobrazit v okně Logcat v aplikaci Android Studio nebo je můžete stáhnout pomocí nástroje příkazového řádku.

V obchodě Google Play je také k dispozici několik aplikací pro Android, které umožňují snadný přístup k těmto nástrojům. O těchto aplikacích budeme hovořit později v tomto článku. Navíc několik vlastních ROM přichází s možnostmi v nastavení vývojáře pro shromažďování systémových protokolů.

Chcete-li shromažďovat protokoly pomocí ADB, použijte následující příkaz. Tento příkaz bude exportovat souvislý protokol, takže jej zastavte pomocí Ctrl + C.

adblogcat > logcat.txt

Pomocí parametru -d můžete exportovat celý protokol najednou.

adblogcat-d > logcat.txt

Pokud chcete, můžete také zobrazit nebo uložit vyrovnávací paměť rádia pomocí následujícího příkazu.

adblogcat-dbradio > radio.txt

Pokud je vaše zařízení rootované, můžete ke shromažďování protokolů použít aplikaci Terminál na samotném zařízení. Chcete-li uložit protokol pomocí Terminálu v telefonu, zadejte následující příkaz, aby se protokol uložil do telefonu.

logcat -d -f /sdcard/logcat.txt

Aplikace pro Android pro shromažďování protokolů

Logcat Extreme

Logcat Extreme vám může pomoci číst výstupy logcat a dmesg a také protokoly záznamů. Ke správnému zobrazení protokolů vyžaduje přístup root.

Logcat ExtremeVývojář: SCDevs

Cena: Zdarma.

3.9.

Stažení

Logcat Reader

Logcat Reader je open source aplikace, která vám umožní číst a ukládat systémové protokoly. Barevně rozlišuje protokoly na základě priority protokolů.

Logcat ReaderVývojář: Daršan Parajuli

Cena: Zdarma.

4.2.

Stažení

LiveBoot

Tato aplikace není správnou náhradou logcatu, ale je svým způsobem cool a zaslouží si zmínku. Cílem této aplikace není skutečně pomoci s laděním, ale poskytnout vám alternativní animaci spouštění, která vypadá jako ze sci-fi filmu.

LiveBoot nahradí spouštěcí animaci vašeho zařízení výstupy logcat a dmesg, jakmile k nim dojde. Jeho výstupní konfigurace zahrnuje úroveň logcat, výběr vyrovnávací paměti a formátu, zda zobrazit dmesg a další. Vyžaduje přístup root a také SuperSU verze 2.40 nebo novější. Více o aplikaci najdete na ní XDA vlákno.

[root] LiveBootVývojář: Řetězový oheň

Cena: Zdarma.

4.2.

Stažení

Toto jsou některé ze způsobů, jak můžete shromažďovat protokoly v systému Android. Pokud hledáte způsob, jak získat přístup root na svém telefonu Android, podívejte se na našeho podrobného průvodce na jak rootovat telefon.