Günlükleri Logcat ile görüntüleme

Android Studio'daki Logcat penceresi, aşağıdakileri yaparak uygulamanızda hata ayıklamanıza yardımcı olur: cihazdaki günlükleri gerçek zamanlı olarak görüntülemenizi sağlar (örneğin, uygulamanıza Log sınıfıyla eklendi, iletiler Android üzerinde çalışan hizmetlerden veya sistem mesajlarından (örneğin, gerçekleşmesidir. Bir uygulama istisna oluşturduğunda Logcat bir mesaj gösterir. ve ardından kod satırının bağlantılarını içeren ilişkili yığın izleme bulunur.

Logcat penceresini kullanmaya başlama

Uygulamanızın günlük mesajlarını görüntülemek için aşağıdakileri yapın.

  1. Android Studio'da, fiziksel mağazada uygulamanızı geliştirip çalıştırın test edebilirsiniz.
  2. Görünüm > Araç Pencereleri > Logcat'i seçin.

Logcat, varsayılan olarak listenin sonuna kaydırılır. Logcat görünümünü veya kaydırma çubuğunu tıklama bu özelliği kapatır. Tekrar açmak için Sona Kadar kaydırın Son simgesine doğru kaydırın tıklayın. Araç çubuğunu temizlemek, duraklatmak veya yeniden başlatmak için de kullanabilirsiniz Logcat.

Logcat penceresi kullanıcı arayüzü

