Ringkasan Error Reporting

Error Reporting menggabungkan error yang dihasilkan di layanan cloud yang sedang berjalan. Error ini dilaporkan oleh Error Reporting API atau dianggap sebagai error saat Error Reporting memeriksa entri log untuk menemukan pola teks umum seperti pelacakan tumpukan. Error Reporting mengelompokkan error yang dianggap memiliki penyebab utama yang sama.

Cloud Logging otomatis mengaktifkan Error Reporting jika log pengguna yang diserap cocok dengan salah satu pola ini.

Karena Error Reporting adalah layanan global, error tersebut hanya dapat menganalisis entri log yang disimpan di bucket Cloud Logging yang ada di region global, dengan project Google Cloud sumber dan tujuannya sama, serta yang menonaktifkan kunci enkripsi yang dikelola pelanggan (CMEK). Jika Anda mengarahkan log ke project Google Cloud lain, bucket regional, atau mengaktifkan CMEK, Error Reporting tidak akan menangkap dan menganalisis log tersebut.

Error Reporting mengambil sampel hingga 1.000 error per jam. Jika batas ini tercapai, jumlah yang ditampilkan akan berupa perkiraan. Jika terlalu banyak peristiwa yang diterima, Error Reporting akan mengambil sampel hingga 100 error per jam dan terus mengekstrapolasi jumlahnya.

Cara pengelompokan error

Saat mengevaluasi entri log, Error Reporting mengabaikan entri log dengan kondisi berikut:

  • Di lingkungan standar App Engine, error yang dicatat dengan tingkat keparahan lebih rendah dari ERROR akan diabaikan.
  • Frame stack yang tidak dimiliki oleh pengguna akan diabaikan (misalnya, frame yang termasuk dalam library publik).
  • Setiap urutan berulang dari satu atau beberapa frame stack akan diganti dengan satu kemunculan urutan tersebut.
  • Metode dan simbol yang diperkenalkan compiler akan dihapus.

Selanjutnya, Error Reporting mengikuti pola umum berikut untuk mengelompokkan error:

  • Pengecualian dikelompokkan bersama jika memiliki jenis pengecualian yang sama dan stack serupa.
  • Pelacakan tumpukan diabaikan untuk pengecualian yang biasanya tidak terkait dengan lokasi sumber tempat terjadinya.
  • Error tanpa stack pengecualian dikelompokkan bersama jika dibuat oleh entri log yang sama, yang diperkirakan berdasarkan lokasi sumber yang dilaporkan (reportLocation).

Secara khusus, aturan pengelompokan berikut diterapkan dalam urutan ini:

Jenis error Dikelompokkan berdasarkan
Error yang disebabkan oleh masalah umum di lingkungan.

Misalnya, masalah khusus App Engine:


com.google.apphosting.runtime.HardDeadlineExceededError

com.google.appengine.api.datastore.DatastoreTimeoutException

Masalah Java:


java.util.concurrent.CancellationException
Dikelompokkan menurut jenis pengecualian.
Error dengan pelacakan tumpukan. Dalam kasus pengecualian bertingkat, pengecualian terdalam akan dipertimbangkan.

Contoh:


runtime error: index out of range
package1.func1()
      file1:20
package2.func2()
      file2:33
Dikelompokkan menurut jenis pengecualian dan 5 frame paling atas.
Error tanpa pelacakan tumpukan, tetapi dengan pesan.

Contoh:


runtime error: index out of range
    func1()
Dikelompokkan berdasarkan pesan dan nama fungsi (jika ada). Hanya 3 token literal pertama dari pesan yang dipertimbangkan. Pada contoh di sebelah kiri, ini adalah runtime, error, dan index.

Langkah selanjutnya