Periksa aplikasi yang mengalami error untuk menemukan error menggunakan Error Reporting
Error Reporting menyediakan satu tempat untuk memantau kondisi error dari semua aplikasi dan layanan dalam project Google Cloud serta dari aplikasi Amazon Elastic Compute Cloud (EC2).
Dalam panduan ini, kita akan mempelajari cara melakukan hal berikut:
Menyimulasikan error dari layanan di project Google Cloud.
Gunakan Error Reporting untuk melihat error dan mengubah status error agar orang lain di tim Anda tahu bahwa masalah tersebut sedang ditangani.
Siapkan notifikasi agar Anda mengetahui 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.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Make sure that billing is enabled for your Google Cloud project.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Make sure that billing is enabled for your Google Cloud project.
- Buka Cloud Shell untuk project Google Cloud Anda. Saat dimulai, pesan
Connecting akan ditampilkan.
Membuat simulasi error
Untuk menghasilkan 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 menghasilkan semua error, skrip akan mencetak baris berikut:
All sample errors reported.
Lihat error di Error Reporting
-
Di panel navigasi konsol Google Cloud, pilih Error Reporting, lalu pilih project Google Cloud Anda:
Dasbor Error Reporting menampilkan daftar ringkasan setiap error yang ditemukan dan jumlah kemunculan dari setiap error. Jika Auto reload diaktifkan, Error Reporting 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 di project, Anda dapat menggunakan Gemini untuk mendapatkan saran pemecahan masalah.
Mengonfigurasi notifikasi
Anda dapat mengonfigurasi Error Reporting untuk memberi tahu Anda saat jenis error baru muncul. Notifikasi tidak dikirim saat terjadi error baru yang sudah ada:
-
Di panel navigasi konsol Google Cloud, pilih Error Reporting, lalu pilih project Google Cloud Anda:
Untuk mengaktifkan notifikasi email, klik More more_vert lalu pilih Turn on new error notifications for project dari menu drop-down.
Untuk menghasilkan jenis error baru, klik Activate 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 menghasilkan semua error, skrip akan mencetak baris berikut:
All sample errors reported.
Periksa email Anda untuk melihat pesan dari "Stackdriver Notifications".
Membuat pesan error dari aplikasi App Engine
Meskipun pesan contoh 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 hal berikut:
Download dan konfigurasi aplikasi dari project GitHub python-docs-samples:
Clone project ke Cloud Shell Anda:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
Git 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, lalu 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 berjalan, masukkan
Ctrl-C
di Cloud Shell.
Upload aplikasi Anda ke App Engine:
gcloud app deploy
Jika diminta untuk memasukkan region deployment, pilih region di dekat Anda. Masukkan
Y
saat ditanya apakah Anda ingin melanjutkan. Setelah beberapa saat, upload 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.
Membuat error
Untuk membuat error yang dideteksi dan ditampilkan Error Reporting, lakukan langkah berikut:
Edit
main.py
dan ubahreturn 'Hello World!
pada
return 'Hello World!' + 1000
Saat dijalankan, perubahan ini akan menyebabkan pengecualian
TypeError
Python karena menggabungkan string dan bilangan bulat adalah tindakan ilegal.Upload aplikasi yang diubah ke App Engine:
gcloud app deploy
Kembali ke tab browser yang berisi aplikasi yang berjalan, lalu muat ulang halaman. Karena perubahan Anda, halaman yang menampilkan
Hello, World!
akan menampilkan pesan error: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 dan muat ulang lagi. Mungkin perlu waktu beberapa saat sebelum versi baru diaktifkan.
Lihat error di Error Reporting
Untuk melihat error, ikuti petunjuk di bagian sebelumnya Melihat error di Error Reporting.
Pembersihan
Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.
- Di konsol Google Cloud, buka halaman Manage resource.
- Pada daftar project, pilih project yang ingin Anda hapus, lalu klik Delete.
- Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.