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:
Di konsol Google Cloud, buka halaman Logs Explorer:
Pilih project Google Cloud yang ada di bagian atas halaman, atau buat project baru.
Pilih resource Revisi Cloud Run untuk layanan, atau Tugas Cloud Run untuk tugas.
Luaskan entri log untuk memfilter menurut instance tertentu.
Klik nilai ID instance, lalu pilih Show matching entries.
Menyelesaikan latensi permintaan yang tidak terduga
Jika Anda mengalami masalah latensi, lakukan hal berikut:
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:
Di konsol Google Cloud, buka halaman Cloud Run:
Pilih layanan atau tugas dari daftar.
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.
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.
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.