aws sdk — пример AWS SDK для PHP для генерации события CloudWatch (putEvents)

Я хочу создать событие в CloudWatch, вызвав putEVents в AWS PHP SDK 3.

Я проверил документ в Интернете, особенно в https://docs.aws.amazon.com/sdk-for-php/v3/developer-guide/cw-examples-sending-events.html

Но я продолжаю получать сообщение об ошибке «Детали искажены». Любая помощь в этом? В идеале пример, который работает, очень помог бы.

Я использую следующее:

$client = new CloudWatchEventsClient([
'region' => 'us-west-2',
'version' => 'latest'
]);

try {
$result = $client->putEvents([
'Entries' => [ // REQUIRED
[
'Detail' => '4',
'DetailType' => 'sec',
'Resources' => ['ec2'],
'Source' => 'LocalApp'
],
],
]);
var_dump($result);
} catch (AwsException $e) {
// output error message if fails
error_log($e->getMessage());
}

Большое спасибо.

0

Решение

Ваша ошибка вызвана Detail параметр в putEvents(), Этот параметр является строкой json.

$detail->key = "key";
$detail->value = "4";

$result = $client->putEvents([
'Entries' => [ // REQUIRED
[
'Detail' => json_encode($detail),
'DetailType' => 'sec',
'Resources' => ['ec2'],
'Source' => 'LocalApp'
],
],
]);
1

Другие решения

Других решений пока нет …