Şekil 1. Logcat, yararlı bilgileri taramayı kolaylaştırmak için günlükleri biçimlendirir. gibi günlükler düzenleyebilir ve farklı günlük türlerini (örneğin, uyarılar ve hatalar.

Günlükler nasıl okunur?

Her günlüğün bir tarih, zaman damgası, işlem ve iş parçacığı kimliği, etiket, paket adı, ve onunla ilişkili mesaj. Farklı etiketlerin benzersiz bir rengi vardır Böylece, günlüğün türünü belirleyebilirsiniz. Her günlük girişinin önceliği FATAL şeklindedir. ERROR, WARNING, INFO, DEBUG veya VERBOSE.

Örneğin, aşağıdaki günlük mesajının önceliği DEBUG ve etiketi şudur: ProfileInstaller:

2022-12-29 04:00:18.823 30249-30321 ProfileInstaller        com.google.samples.apps.sunflower    D  Installing profile for com.google.samples.apps.sunflower

Günlük görünümünü yapılandırma

Standart günlük görünümü, her günlüğün tarihini, saat işlemini ve iş parçacığı kimliğini, etiketini, paket adını, önceliği ve ilişkili mesajı içerir. Varsayılan olarak satırlar günlük görünümünde kaydırılmaz ancak Yumuşak Sarma Yumuşak Kaydırma simgesi seçeneğini kullanabilirsiniz.

Daha az varsayılan görüntüleme bilgisine sahip olan Kompakt görünüme geçebilirsiniz. öğesini tıklayarak Logcat Biçimlendirme Seçeneklerini Yapılandırın Logcat araç çubuğunda bulabilirsiniz.

Ne kadar bilgi görüntülenmesini istediğinizi daha ayrıntılı şekilde yapılandırmak için Görünümleri değiştirin ve zaman damgasını, etiketleri, etiketleri işlem kimliklerini veya paket adlarını gösterebilir.

Renk şemasını değiştirme

Renk şemasını değiştirmek için Android Studio'ya gidin > Ayarlar > Düzenleyen > Renk Şeması. Günlük görünümünüzün renk şemasını değiştirmek için Android Logcat'i seçin. Filtrenizin renk şemasını değiştirmek için Logcat Filtresi.

Ek yapılandırma seçenekleri

Ek yapılandırma seçenekleri için Android Studio > Ayarlar > Araçlar > Logcat. Buradan, Studio'daki yeni Logcat pencereleri için varsayılan filtreyi ve döngünüzün arabellek boyutunu geçmişten otomatik tamamlamaya filtreler eklemek istiyorsanız.

Logcat'i birden çok pencerede kullanma

Sekmeler, farklı cihazlar veya sorgular arasında kolayca geçiş yapmanıza yardımcı olur. Proje bilgilerini tıklayarak birden fazla Logcat sekmesi Yeni Sekme Yeni Sekme simgesi. Bir sekmeyi sağ tıklayarak yeniden adlandırabilir ve yeniden düzenleyebilirsiniz.

Ayrıca, daha kolay yardımcı olması için görünümü sekme içinde bölebilirsiniz ve iki günlük grubunu karşılaştırabilirsiniz. Bölme oluşturmak için günlük görünümünü seçin veya araç çubuğundan Bölünmüş Panelleri seçeneğini tıklayın ve Sağa Böl veya Böl. Bir bölmeyi kapatmak için sağ tıklayıp Kapat'ı seçin. Her bölme, kendi cihaz bağlantısını ayarlamanızı sağlar. sorguya ayıralım.

Birden çok Logcat penceresi. Şekil 2. Android Studio'da Logcat pencerelerini bölün.

Logcat araç çubuğunda, günlüklerin sonuna gidebilir veya belirli bir çizgiyi tıklayarak o çizginin görünür kalmasını sağlayabilirsiniz.

Android Studio'da anahtar/değer çifti aramalarını doğrudan ana sorgu alanına bakalım. Bu sorgu sistemi, yapmak istediğiniz verilerin doğruluğunu anahtar/değer çiftlerine göre günlükleri hariç tutmanızı sağlar. Müşteri yolculuğunuz boyunca normal ifadeleri kullanırsanız sorgular için bu ifadeleri kullanmanıza gerek yoktur. Görmek için önerileri varsa sorgu alanında Ctrl + Space tuşlarına basın.

Sorgu alanındaki önerilerin listesi. Şekil 3. Listeyi görmek için sorgu alanında Ctrl + Space tuşlarına basın önerilen sorgular.

Aşağıda, sorgunuzda kullanabileceğiniz anahtarlara bazı örnekler verilmiştir:

  • tag: Günlük girişinin tag alanıyla eşleşir.
  • package: Günlük kaydı uygulamasının paket adıyla eşleşir.
  • process: Günlük kaydı uygulamasının işlem adıyla eşleşir.
  • message: Günlük girişinin ileti bölümüyle eşleşir.
  • level: Belirtilen veya daha yüksek önemli günlük düzeyiyle eşleşir (ör. DEBUG).
  • age: Giriş zaman damgası yeniyse eşleşir. Değerler rakam ve ardından zaman birimini belirten bir harf: saniye için s, saniye için m dakika, saatler için h ve günler için d. Örneğin, yalnızca age: 5m filtreleri Son 5 dakika içinde günlüğe kaydedilen iletiler.

Olumsuz ifadeler ve normal ifadeler

Şu alanlar olumsuzlama ve normal ifade eşleşmesini destekler: tag, package, message ve line.

Olumsuzluk, alan adının başına - eklenerek ifade edilir. Örneğin, -tag:MyTag, tag dizesi içermeyen günlük girişleriyle eşleşir MyTag.

Normal ifade eşleşmesi, alan adına ~ eklenerek ifade edilir. Örneğin, tag~:My.*Tag.

Olumsuzluk ve normal ifade değiştiricileri birleştirilebilir. Örneğin, -tag~:My.*Tag

Mantıksal operatörler ve parantezler

Sorgu dili, & ve OR tarafından ifade edilen AND ve OR operatörlerini destekler. | ve parantezler. Örnek:

(tag:foo | level:ERROR) & package:mine

Normal operatör önceliğinin zorunlu kılındığını ve bu nedenle aşağıdakilerin geçerli olacağını unutmayın:

tag:foo | level:ERROR & package:mine

Şu şekilde değerlendirilir:

tag:foo | (level:ERROR & package:mine)

Dolaylı mantıksal operatörler

Mantıksal operatörler uygulanmazsa sorgu dili otomatik olarak negatif olmayan birden çok key-value filtre terimini değerlendirir ve OR ve diğer her şey için AND ekleyin.

Örnek:

tag:foo tag:bar package:myapp

Şu şekilde değerlendirilir:

(tag:foo | tag:bar) & package:myapp

Ancak:

tag:foo -tag:bar package:myapp

Şu şekilde değerlendirilir:

tag:foo & -tag:bar & package:myapp

Birden fazla sorgu terimi, mantıksal bir operatör olmadan boşlukla ayrılırsa bunlar düşük önceliğe sahip VE olarak kabul edilir. Örneğin, foo bar tag:bar1 | tag:bar2 eşdeğerdir 'foo bar' & (tag: bar1 | tag: bar2).

Özel sorgular

package:mine

Paket anahtarı, mine özel değerini destekliyor. Bu özel değer, paket adlarını kontrol edin.

level

level sorgusu, Logcat mesajının günlük düzeyiyle eşleşir. Burada günlük giriş düzeyinin sorgu düzeyinden büyük veya bu düzeye eşit olduğunu unutmayın.

Örneğin, level:INFO, günlük düzeyi INFO olan herhangi bir günlük girişiyle eşleşir. WARN, ERROR veya ASSERT. Düzey, büyük/küçük harfe duyarlı değildir. Geçerli düzeyler şunlardır: VERBOSE, DEBUG, INFO, WARN, ERROR ve ASSERT.

age

age sorgusu, girişleri zaman damgalarına göre eşleştirir ve age:<number><unit>, burada:

  • <number>, bir tam sayıdır
  • <unit>; s, m, h ve d (saniye, dakika, saat ve gün) değerlerinden biridir.

Aşağıdaki listede age sorgusu, zaman damgasını kısaltmak önemlidir. Örneğin: age:5m sorgusu zaman damgası en fazla 5 dakika önce olan girişlerle eşleşir.

age:30s
age:5m
age:3h
age:1d

Zaman damgasının bağlı cihaz. Cihazın saati doğru şekilde ayarlanmadıysa bu sorgu beklendiği gibi çalışmayabilir.

is anahtar

is anahtarını aşağıdaki şekilde kullanabilirsiniz:

  • is:crash, bir uygulama kilitlenmesini temsil eden günlük girişleriyle eşleşir (yerel veya Java).
  • is:stacktrace, Günlük düzeyinden bağımsız olarak Java yığın izlemesi.

name anahtar

name anahtarı, kaydedilen bir filtreye benzersiz bir ad vermenizi sağlar. Böylece bu ad kolayca ayırt edilebilir. Herhangi bir name birden fazla kez belirtilmesine neden oluyorsa IDE, yalnızca son sorguda name için belirtilen değer.

Sorgu geçmişini görüntüleme

Sorgu geçmişinizi görüntülemek için Geçmişi göster Filtre simgesi işaretini tıklayın. Bir sorguyu favorilere ekleyerek listenin en üstünde kalmasını sağlamak tüm stüdyo projelerinizi listelemek için yanındaki yıldızı tıklayın. Ayrıca transkriptinizi favori sorguları daha kolay tanınır hale getirmek için name: tuşunu kullanın. Daha fazla Özel sorgular bölümüne bakın.

Sorguları favorilere eklemek için kullanılan kullanıcı arayüzü

4.Şekil Bir sorguyu favorilere eklemek için yanındaki yıldızı tıklayın.

Uygulama kilitlenmeleri ve yeniden başlatma işlemlerindeki günlükleri takip etme

Logcat, uygulama işleminizin durup yeniden başlatıldığını fark ettiğinde çıkışta PROCESS ENDED ve PROCESS STARTED gibi bir mesaj bulunur. Logcat'i yeniden başlattığınızda, sekme ayırma gibi oturum yapılandırmanızı korur. ve görünüm seçenekleri sunar. Böylece, oturumunuza kolayca devam edebilirsiniz.

Uygulama kilitlenmeleri için logcat penceresi

5. Şekil. Uygulama işlemi yeniden başlatıldığında, Logcat sona erip başladığını fark edebilirsiniz.