refresh_date: 2023-01-06
Google Cloud memberi Anda alat untuk memantau keandalan project dengan Google Cloud Monitoring dan men-debug masalah dengan log error Google Cloud Logging. Setiap kali terjadi kegagalan saat memenuhi maksud pengguna, pipeline Google Home Analytics akan mencatat kegagalan tersebut pada metrik Anda, dan memublikasikan log error di log project Anda.
Ada dua langkah untuk memecahkan masalah error:
- Pantau status project Anda dengan metrik smart home.
- Selidiki masalah dengan memeriksa deskripsi error mendetail di log error.
Memantau error
Anda dapat menggunakan Google Cloud Monitoring dashboards untuk mengakses metrik project. Ada beberapa diagram utama yang sangat berguna untuk memantau kualitas dan proses debug:
- Diagram Tingkat Keberhasilan adalah diagram pertama yang harus dilihat saat Anda memantau keandalan project. Penurunan dalam diagram ini dapat menunjukkan gangguan untuk sebagian atau seluruh basis pengguna Anda. Sebaiknya pantau grafik ini dengan cermat untuk melihat adanya ketidakberaturan setelah setiap perubahan atau update pada project Anda.
- Diagram Perincian Error paling berguna untuk memecahkan masalah pada integrasi Anda. Untuk setiap error yang ditandai dalam diagram persentase keberhasilan, kode error akan ditampilkan dalam perincian error. Anda dapat melihat error yang ditandai oleh Google Home platform dan cara memecahkan masalahnya dalam tabel di bawah.
Kode Error Platform
Berikut beberapa kode error umum yang mungkin Anda lihat di log project untuk mengidentifikasi masalah yang ditemukan oleh Google Home platform. Lihat tabel berikut untuk mengetahui informasi pemecahan masalah.
Kode Error | Deskripsi |
---|---|
BACKEND_FAILURE_URL_ERROR |
Google telah menerima kode error HTTP 4xx selain 401 dari layanan Anda.
Gunakan requestId di GCP Logging untuk memeriksa log layanan smart
home Anda.
|
BACKEND_FAILURE_URL_TIMEOUT |
Permintaan Google ke layanan Anda telah habis waktunya.
Pastikan layanan Anda online, menerima koneksi, dan tidak melebihi kapasitas. Selain itu, pastikan perangkat target dinyalakan, online, dan disinkronkan. |
BACKEND_FAILURE_URL_UNREACHABLE |
Google telah menerima kode error HTTP 5xx dari layanan Anda.
Gunakan requestId di GCP Logging untuk memeriksa log layanan smart
home Anda.
|
DEVICE_NOT_FOUND |
Perangkat tidak ada di sisi layanan partner.
Hal ini biasanya menunjukkan kegagalan dalam sinkronisasi data atau kondisi persaingan. |
GAL_BAD_3P_RESPONSE |
Google tidak dapat mengurai respons dari layanan penautan akun Anda
karena format atau nilai yang tidak valid dalam payload.
Gunakan requestId di GCP Logging untuk memeriksa log error
di layanan penautan akun Anda.
|
GAL_INTERNAL |
Terjadi error internal Google saat Google mencoba mengambil token akses.
Jika Anda melihat peningkatan frekuensi error ini di GCP Logging, hubungi kami untuk mengetahui informasi selengkapnya. |
GAL_INVALID_ARGUMENT |
Terjadi error internal Google saat Google mencoba mengambil token akses.
Jika Anda melihat peningkatan frekuensi error ini di GCP Logging, hubungi kami untuk mengetahui informasi selengkapnya. |
GAL_NOT_FOUND |
Token akses dan token refresh pengguna yang disimpan di Google menjadi tidak valid dan tidak dapat diperbarui lagi. Pengguna harus menautkan ulang akunnya untuk terus menggunakan layanan Anda.
Jika Anda melihat peningkatan frekuensi error ini di GCP Logging, hubungi kami untuk mengetahui informasi selengkapnya. |
GAL_PERMISSION_DENIED |
Terjadi error internal Google saat berbagi token tidak
diizinkan.
Jika Anda melihat peningkatan frekuensi error ini di GCP Logging, hubungi kami untuk mengetahui informasi selengkapnya. |
GAL_REFRESH_IN_PROGRESS |
Token akses pengguna telah habis masa berlakunya dan upaya serentak lainnya untuk
memperbaruinya sudah berlangsung.
Ini bukan masalah dan Anda tidak perlu melakukan tindakan apa pun. |
INVALID_AUTH_TOKEN |
Google telah menerima kode error HTTP 401 dari layanan Anda.
Token akses belum habis masa berlakunya, tetapi layanan Anda telah membatalkan validasinya. Gunakan requestId di GCP Logging untuk memeriksa log layanan smart home Anda.
|
INVALID_JSON |
Respons JSON tidak dapat diurai atau dipahami.
Periksa struktur respons JSON Anda untuk mengetahui apakah ada sintaksis yang tidak valid, seperti kurung yang tidak cocok, koma yang hilang, karakter yang tidak valid. |
OPEN_AUTH_FAILURE |
Token akses pengguna telah habis masa berlakunya dan Google tidak dapat memperbaruinya,
atau Google telah menerima kode error HTTP 401 dari layanan Anda.
Jika Anda melihat peningkatan rasio kode ini, periksa apakah Anda juga melihat peningkatan rasio error terkait permintaan token refresh atau intent smart home. |
PARTNER_RESPONSE_INVALID_ERROR_CODE |
Respons menunjukkan kode error yang tidak dikenal.
Jika respons permintaan Anda menunjukkan error, pastikan untuk menggunakan salah satu yang diberikan dari kode error yang didukung. |
PARTNER_RESPONSE_INVALID_PAYLOAD |
Kolom respons payload tidak dapat diuraikan sebagai Objek
JSON.
Periksa apakah kolom payload dalam respons permintaan Anda memiliki tanda kurung yang cocok dan terstruktur dengan benar sebagai kolom JSON. |
PARTNER_RESPONSE_INVALID_STATUS |
Respons tidak menunjukkan status, atau menunjukkan status yang salah.
Respons terhadap permintaan pemenuhan maksud harus menunjukkan status dengan SUCCESS, OFFLINE, ERROR, EXCEPTIONS . Anda
dapat menemukan informasi selengkapnya tentang
penanganan error dan pengecualian.
|
PARTNER_RESPONSE_MISSING_COMMANDS_AND_DEVICES |
Satu atau beberapa maksud yang ada dalam permintaan tidak ada dalam
respons.
Verifikasi bahwa respons eksekusi Anda disusun dengan benar dan hasil untuk semua maksud dari permintaan ada dalam respons Anda. |
PARTNER_RESPONSE_MISSING_DEVICE |
Satu atau beberapa perangkat yang ada dalam permintaan tidak ada dalam
respons.
Pastikan respons eksekusi Anda disusun dengan benar dan semua ID perangkat dari permintaan ada dalam respons Anda. |
PARTNER_RESPONSE_MISSING_PAYLOAD |
Respons tidak berisi kolom payload .
Pastikan untuk menyertakan kolom payload dalam respons permintaan Anda. Anda dapat mempelajari lebih lanjut cara membuat respons eksekusi dengan benar. |
PARTNER_RESPONSE_NOT_OBJECT |
Respons tidak dapat diuraikan sebagai Objek JSON.
Periksa semua kolom dalam respons permintaan Anda untuk menemukan karakter yang tidak diinginkan, kurung yang tidak cocok atau kesalahan pemformatan. Beberapa karakter unicode mungkin tidak didukung. Pastikan juga respons Anda disusun dengan benar sebagai objek JSON. |
PROTOCOL_ERROR |
Gagal memproses permintaan.
Gunakan requestId di Google Cloud Logging untuk memeriksa
log layanan smart home Anda.
|
RELINK_REQUIRED |
Respons menunjukkan error relinkRequired , yang
mendorong pengguna untuk menautkan ulang akun Google dan partner mereka.
Lihat kode error yang didukung untuk mengetahui informasi selengkapnya. |
RESPONSE_TIMEOUT |
Waktu permintaan habis saat menunggu respons.
Periode waktu tunggu untuk mengirim respons adalah 9 detik sejak permintaan dikirim. Pastikan untuk mengirimkan respons dalam jangka waktu ini. |
RESPONSE_UNAVAILABLE |
Tidak ada respons yang diterima, atau respons tidak menunjukkan status.
Respons terhadap permintaan pemenuhan maksud harus disusun sesuai dengan dokumen smart home dan menunjukkan status. |
TRANSIENT_ERROR |
Error sementara adalah error yang akan teratasi dengan sendirinya.
Biasanya, error ini muncul sebagai koneksi ke perangkat atau layanan yang terputus. Juga jika koneksi baru ke server tidak dapat dibuka. |
Log Penelusuran
Setelah Anda merasa nyaman memantau integrasi menggunakan metrik, langkah selanjutnya adalah memecahkan masalah error tertentu menggunakan Cloud Logging. Log error adalah entri seperti JSON dengan kolom yang berisi informasi berguna seperti waktu, kode error, dan detail terkait maksud smart home yang menyebabkan error.
Ada beberapa sistem dalam Google Cloud yang mengirim log ke project Anda setiap saat. Anda perlu menulis kueri untuk memfilter log dan menemukan log yang Anda butuhkan. Kueri dapat didasarkan pada Rentang Waktu, Resource, Tingkat Keparahan log, atau entri kustom.

