Melacak masalah GRPC
Sebelum memulai
Pastikan untuk melakukan inisialisasi dan mengaktifkan izin tulis sebelum menulis ke file log Anda. Pada contoh berikut, file log diberi nama /var/log/grpc.log
:
touch /var/log/grpc.log
chmod 666 /var/log/grpc.log
Jika mengalami masalah izin file, Anda mungkin perlu mengawali
perintah sebelumnya dengan sudo
.
Logging ke file
Untuk menyimpan log gRPC ke file, tambahkan baris berikut ke file php.ini
Anda:
grpc.grpc_verbosity=debug
grpc.grpc_trace=all,-timer_check
grpc.log_filename=/var/log/grpc.log
Untuk menulis log ke stderr
, kecualikan baris terakhir dari contoh sebelumnya. Untuk informasi selengkapnya tentang opsi lainnya, lihat variabel lingkungan gRPC.
Detail Error
Layanan Google Cloud mengikuti panduan AIP-193 saat menampilkan error. Layanan Google Cloud menggunakan serangkaian payload error standar yang telah ditentukan, yang dapat Anda temukan di google.rpc.error_details.proto. Hal ini mencakup error API yang paling umum, seperti kegagalan kuota dan parameter tidak valid.
Error API yang dikeluarkan oleh library klien PHP berisi kolom message
, code
, status
, dan details
.
Dalam kolom details
, data google.rpc.ErrorInfo
tambahan akan muncul di kolom
reason
, domain
, dan metadata
.
Contoh berikut menunjukkan error yang mungkin muncul jika Anda memanggil
library Translation dengan project cloud sebelum mengaktifkan Translate API:
Google\ApiCore\ApiException: { "reason": "SERVICE_DISABLED", "domain": "googleapis.com", "errorInfoMetadata": { "consumer": "projects\PROJECT_ID", "service": "translate.googleapis.com" }, "message": "Cloud Translation API has not been used in project PROJECT_ID before or it is disabled. Enable it by visiting https:\/\/console.developers.google.com\/apis\/api\/translate.googleapis.com\/overview?project=PROJECT_ID then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.", "code": 7, "status": "PERMISSION_DENIED", "details": [ { "@type": "google.rpc.errorinfo-bin", "reason": "SERVICE_DISABLED", "domain": "googleapis.com", "metadata": { "consumer": "projects\PROJECT_ID", "service": "translate.googleapis.com" } }, { "@type": "google.rpc.help-bin", "links": [ { "description": "Google developers console API activation", "url": "https:\/\/console.developers.google.com\/apis\/api\/translate.googleapis.com\/overview?project=PROJECT_ID" } ] } ] }
Untuk mengetahui informasi selengkapnya tentang model error umum untuk Google API, lihat Error Cloud API.