Pengantar pemecahan masalah Cloud Run

Halaman ini menjelaskan strategi pemecahan masalah umum untuk error Cloud Run. Personalized Service Health memublikasikan semua insiden Cloud Run yang berasal dari infrastruktur Google Cloud yang mendasarinya untuk mengidentifikasi Google Cloud gangguan layanan yang memengaruhi project Anda. Anda juga harus mempertimbangkan untuk menyiapkan pemberitahuan pada peristiwa Personalized Service Health. Untuk informasi tentang insiden yang memengaruhi semua layanan Google Cloud , lihat dasbor Google Cloud Service Health.

Lihat bagian berikut dalam panduan pemecahan masalah Cloud Run untuk menyelesaikan masalah terkait resource Cloud Run Anda:

Strategi pemecahan masalah Cloud Run

Bagian berikut menjelaskan cara menerapkan strategi pemecahan masalah umum untuk mengatasi error. Jika Anda terus mengalami error meskipun telah mengikuti langkah-langkah dalam panduan pemecahan masalah, hubungi dukungan.

Menghasilkan log yang baik menggunakan Cloud Logging

Memecahkan masalah resource Cloud Run akan lebih mudah jika Anda memiliki log yang baik untuk proses debug. Anda harus menulis log dengan cara yang menghubungkan log penampung dengan log permintaan.

Dengan log yang berkorelasi, Anda dapat mengidentifikasi permintaan yang memerlukan analisis lebih lanjut, menemukan rekaman aktivitas permintaan, dan menganalisis akar masalah. Untuk informasi selengkapnya tentang cara menulis log, lihat Menulis log penampung.

Menyelidiki instance menggunakan Logs Explorer

Setiap log permintaan di Cloud Run berisi kolom instanceId yang mengidentifikasi instance yang menangani permintaan Anda. Bergantung pada nilai konkurensi yang Anda tentukan, satu instance dapat menangani beberapa permintaan secara bersamaan.

Jika memiliki beberapa instance yang memunculkan log sekaligus, Anda harus memfilter instance untuk mengidentifikasi permintaan berurutan yang menyebabkan error instance.

Dengan memfilter instance, Anda dapat men-debug masalah performa tertentu yang terkait dengan cold start atau latensi yang meningkat. Masalah ini juga dapat terikat dengan variabel yang dideklarasikan dalam cakupan global, saat nilai digunakan kembali dalam permintaan serentak berikutnya. Contohnya adalah saat Anda membuat satu objek global kumpulan koneksi untuk instance, lalu menggunakannya dalam beberapa permintaan.

Untuk memfilter instance tertentu di Penjelajah Log, ikuti langkah-langkah berikut:

  1. Di konsol Google Cloud, buka halaman Logs Explorer:

    Buka Logs Explorer

  2. Pilih project Google Cloud yang ada di bagian atas halaman, atau buat project baru.

  3. Pilih resource Revisi Cloud Run untuk layanan, atau Tugas Cloud Run untuk tugas.

  4. Luaskan entri log untuk memfilter menurut instance tertentu.

  5. Klik nilai ID instance, lalu pilih Show matching entries.

Menyelesaikan latensi permintaan yang tidak terduga

Jika Anda mengalami masalah latensi, lakukan hal berikut:

  1. Periksa apakah latensi memengaruhi semua permintaan ke resource Cloud Run Anda atau hanya sebagian kecil. Cloud Run terintegrasi secara otomatis dengan Cloud Monitoring tanpa memerlukan penyiapan atau konfigurasi.

    Untuk melihat setiap metrik latensi permintaan, ikuti langkah-langkah berikut:

    1. Di konsol Google Cloud, buka halaman Cloud Run:

      Buka Cloud Run

    2. Pilih layanan atau tugas dari daftar.

    3. Klik tab METRIK untuk menampilkan dasbor Request latencies.

    Untuk melihat metrik latensi di Cloud Monitoring, pilih dari daftar Metrics, Cloud Run Revision > Request_latencies > Request latency.

    Untuk mengetahui daftar semua metrik Cloud Run yang tersedia dan detail yang lebih mendalam, lihat metrikGoogle Cloud di Cloud Monitoring.

  2. Identifikasi permintaan dengan latensi tinggi untuk memahami sumber latensi. Anda dapat menggunakan Cloud Trace atau Cloud Logging untuk memahami berapa lama waktu yang diperlukan untuk menyelesaikan permintaan tertentu.

    Untuk mengidentifikasi permintaan dengan latensi tinggi menggunakan Cloud Logging, terapkan filter traceSampled=true untuk menghubungkan log di Cloud Logging dengan trace di Cloud Trace. Untuk mengetahui informasi selengkapnya, lihat Mengintegrasikan dengan Cloud Logging.

    Terkadang dependensi seperti permintaan ke layanan lain dapat menyebabkan masalah latensi. Untuk mengidentifikasi permintaan tersebut, Anda harus memiliki logging eksplisit yang menargetkan permintaan. Jika Anda tidak menampilkan log tersebut, log tersebut dapat muncul sebagai masalah latensi yang berasal dari layanan Cloud Run.

    Selain itu, Anda harus mempertimbangkan untuk mengevaluasi lonjakan latensi dalam konteks jendela waktu yang dipilih. Signifikansi lonjakan bersifat relatif; lonjakan besar dalam jendela kecil mungkin dapat diabaikan dalam jendela yang lebih besar, dan sebaliknya. Oleh karena itu, periode waktu secara signifikan memengaruhi interpretasi data latensi.

  3. Coba tingkatkan jumlah instance minimum untuk mengurangi latensi permintaan masuk, dan menghindari cold start. Anda juga harus mempertimbangkan untuk mengubah kode sumber, dan menyesuaikan setelan penskalaan untuk membatasi jumlah koneksi ke layanan pendukung.

    Untuk mengetahui informasi selengkapnya, lihat Mengoptimalkan performa.

