PHP クライアント ライブラリは、デフォルトでリクエスト ID などのレスポンス メタデータをロギングします。また、オプション パラメータ withResponseMetadata
を true
に設定して、クライアント サービス メソッドを呼び出すときにレスポンス メタデータをプログラムで取得することもできます。
クライアント サービス メソッドを呼び出した後、呼び出すメソッドに応じて、サービス クライアントやストリームなどの関連オブジェクトから GoogleAdsResponseMetadata
を取得できます。このオブジェクトには、getMetadata()
と getRequestId()
が含まれます。これらは、レスポンス メタデータと API 呼び出しのリクエスト ID をそれぞれ返します。getMetadata()
メソッドは次のような配列を返します。
object(Google\Ads\GoogleAds\Lib\V19\GoogleAdsResponseMetadata)#51 (1) {
["metadata":"Google\Ads\GoogleAds\Lib\V19\GoogleAdsResponseMetadata":private]=>
array(17) {
["content-disposition"]=>
array(1) {
[0]=>
string(10) "attachment"
}
["request-id"]=>
array(1) {
[0]=>
string(22) "REQUEST_ID"
}
...
}
}
getRequestId()
メソッドを使用すると、メタデータ配列からリクエスト ID を抽出するプロセスが簡素化され、手動で解析する手間を省くことができます。
以降のセクションでは、各メソッドの GoogleAdsResponseMetadata
を取得する方法について説明します。
SearchStream
GoogleAdsResponseMetadata
のオブジェクトを取得するには、ストリーム オブジェクトで getResponseMetadata()
を呼び出します。
$stream = $googleAdsServiceClient->searchStream(
SearchGoogleAdsStreamRequest::build($customerId, $query),
['withResponseMetadata' => true]
);
// Prints the request ID.
print $stream->getResponseMetadata()->getRequestId() . PHP_EOL;
$stream->getResponseMetadata()
は GoogleAdsResponseMetadata
のオブジェクトです。
検索とその他のミューテーション メソッド
GoogleAdsResponseMetadata
のオブジェクトを取得するには、クライアント オブジェクトで getResponseMetadata()
を呼び出します。
// Retrieves objects.
$response = $googleAdsServiceClient->search(
SearchGoogleAdsRequest::build($customerId, $query),
['withResponseMetadata' => true]
);
// Prints the request ID.
print $googleAdsServiceClient->getResponseMetadata()->getRequestId() . PHP_EOL;
// Mutates campaigns.
$response = $campaignServiceClient->mutateCampaigns(
MutateCampaignsRequest::build($customerId, $campaignOperations),
['withResponseMetadata' => true]
);
// Prints the request ID.
print $campaignServiceClient->getResponseMetadata()->getRequestId() . PHP_EOL;
$campaignServiceClient->getResponseMetadata()
と $googleAdsServiceClient->getResponseMetadata()
は GoogleAdsResponseMetadata
のオブジェクトです。