GRPC-Probleme nachvollziehen
Hinweise
Sie müssen Schreibberechtigungen initialisieren und aktivieren, bevor Sie in die Protokolldatei schreiben können. Im folgenden Beispiel heißt die Protokolldatei /var/log/grpc.log:
touch /var/log/grpc.logchmod 666 /var/log/grpc.log
Wenn Probleme mit Dateiberechtigungen auftreten, müssen Sie die vorherigen Befehle möglicherweise mit sudo einleiten.
Protokollierung in eine Datei
Wenn Sie gRPC-Protokolle in einer Datei speichern möchten, fügen Sie der php.ini-Datei die folgenden Zeilen hinzu:
grpc.grpc_verbosity=debug
grpc.grpc_trace=all,-timer_check
grpc.log_filename=/var/log/grpc.log
Wenn Sie Logs stattdessen in stderr schreiben möchten, entfernen Sie die letzte Zeile aus dem vorherigen Beispiel. Weitere Informationen zu anderen Optionen finden Sie unter gRPC-Umgebungsvariablen.
Fehlerdetails
Google Cloud-Dienste folgen den Richtlinien von AIP-193, wenn Fehler zurückgegeben werden. Google Cloud-Dienste verwenden eine Reihe standardmäßiger Fehlernutzlasten. Sie finden diese unter google.rpc.error_details.proto. Fehlerdetails decken die gängigsten API-Fehler wie Kontingentfehler und ungültige Parameter ab.
API-Fehler, die von PHP-Clientbibliotheken ausgegeben werden, enthalten die Felder message, code, status und details.
Im Feld details werden zusätzliche google.rpc.ErrorInfo-Daten in den Feldern reason, domain und metadata angezeigt.
Im folgenden Beispiel wird ein Fehler angezeigt, der auftreten kann, wenn Sie die Übersetzungsbibliothek mit einem Cloud-Projekt aufgerufen haben, bevor Sie die Übersetzungs API aktiviert haben:
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"
}
]
}
]
}Weitere Informationen zum allgemeinen Fehlermodell für Google APIs finden Sie unter Cloud API-Fehler.