systrace je zmogljivo orodje, ki zbira podatke o času iz procesov, ki se izvajajo v sistemu Android. Tukaj je opisano, kako zajamete sistemsko sled v Android Pie.
Sledenje je neprecenljivo orodje, ki razvijalcem omogoča razumeti vpliv, ki ga imajo različne spremembe na sistem, in lahko zagotovi namige za prepoznavanje temeljnega vzroka težav.
systrace je eno tako zmogljivih orodij za sledenje, ki zbira informacije o času iz procesov deluje v napravi Android. systrace je v veliki meri uporabljal Ekipa za zmogljivost Android pri Googlu za optimizacijo delovanja na telefonih Google Pixel. Uporabil sem systrace na primer za pregled vpliva sprememb načrtovalnika jedra na postavitev opravil v CPE in za prepoznavanje možnih vzrokov za janke. systrace lahko zajame najrazličnejše podatke, vključno z razporejanjem procesorja, frekvenco procesorja, V/I diska, grafiko, aktivnostjo Binderja in še veliko več. Informacije so združene v poročilo, ki ga je mogoče analizirati v brskalniku Google Chrome.
Pred Android Pie je bil edini način za zajemanje sledi z
systrace je bilo priključiti napravo Android na računalnik in od tam zagnati systrace – običajno s terminala. Vendar nimajo vsi stalnega dostopa do računalnika ali znanja in samozavesti za zagon systrace.Z izdajo Android Pie je bila ta neprijetnost odpravljena z uvedbo Paket Traceur, ki je orodje, ki zajema neobdelane podatke sledenja neposredno na telefonu Android. Traceur je na voljo kot možnost »Sistemsko sledenje« v možnostih za razvijalce v aplikaciji Nastavitve, neobdelane podatke sledenja, ki jih Traceur zajame v napravi, pa lahko pozneje pretvori systrace v poročilo HTML za analizo.
Nova možnost »System Tracing« uporabnikom omogoča enostavno zajemanje in skupno rabo sledi z razvijalci, ne da bi morali dejansko vedeti, kako zagnati systrace na računalniku. Razvijalci imajo koristi od zmožnosti zajemanja sledi brez računalnika in analiziranja pozneje, ko jim ustreza. Celotni neobdelani podatki o sledenju, ki jih zbere »System Tracing«, so tudi znatno manjši od poročila HTML, ki ga ustvari systrace, zaradi česar so surovi podatki sledenja primernejši za shranjevanje in skupno rabo z drugimi.
Vodnik: Zbiranje sistemskih in analiziranje sistemskih sledi
Najprej se prepričajte, da imate napravo s sistemom Android Pie in računalnik z nameščenim Python 2. Naslednja navodila so bila izvedena na OnePlus 6 z najnovejšo beta različico OxygenOS Android Pie.
- Omogočite možnosti razvijalca v aplikaciji Nastavitve in nato odprite možnost »Sledenje sistemu«. v razdelku »Odpravljanje napak« v možnostih za razvijalce.
- Ko odprete sistemsko sledenje, se vam bo prikazal preklopnik za omogočanje sistemskega sledenja in možnost prilagajanja kategorij sledenja in velikosti vmesnega pomnilnika sledenj. Za to predstavitev so uporabljene privzete kategorije, kar v večini primerov zadostuje. Preklopni gumb »Prikaži ploščico hitrih nastavitev« omogoča zagon/ustavitev sledenja prek hitrih nastavitev. To sem omogočil za ta vodnik.
- Če želite začeti zajemati sled, tapnite nedavno dodano ploščico za hitre nastavitve »Snemaj sled«.
- Ko končate s sledenjem testnega primera, lahko ustavite sledenje v senci obvestil.
- Super! Uspešno ste zajeli neobdelano sled. Obvestilo vas bo pozvalo k skupni rabi neobdelane datoteke sledenja. Morali bi ga imeti možnost shraniti v svojo napravo, naložiti v spletno shrambo, poslati nekomu po e-pošti itd. Lahko pa uporabite ADB za neposredno potegovanje sledi iz vaše naprave v računalnik (
adb pull /data/local/traces/
). Nadaljujte in shranite datoteko sledenja v svoj računalnik. - Surova datoteka sledenja je izdelana format .ctrace. Ni ga mogoče interpretirati v surovi obliki. Lahko uporabimo systrace za ustvarjanje bolj uporabnega in razumljivega interaktivnega poročila HTML iz naše neobdelane sledilne datoteke.
- Uporabili bomo najnovejšo različico systrace Iz projekt catapult repo. V terminalski aplikaciji klonirajte repo (zagotovite, da je git nameščen):
git clone https://github.com/catapult-project/catapult.git
- Za ustvarjanje poročila HTML iz naše neobdelane datoteke sledenja z uporabo systrace, vnesite naslednje ukaze:
Ustvarila se bo datoteka HTML z enakim imenom kot neobdelana datoteka sledenja. Opomba: systrace v času pisanja podpira samo Python 2.python2 catapult/systrace/bin/systrace --from-file=<pathtorawtracefile>
- Če si želite ogledati poročilo HTML, zaženite brskalnik Google Chrome in odprite URL »chrome://tracing«. Ne odpirajte poročila HTML neposredno v brskalniku Google Chrome, ker bo prikazano prazno.
- Kliknite »Naloži« in v pojavnem pogovornem oknu odprite datoteko poročila HTML. Voila! Vaše poročilo o sledenju je zdaj na voljo za pregled.
Kaj je naslednje?
Zdaj, ko lahko zajamete sled in ustvarite a systrace poročila, je pomembno razumeti, kako brati in interpretirati podatke, predstavljene v poročilu. Za začetek priporočam branje »Razumevanje Systrace«, in gledam »Učinkovitost Androida: Pregled (Google I/O '17)« in »Systrace za igre" videti systrace v akciji.
To je gostujoča objava, ki jo je prvotno napisal Josh Choo, znan tudi kot XDA Recognized Developer joshuous. Objava je bila rahlo urejena zaradi oblikovanja.