Cara Menangkap Jejak Sistem Secara Lokal di Android Pie

systrace adalah alat canggih yang mengumpulkan informasi waktu dari proses yang berjalan di Android. Berikut cara menangkap jejak sistem di Android Pie.

Penelusuran adalah alat yang sangat berharga yang memungkinkan pengembang memahami dampak berbagai perubahan terhadap sistem dan dapat memberikan petunjuk untuk mengidentifikasi akar penyebab masalah.

systrace adalah salah satu alat penelusuran canggih yang mengumpulkan informasi waktu dari proses berjalan di perangkat Android. systrace digunakan secara luas oleh Tim kinerja Android di Google untuk mengoptimalkan kinerja pada ponsel Google Pixel. Saya telah menggunakan systrace untuk memeriksa dampak perubahan penjadwal kernel pada penempatan tugas pada CPU, misalnya, dan untuk mengidentifikasi kemungkinan penyebab jank. systrace dapat menangkap berbagai macam data, termasuk penjadwalan CPU, frekuensi CPU, I/O disk, grafik, aktivitas Binder, dan banyak lagi. Informasi tersebut digabungkan menjadi laporan yang dapat dianalisis di Google Chrome.

Sebelum Android Pie, satu-satunya cara untuk menangkap jejak adalah dengan systrace adalah menghubungkan perangkat Android ke komputer dan menjalankan systrace dari sana—biasanya dari terminal. Namun, tidak semua orang memiliki akses konstan ke komputer, atau pengetahuan dan kepercayaan diri untuk menjalankan systrace.

Dengan dirilisnya Android Pie, ketidaknyamanan ini diatasi dengan diperkenalkannya Paket Traceur, yaitu alat yang menangkap data jejak mentah langsung di ponsel Android. Traceur tersedia sebagai opsi “Pelacakan Sistem” di Opsi Pengembang pada aplikasi Pengaturan, dan data jejak mentah yang diambil pada perangkat oleh Traceur di lain waktu dapat dikonversi oleh systrace ke laporan HTML untuk dianalisis.

Opsi “Pelacakan Sistem” yang baru memungkinkan pengguna dengan mudah menangkap dan berbagi jejak dengan pengembang, tanpa perlu benar-benar mengetahui cara menjalankannya systrace di komputer. Pengembang mendapat manfaat dari kemampuan menangkap jejak tanpa komputer dan kemudian menganalisisnya sesuai keinginan mereka. Data jejak lengkap lengkap yang dikumpulkan oleh “Pelacakan Sistem” juga berukuran jauh lebih kecil dibandingkan laporan HTML yang dihasilkan oleh systrace, sehingga membuat data jejak mentah lebih cocok untuk disimpan dan dibagikan dengan orang lain.

Panduan: Mengumpulkan Sistem dan Menganalisis Jejak Sistem

Pertama, pastikan Anda memiliki perangkat yang menjalankan Android Pie dan komputer dengan Python 2 terinstal. Instruksi berikut dilakukan pada OnePlus 6 yang menjalankan OxygenOS Android Pie beta terbaru.

  1. Aktifkan Opsi Pengembang di aplikasi Pengaturan, lalu akses opsi “Pelacakan Sistem”. dalam bagian “Debugging” pada Opsi Pengembang.
  2. Saat membuka Penelusuran Sistem, Anda akan disajikan tombol untuk mengaktifkan Penelusuran Sistem, dan kemampuan untuk menyesuaikan kategori penelusuran dan ukuran buffer penelusuran. Untuk demonstrasi ini, kategori default digunakan, yang cukup untuk sebagian besar kasus. Tombol “Tampilkan ubin pengaturan cepat” memungkinkan pelacakan dimulai/dihentikan melalui Pengaturan Cepat. Saya telah mengaktifkan ini untuk panduan ini.
  3. Untuk mulai menangkap jejak, ketuk ubin pengaturan cepat “Rekam jejak” yang baru ditambahkan.
  4. Ketika Anda selesai menelusuri kasus uji, Anda dapat menghentikan penelusuran dari bayangan notifikasi.
  5. Besar! Anda telah berhasil menangkap jejak mentah. Pemberitahuan akan meminta Anda untuk membagikan file jejak mentah. Anda harus dapat menyimpannya ke perangkat Anda, mengunggahnya ke penyimpanan online, mengirimkannya melalui email ke seseorang, dll. Alternatifnya, Anda dapat menggunakan ADB untuk langsung menarik jejak dari perangkat ke komputer Anda (adb pull /data/local/traces/). Silakan simpan file jejak ke komputer Anda.
  6. File jejak mentah sudah dibuat-buat format .ctrace. Itu tidak dapat ditafsirkan dalam bentuk mentahnya. Kita bisa gunakan systrace untuk menghasilkan laporan HTML interaktif yang lebih berguna dan mudah dipahami dari file jejak mentah kami.
  7. Kami akan menggunakan versi terbaru systrace dari repo proyek ketapel. Di aplikasi terminal, kloning repo (pastikan git diinstal):
    git clone https://github.com/catapult-project/catapult.git
  8. Untuk menghasilkan laporan HTML dari file jejak mentah kami menggunakan systrace, masukkan perintah berikut:
    python2 catapult/systrace/bin/systrace --from-file=<pathtorawtracefile>
    File HTML dengan nama yang sama dengan file jejak mentah akan dihasilkan. Catatan: systrace hanya mendukung Python 2 pada saat penulisan.
  9. Untuk melihat laporan HTML, luncurkan browser Google Chrome dan akses URL “chrome://tracing”. Jangan langsung membuka laporan HTML di Google Chrome karena akan terlihat kosong.
  10. Klik pada "Muat" dan buka file laporan HTML dari dialog pop-up. Voila! Laporan penelusuran Anda sekarang tersedia untuk diperiksa.

Apa berikutnya?

Sekarang Anda dapat menangkap jejak dan menghasilkan a systrace laporan, penting untuk memahami cara membaca dan menafsirkan data yang disajikan dalam laporan. Sebagai permulaan, saya sarankan membaca “Memahami Systrace”, dan menonton”Kinerja Android: Gambaran Umum (Google I/O '17)" Dan "Systrace untuk Permainan" untuk melihat systrace sedang beraksi.

Ini adalah postingan tamu yang awalnya ditulis oleh Josh Choo, juga dikenal sebagai Pengembang yang Diakui XDA joshuous. Postingan tersebut sedikit diedit untuk pemformatan.