Melacak masalah GRPC
Sebelum memulai
Pastikan untuk menginisialisasi dan mengaktifkan izin tulis sebelum menulis ke file log. Dalam contoh berikut, file log diberi nama /var/log/grpc.log:
touch /var/log/grpc.logchmod 666 /var/log/grpc.log
Jika Anda mengalami masalah izin file, Anda mungkin perlu mengawali perintah
sebelumnya dengan sudo.
Mencatat 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 mengetahui informasi selengkapnya tentang opsi lain, lihat
variabel lingkungan gRPC.
Detail Kesalahan
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. Error ini mencakup error API yang paling umum, seperti kegagalan kuota dan parameter yang 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 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.