Anda dapat menggunakan tombol kueri untuk membantu membuat filter kustom.

Untuk menentukan Rentang Waktu, klik tombol pemilihan rentang waktu
, lalu pilih salah satu opsi yang tersedia. Tindakan ini akan memfilter log dan menampilkan log yang berasal dari rentang waktu yang dipilih.Untuk menentukan Resource, klik dropdown Resource, lalu pilih Google Assistant Action Project. Tindakan ini akan menambahkan filter dalam kueri Anda untuk menampilkan log yang berasal dari project Anda.
Gunakan tombol Severity untuk memfilter menurut Emergency, Info, Debug, dan tingkat log severity lainnya.
Anda juga dapat menggunakan kolom Kueri di Logs Explorer
untuk memasukkan entri kustom. Mesin kueri yang digunakan oleh kolom ini mendukung
kueri dasar seperti pencocokan string, dan jenis kueri yang lebih canggih termasuk
pembanding (<, >=, !=
) dan operator boolean (AND, OR, NOT
).
Misalnya, entri kustom di bawah akan menampilkan error yang
berasal dari jenis perangkat LIGHT
:
resource.type = "assistant_action_project" AND severity = ERROR AND jsonPayload.executionLog.executionResults.actionResults.device.deviceType = "LIGHT"
Buka Pustaka Kueri untuk menemukan contoh lainnya tentang cara membuat kueri log secara efektif.
Menguji Perbaikan
Setelah Anda mengidentifikasi error dan menerapkan update untuk memperbaikinya, sebaiknya uji perbaikan Anda secara menyeluruh dengan Google Home Test Suite. Kami menyediakan panduan pengguna tentang cara menggunakan Test Suite, yang memandu Anda menguji perubahan secara efektif.
Materi Pembelajaran
Dokumen ini memberikan langkah-langkah untuk memecahkan masalah error di Smart Home Action Anda. Anda juga dapat melihat codelab kami untuk mempelajari lebih lanjut cara men-debug:
- Codelab Men-debug Smart Home: Panduan memulai cepat untuk men-debug integrasi cloud smart home.
- Codelab Proses Men-debug Local Home: Panduan memulai cepat untuk men-debug integrasi lokal smart home.