Пример AWS SDK для PHP для генерации события CloudWatch (putEvents) - PullRequest
0 голосов
/ 03 октября 2018

Я хочу сгенерировать событие в 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());
}

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

1 Ответ

0 голосов
/ 04 октября 2018

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

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

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