Memeriksa aplikasi yang error untuk menemukan error menggunakan Error Reporting

Anda dapat menggunakan Error Reporting untuk melihat, memprioritaskan, dan memecahkan masalah error aplikasi, sehingga membantu tim Anda mengidentifikasi masalah dan mengatasi error sebelum memengaruhi pengguna.

Dalam panduan memulai ini, Anda akan menyimulasikan kondisi error di project Google Cloud , melihat detail error di konsol Google Cloud , dan mengonfigurasi notifikasi untuk menerima pemberitahuan saat terjadi error baru.


Untuk mengikuti panduan langkah demi langkah untuk tugas ini langsung di Google Cloud konsol, klik Pandu saya:

Guide me


Sebelum memulai

  1. Login ke akun Anda. Google Cloud Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. Buka Cloud Shell untuk project Anda Google Cloud . Saat dimulai, pesan Menghubungkan akan ditampilkan.

    Buka Cloud Shell.

  7. Konfigurasikan alamat email Anda sebagai saluran notifikasi yang didukung.

Menyimulasikan error

  1. 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.

Melihat error di Error Reporting

  1. Di Google Cloud konsol, buka halaman Error Reporting:

    Buka Error Reporting

    Anda juga dapat menemukan halaman ini menggunakan kolom penelusuran.

    Dasbor Error Reporting menampilkan daftar ringkasan setiap error yang ditemukan dan jumlah kemunculan setiap error. Jika Muat ulang otomatis diaktifkan, Error Reporting akan otomatis memuat ulang daftar error setiap 10 detik.

    Screenshot berikut menampilkan contoh halaman Error Reporting:

    Antarmuka pengguna yang menampilkan daftar error.

  2. 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 ada jenis error baru. Notifikasi tidak dikirim saat ada kemunculan baru dari error yang ada:

  1. Di Google Cloud konsol, buka halaman Error Reporting:

    Buka Error Reporting

    Anda juga dapat menemukan halaman ini menggunakan kolom penelusuran.

  2. Untuk mengaktifkan notifikasi email, klik Configure notifications.

  3. Di menu Notification channels, pilih alamat email Anda, lalu pilih Save.

  4. 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)"
         let COUNTER=COUNTER+1
      done
      echo "All sample errors reported."
    

    Setelah selesai menghasilkan semua error, skrip akan mencetak baris berikut:

    All sample errors reported.

  5. Periksa email Anda untuk menemukan pesan dari "Stackdriver Notifications".

Menghasilkan pesan error dari aplikasi App Engine

Pesan contoh yang dihasilkan oleh skrip sebelumnya menyimulasikan kondisi error. Untuk menghasilkan error dari layanan aktif yang berjalan di Google Cloud project Anda, ikuti langkah-langkah di bagian ini.

Men-deploy aplikasi

Untuk mendownload dan men-deploy aplikasi ke App Engine, lakukan hal berikut:

  1. Download dan konfigurasi aplikasi dari project GitHub python-docs-samples:

    1. 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'...
      
    2. Buat lingkungan Python yang terisolasi dan aktifkan:

      cd python-docs-samples/appengine/standard_python3/hello_world
      virtualenv env -p python3
      source env/bin/activate
      
    3. Instal dependensi:

      pip install -r requirements.txt
      
  2. Pastikan penginstalan dan konfigurasi aplikasi berhasil:

    1. Jalankan aplikasi:

      python main.py
      
    2. Untuk melihat aplikasi di halaman web lokal, klik link yang ditampilkan di Cloud Shell. Halaman web akan menampilkan Hello World!.

    3. Untuk menghentikan aplikasi yang sedang berjalan, masukkan Ctrl-C di Cloud Shell.

  3. Upload aplikasi Anda ke App Engine:

    gcloud app deploy
    

    Jika diminta untuk memilih region deployment, pilih region yang terdekat dengan Anda. Masukkan Y saat ditanya apakah Anda ingin melanjutkan. Setelah beberapa saat, proses upload akan selesai.

  4. 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! akan ditampilkan di browser.

Menghasilkan error

Untuk membuat error yang ditangkap dan ditampilkan oleh Error Reporting, lakukan hal berikut:

  1. Edit main.py dan ubah

    return 'Hello World!
    

    menjadi

    return 'Hello World!' + 1000
    

    Saat dijalankan, perubahan ini akan menyebabkan pengecualian TypeError Python karena penggabungan string dan bilangan bulat tidak diizinkan.

  2. Upload aplikasi yang telah diubah ke App Engine:

    gcloud app deploy
    
  3. Kembali ke tab browser yang berisi aplikasi yang sedang berjalan, lalu muat ulang halaman. Karena perubahan yang Anda lakukan, 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 dan 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 Error Reporting.

Pembersihan

Agar akun Google Cloud Anda tidak dikenai biaya untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.

  1. Di Google Cloud konsol, buka halaman Manage resources.

    Buka Manage resources

  2. Pada daftar project, pilih project yang Anda ingin Anda hapus, lalu klik Delete.
  3. Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.

Langkah berikutnya