Memeriksa aplikasi yang mengalami error untuk menemukan error menggunakan Error Reporting
Pelaporan Error menyediakan satu tempat untuk memantau kondisi error dari semua aplikasi dan layanan dalam project Google Cloud dan dari aplikasi Amazon Elastic Compute Cloud (EC2).
Dalam panduan ini, kita akan mempelajari cara melakukan hal berikut:
Simulasikan error dari layanan di project Google Cloud.
Gunakan Pelaporan Error untuk melihat error dan mengubah status error sehingga orang lain di tim Anda tahu bahwa masalah sedang ditangani.
Siapkan notifikasi agar Anda tahu saat jenis error baru terjadi.
Jika ingin mengikuti panduan langkah demi langkah untuk tugas ini langsung di Konsol Google Cloud, klik Pandu saya:
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Buka Cloud Shell untuk project Google Cloud Anda. Saat dimulai, pesan
Menghubungkan akan ditampilkan.
Menyimulasikan error
Untuk membuat 11 contoh error, jalankan skrip berikut di Cloud Shell:
COUNTER=0 while [ $COUNTER -lt 11 ]; do gcloud beta error-reporting events report --service tutorial --service-version v$((COUNTER/10+1)) \ --message "java.lang.RuntimeException: Error rendering template $COUNTER at com.example.TestClass.test(TestClass.java:51) at com.example.AnotherClass(AnotherClass.java:25) at javax.servlet.http.HttpServlet.service (HttpServlet.java:617) at javax.servlet.http.HttpServlet.service (HttpServlet.java:717)" if [ $COUNTER -eq 10 ]; then echo "All sample errors reported." fi let COUNTER=COUNTER+1 done
Setelah selesai membuat semua error, skrip akan mencetak baris berikut:
All sample errors reported.
Melihat error di Error Reporting
-
Di konsol Google Cloud, buka halaman Pelaporan Error:
Anda juga dapat menemukan halaman ini menggunakan kotak penelusuran.
Dasbor Pelaporan Error menampilkan daftar ringkasan setiap error yang ditemukan dan jumlah kemunculan setiap error. Jika Muat ulang otomatis diaktifkan, Pelaporan Error akan otomatis memuat ulang daftar error setiap 10 detik.
Screenshot berikut menunjukkan contoh halaman pelaporan error:
Klik nama error untuk melihat halaman detail error, yang berisi semua informasi yang tersedia tentang error. Jika Gemini diaktifkan dalam project, Anda dapat menggunakan Gemini untuk mendapatkan saran pemecahan masalah.
Mengonfigurasi notifikasi
Anda dapat mengonfigurasi Pelaporan Error untuk memberi tahu Anda saat jenis error baru muncul. Notifikasi tidak dikirim saat ada error baru yang terjadi:
-
Di konsol Google Cloud, buka halaman Pelaporan Error:
Anda juga dapat menemukan halaman ini menggunakan kotak penelusuran.
Untuk mengaktifkan notifikasi email, klik Lainnya more_vert dan pilih Aktifkan notifikasi error baru untuk project dari menu drop-down.
Untuk membuat jenis error baru, klik Aktifkan Cloud Shell dan jalankan skrip berikut:
COUNTER=0 while [ $COUNTER -lt 3 ]; do gcloud beta error-reporting events report --service tutorial --service-version v1 \ --message "java.lang.ArrayIndexOutOfBoundsException: $COUNTER at com.example.AppController.createUser(AppController.java:42) at com.example.User(User.java:31) at javax.servlet.http.HttpServlet.service (HttpServlet.java:617) at javax.servlet.http.HttpServlet.service (HttpServlet.java:717)" if [ $COUNTER -eq 10 ]; then echo "All sample errors reported." fi let COUNTER=COUNTER+1 done
Setelah selesai membuat semua error, skrip akan mencetak baris berikut:
All sample errors reported.
Periksa email Anda untuk melihat pesan dari "Notifikasi Stackdriver".
Membuat pesan error dari aplikasi App Engine
Meskipun contoh pesan yang Anda buat dari skrip sepenuhnya menyimulasikan kondisi error di Error Reporting, jika Anda ingin membuat error dari layanan sebenarnya yang berjalan di project Google Cloud, ikuti langkah-langkah di bagian ini.
Men-deploy aplikasi
Untuk mendownload dan men-deploy aplikasi ke App Engine, lakukan tindakan berikut:
Download dan konfigurasikan aplikasi dari project GitHub python-docs-samples:
Clone project ke Cloud Shell Anda:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
Git akan menampilkan pesan yang mirip dengan ini:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples Cloning into 'python-docs-samples'...
Buat lingkungan Python yang terisolasi dan aktifkan:
cd python-docs-samples/appengine/standard_python3/hello_world virtualenv env -p python3 source env/bin/activate
Instal dependensi:
pip install -r requirements.txt
Pastikan penginstalan dan konfigurasi aplikasi berhasil:
Jalankan aplikasi:
python main.py
Untuk melihat aplikasi di halaman web lokal, klik link yang ditampilkan di Cloud Shell. Halaman web menampilkan
Hello World!
.Untuk menghentikan aplikasi yang sedang berjalan, masukkan
Ctrl-C
di Cloud Shell.
Upload aplikasi Anda ke App Engine:
gcloud app deploy
Jika diminta untuk memasukkan region deployment, pilih region yang dekat dengan Anda. Masukkan
Y
saat ditanya apakah Anda ingin melanjutkan. Setelah beberapa saat, upload akan selesai.Lihat aplikasi Anda di browser dengan menjalankan perintah berikut di Cloud Shell:
gcloud app browse
Jika Google Cloud CLI tidak dapat menemukan browser Anda, perintah sebelumnya akan menampilkan pesan error dan link. Klik link yang ditampilkan. Pesan
Hello, World!
ditampilkan di browser.
Menghasilkan error
Untuk membuat error yang ditangkap dan ditampilkan Pelaporan Error, lakukan tindakan berikut:
Mengedit
main.py
dan mengubahreturn 'Hello World!
sampai
return 'Hello World!' + 1000
Saat dijalankan, perubahan ini menyebabkan pengecualian
TypeError
Python karena penggabungan string dan bilangan bulat bersifat ilegal.Upload aplikasi yang diubah ke App Engine:
gcloud app deploy
Kembali ke tab browser yang berisi aplikasi yang sedang berjalan, lalu muat ulang halaman. Karena perubahan Anda, halaman akan menampilkan pesan error, bukan
Hello, World!
:Internal Server Error The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.
Jika Anda tidak melihat pesan ini, tunggu sebentar, lalu muat ulang lagi. Mungkin perlu waktu beberapa saat sebelum versi baru diaktifkan.
Melihat error di Error Reporting
Untuk melihat error, ikuti petunjuk di bagian sebelumnya Melihat error di Pelaporan Error.
Pembersihan
Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.