AWS CloudWatchEvents не запускается при инициализации через PHP SDK

Для моего приложения у меня есть AWS Cloudwatch Event, который проходит со скоростью 60 минут. Пользователь может запустить это событие, которое, кстати, вызывает лямбда-функцию AWS, нажав кнопку, которая вызовет следующее php фрагмент кода:

      //CREATE CLIENT
      $client = new CloudWatchEventsClient([
          'credentials' => $GLOBALS['AWS-SDK'],
          'region' => 'eu-central-1',
          'version' => '2015-10-07'
      ]);

      //DELETE TARGET FROM RULE -------
      try {
        $result = $client->removeTargets([
          'Force' => true,
          'Ids' => ['XXX'],
          'Rule' => $ID,
        ]);


      } catch (AwsException $e) {
          //error_log($e->getMessage());
      }

      //DELETE RULE -------
      try {
          $result = $client->deleteRule(array(
              'Name' => $ID
          ));


      } catch (AwsException $e) {
          //error_log($e->getMessage());
      }

      //CREATE RULE -------
      try {
          $result = $client->putRule(array(
              'Name' => $ID,
              'ScheduleExpression' => 'rate(60 minutes)',
              'State' => 'ENABLED',
          ));

      } catch (AwsException $e) {
          //error_log($e->getMessage());
      }

      //SET TARGET FOR CREATED RULE -------
      try {
          $result = $client->putTargets([
              'Rule' => $ID,
              'Targets' => [
                  [
                      'Arn' => 'XXX',
                      'Id' => 'XXX',
                      'Input' => $JSON
                  ],
              ],
          ]);

      } catch (AwsException $e) {
          //error_log($e->getMessage());
      }
    }

Это тот же код, который я использую, чтобы инициализировать событие со скоростью 60 минут, которые работают как шарм.

Но по какой-то причине я не могу начать весь процесс самостоятельно. Документация AWS гласит следующее

Выражения тарифов Выражение тарифов начинается при создании правила запланированного события, а затем выполняется по его заданному расписанию.

Это должно произойти с помощью кода, который я предоставил, или я ошибаюсь в чем-то?

0 ответов

Другие вопросы по тегам