Memecahkan masalah dengan bantuan Gemini

Anda bisa mendapatkan bantuan yang didukung AI dari chat Gemini Cloud Assist untuk menganalisis log dan memecahkan masalah error. Dengan bantuan Gemini, Anda dapat dengan cepat mengidentifikasi dan menyelesaikan error dengan memanfaatkan kemampuan analisis log alat, sehingga menghemat waktu dan tenaga yang berharga.

Untuk menggunakan Gemini Cloud Assist dari konsol Google Cloud, lakukan hal berikut:

  1. Pastikan Gemini Cloud Assist disiapkan untuk akun pengguna dan project Google Cloud Anda.
  2. Siapkan lingkungan pengembangan Cloud Run di Google Cloud project Anda dan pastikan Anda memiliki izin deployment yang sesuai.

  3. Buka halaman Cloud Run di konsol Google Cloud.

    Buka Cloud Run

  4. Di toolbar konsol, pilih project Google Cloud . Gunakan project yang terkait dengan project ID yang Anda kirimkan setelah Anda diberi akses ke Gemini Cloud Assist.

  5. Klik spark Buka atau tutup chat AI Gemini.

    Panel Gemini akan terbuka.

  6. Jika perlu, klik Setuju jika Anda menyetujui persyaratannya.

  7. Jika Anda memiliki pertanyaan tentang aplikasi tertentu, berikan konteks dengan membuka halaman yang menampilkan referensi Anda sebelum mengajukan pertanyaan. Saat membuat respons, Gemini menyertakan informasi tentang halaman dan project konsol saat ini.

  8. Masukkan perintah di panel Gemini.

    Tabel berikut memberikan beberapa contoh perintah untuk menggunakan Gemini Cloud Assist dengan Cloud Run.

    Perintah Jenis respons
    "Bisakah Anda menjelaskan pesan error yang saya lihat di log penampung Cloud Run?" Tanpa pesan error tertentu di perintah, output akan memberikan panduan pemecahan masalah untuk pesan error log penampung Cloud Run yang umum.
    "Dapatkah Anda menjelaskan pesan error yang saya lihat di log untuk layanan Cloud Run saya?

    HTTP 429 The request was aborted because there was no available instance. The Cloud Run service might have reached its maximum container instance limit or the service was otherwise not able to scale to incoming requests. This might be caused by a sudden increase in traffic, a long container startup time or a long request processing time."
    Penjelasan pesan error Cloud Run dan cara mengatasi error tersebut.
    "Bagaimana cara memperbaiki pesan error berikut saat men-deploy layanan Cloud Run saya?

    HTTP 404: Not found
    Penyebab umum error dan cara memecahkan masalah error.
    "Layanan Cloud Run saya terus mengalami error. Apa yang mungkin menyebabkan hal ini?" Pendekatan untuk menyelidiki penyebab dan cara mengatasi masalah.
    "Bagaimana cara mengetahui apakah error 5XX yang muncul di log disebabkan oleh pemadaman layanan infrastruktur Google?" Langkah-langkah untuk menentukan penyebab error 5XX.
    "Bagaimana cara mengidentifikasi penyebab error ini: com.google.apps.framework.request.BadRequestException Project PROJECT has serving status SYSTEM_DISABLED and cannot be modified?" Menunjukkan bahwa project Google Cloud telah dinonaktifkan secara administratif di tingkat sistem. Memberikan langkah-langkah untuk menyelidiki penyebabnya lebih lanjut.
    "Mengapa saya dapat mengakses layanan Cloud Run dari browser jika saya telah menetapkan ingress=internal?" Penjelasan tentang perilaku yang diharapkan saat mengonfigurasi setelan ingress ke internal. Mencakup skenario lain saat akses mungkin tampak berfungsi dari browser Anda.

Untuk mengetahui detail selengkapnya, lihat referensi berikut: