Troubleshooting

Tracing GRPC issues

Before you begin

Be sure to initialize and enable write permissions before writing to your log file. In the following example, the log file is named /var/log/grpc.log :

 touch  
/var/log/grpc.log 
 chmod  
 666 
  
/var/log/grpc.log 

If you encounter file permissions issues, you might need to preface the previous commands with sudo .

Logging to a file

To save gRPC logs to a file, add the following lines to your php.ini file:

  grpc.grpc_verbosity=debug 
 grpc.grpc_trace=all,-timer_check 
 grpc.log_filename=/var/log/grpc.log 
 

To write logs to stderr instead, exclude the last line from the previous example. For more information about other options, see gRPC environment variables .

Error Details

Google Cloud services follow AIP-193 guidelines when returning errors. Google Cloud services use a defined set of standard error payloads, which you can find in google.rpc.error_details.proto . These cover the most common API errors, such as quota failure and invalid parameters.

API errors emitted by PHP client libraries contain message , code , status , and details fields. Within the details field, additional google.rpc.ErrorInfo data appears in reason , domain , and metadata fields. The following sample shows an error that might appear if you called the Translation library with a cloud project before enabling the 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 
"
                }
            ]
        }
    ]
}

For more information about the general error model for Google APIs, see Cloud API Errors .

Create a Mobile Website
View Site in Mobile | Classic
Share by: