Komut satırında sistem izlemeyi yakalama

systrace komutu, cihazınızda sistem düzeyinde çalışan tüm işlemlerde zamanlama bilgilerini toplayıp incelemenize olanak tanıyan Systrace aracını çağırır.

Bu dokümanda, komut satırından Systrace raporlarının nasıl oluşturulacağı açıklanmaktadır. Android 9 (API düzeyi 28) veya sonraki sürümleri çalıştıran cihazlarda Sistem İzleme sistemi uygulamasını kullanarak Systrace raporları da oluşturabilirsiniz.

systrace eklentisini çalıştırmak için aşağıdaki adımları tamamlayın:

  1. Android Studio'dan en son Android SDK Araçları'nı indirip yükleyin.
  2. Python'u yükleyin ve iş istasyonunuzun PATH ortam değişkenine ekleyin.
  3. PATH ortam değişkeninize android-sdk/platform-tools/ ekleyin. Bu dizin, systrace programı tarafından çağrılan Android Hata Ayıklama Köprüsü ikili programını (adb) içerir.
  4. USB hata ayıklama bağlantısı kullanarak Android 4.3 (API düzeyi 18) veya sonraki sürümleri çalıştıran bir cihazı geliştirme sisteminize bağlayın.

systrace komutu, Android SDK Araçları paketinde sağlanır ve android-sdk/platform-tools/systrace/ konumunda bulunur.

Sözdizimi

Uygulama için HTML raporu oluşturmak isterseniz aşağıdaki söz dizimini kullanarak komut satırından systrace öğesini çalıştırmanız gerekir:

python systrace.py [options] [categories]

Örneğin, aşağıdaki komut, cihaz etkinliğini kaydetmek ve mynewtrace.html adlı bir HTML raporu oluşturmak için systrace komutunu çağırır. Bu kategori listesi, çoğu cihaz için makul bir varsayılan listedir.

$ python systrace.py -o mynewtrace.html sched freq idle am wm gfx view \
    binder_driver hal dalvik camera input res memory

İpucu: İzleme çıktısında görevlerin adlarını görmek isterseniz komut parametrelerinize sched kategorisini eklemeniz gerekir.

Bağlı cihazınızın desteklediği kategorilerin listesini görüntülemek için aşağıdaki komutu çalıştırın:

$ python systrace.py --list-categories

Herhangi bir kategori veya seçenek belirtmezseniz systrace, mevcut tüm kategorileri içeren ve varsayılan ayarları kullanan bir rapor oluşturur. Kullanabileceğiniz kategoriler, kullanmakta olduğunuz bağlı cihaza bağlıdır.

Genel seçenekler

Genel seçenekler Açıklama
-h | --help Yardım mesajını gösterin.
-l | --list-categories Bağlı cihazınızda kullanılabilen izleme kategorilerini listeler.

Komutlar ve komut seçenekleri

Komutlar ve seçenekler Açıklama
-o file HTML izleme raporunu belirtilen file öğesine yazın. Bu seçeneği belirtmezseniz systrace, raporunuzu systrace.py ile aynı dizine kaydeder ve trace.html olarak adlandırır.
-t N | --time=N Cihaz etkinliğini N saniye boyunca izleyin. Bu seçeneği belirlemezseniz systrace, komut satırından Enter tuşuna basarak izlemeyi sonlandırmanızı ister.
-b N | --buf-size=N N kilobaytlık bir izleme arabelleği boyutu kullanın. Bu seçenek, bir iz sırasında toplanan verilerin toplam boyutunu sınırlamanıza olanak tanır.
-k functions
| --ktrace=functions
Virgülle ayrılmış bir listede belirtilen belirli çekirdek işlevlerinin etkinliğini izleyin.
-a app-name
| --app=app-name
Uygulamalar için işlem adlarının virgülle ayrılmış bir listesi olarak belirtilen izlemeyi etkinleştirin. Uygulamalar, Trace sınıfından izleme enstrümantasyonu aramaları içermelidir. Uygulamanızın profilini her oluştururken bu seçeneği belirtmeniz gerekir. RecyclerView gibi birçok kitaplıkta, uygulama düzeyinde izlemeyi etkinleştirdiğinizde yararlı bilgiler sağlayan izleme araçları çağrıları bulunur. Daha fazla bilgi için Özel etkinlikler tanımlama bölümüne bakın.

Android 9 (API düzeyi 28) veya sonraki sürümleri çalıştıran bir cihazdaki tüm uygulamaları izlemek için "*" joker karakterini (tırnak işaretleri dahil) geçirin.

--from-file=file-path Canlı izleme çalıştırmak yerine bir dosyadan, ham iz verilerini içeren TXT dosyaları gibi etkileşimli bir HTML raporu oluşturun.
-e device-serial
| --serial=device-serial
İzi, cihaz seri numarasıyla tanımlanan belirli bir bağlı cihazda yürütün.
categories Belirttiğiniz sistem işlemleri için izleme bilgilerini ekleyin (ör. grafikler oluşturan sistem işlemleri için gfx). Bağlı cihazınızda kullanılabilen hizmetlerin listesini görmek için systrace komutunu -l komutuyla çalıştırabilirsiniz.