Ako lokálne zachytiť stopu systému na Android Pie

click fraud protection

systrace je výkonný nástroj, ktorý zhromažďuje informácie o načasovaní z procesov bežiacich na systéme Android. Tu je návod, ako zachytiť stopu systému v systéme Android Pie.

Sledovanie je neoceniteľný nástroj, ktorý umožňuje vývojárom pochopiť vplyv rôznych zmien na systém a môže poskytnúť vodítka na identifikáciu základnej príčiny problémov.

systrace je jedným z takýchto výkonných nástrojov na sledovanie, ktorý zhromažďuje informácie o načasovaní z procesov beží na zariadení so systémom Android. systrace bol značne využívaný Výkonný tím Androidu v spoločnosti Google na optimalizáciu výkonu na telefónoch Google Pixel. Použil som systrace na kontrolu vplyvu zmien plánovača jadra napríklad na umiestnenie úloh na CPU a na identifikáciu možných príčin jankov. systrace dokáže zachytiť širokú škálu údajov, vrátane plánovania CPU, frekvencie CPU, diskových I/O, grafiky, aktivity Binder a oveľa viac. Informácie sa skombinujú do správy, ktorú možno analyzovať v prehliadači Google Chrome.

Pred Android Pie, jediný spôsob, ako zachytiť stopy pomocou

systrace bolo pripojiť zariadenie Android k počítaču a spustiť systrace odtiaľ – zvyčajne z terminálu. Nie každý však má neustály prístup k počítaču alebo znalosti a dôveru na spustenie systrace.

S vydaním Android Pie bola táto nepríjemnosť vyriešená zavedením Balík Traceur, čo je nástroj, ktorý zachytáva nespracované údaje sledovania priamo na telefóne so systémom Android. Traceur je k dispozícii ako možnosť „Sledovanie systému“ v Možnostiach vývojára v aplikácii Nastavenia a nespracované údaje sledovania zachytené na zariadení pomocou Traceur možno neskôr skonvertovať systrace do správy HTML na analýzu.

Nová možnosť „Sledovanie systému“ umožňuje používateľom jednoducho zachytiť a zdieľať stopy s vývojármi bez toho, aby museli skutočne vedieť, ako spustiť systrace na počítači. Vývojári ťažia zo schopnosti zachytiť stopy bez počítača a analyzovať ich neskôr podľa vlastného uváženia. Úplné nespracované údaje sledovania zhromaždené pomocou funkcie „Sledovanie systému“ majú tiež výrazne menšiu veľkosť ako zostava HTML, ktorú generuje systrace, vďaka čomu sú nespracované údaje sledovania vhodnejšie na ukladanie a zdieľanie s ostatnými.

Sprievodca: Zhromažďovanie systému a analýza stôp systému

Najprv sa uistite, že máte zariadenie so systémom Android Pie a počítač s nainštalovaným Pythonom 2. Nasledujúce pokyny boli vykonané na OnePlus 6 s najnovšou beta verziou OxygenOS Android Pie.

  1. Povoľte možnosti vývojára v aplikácii Nastavenia a potom prejdite na možnosť „Sledovanie systému“. v časti „Ladenie“ v Možnostiach vývojára.
  2. Po otvorení sledovania systému sa vám zobrazí prepínač umožňujúci sledovanie systému a možnosť prispôsobiť kategórie sledovania a veľkosť vyrovnávacej pamäte sledovaní. Pre túto ukážku sa používajú predvolené kategórie, čo je pre väčšinu prípadov postačujúce. Prepínač „Zobraziť dlaždicu rýchlych nastavení“ umožňuje spustenie/zastavenie sledovania prostredníctvom rýchlych nastavení. Pre túto príručku som to povolil.
  3. Ak chcete začať zachytávať stopu, klepnite na nedávno pridanú dlaždicu rýchlych nastavení „Zaznamenať stopu“.
  4. Po dokončení sledovania testovacieho prípadu môžete sledovanie zastaviť z panela upozornení.
  5. Skvelé! Úspešne ste zachytili surovú stopu. Upozornenie vás vyzve, aby ste zdieľali nespracovaný súbor sledovania. Mali by ste byť schopní uložiť ho do svojho zariadenia, nahrať ho do online úložiska, poslať ho e-mailom niekomu atď. Prípadne môžete použiť ADB na priame stiahnutie stopy zo zariadenia do počítača (adb pull /data/local/traces/). Pokračujte a uložte súbor sledovania do počítača.
  6. Surový sledovací súbor má vytvorené formát .ctrace. Nedá sa interpretovať v surovej podobe. Môžeme použiť systrace na vytvorenie užitočnejšej a zrozumiteľnejšej interaktívnej HTML správy z nášho nespracovaného súboru sledovania.
  7. Budeme používať najnovšiu verziu systrace z repo projektu katapult. V terminálovej aplikácii naklonujte repo (uistite sa, že je nainštalovaný git):
    git clone https://github.com/catapult-project/catapult.git
  8. Ak chcete vygenerovať správu HTML z nášho nespracovaného súboru sledovania pomocou systrace, zadajte nasledujúce príkazy:
    python2 catapult/systrace/bin/systrace --from-file=<pathtorawtracefile>
    Vygeneruje sa súbor HTML s rovnakým názvom ako nespracovaný súbor sledovania. Poznámka: systrace podporuje v čase písania iba Python 2.
  9. Ak chcete zobraziť správu HTML, spustite prehliadač Google Chrome a prejdite na adresu URL „chrome://tracing“. Neotvárajte prehľad HTML priamo v prehliadači Google Chrome, pretože sa zobrazí prázdny.
  10. Kliknite na „Načítať“ a z kontextového dialógu otvorte súbor správy HTML. Voila! Vaša správa o sledovaní je teraz k dispozícii na kontrolu.

Čo bude ďalej?

Teraz, keď ste schopní zachytiť stopu a vygenerovať a systrace správy, je dôležité pochopiť, ako čítať a interpretovať údaje uvedené v správe. Na začiatok odporúčam prečítať si “Porozumenie Systrace“ a pozerám „Výkon systému Android: Prehľad (Google I/O ‘17)“ a „Systrace pre Hry“ vidieť systrace v akcii.

Toto je príspevok hosťa, ktorý pôvodne napísal Josh Choo, známy aj ako XDA Recognized Developer joshuous. Príspevok bol mierne upravený kvôli formátovaniu.