Pemecahan masalah

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.