Senden von Ereignissen an Amazon CloudWatch Events mit AWS SDK for PHP Version 3 - AWS SDK for PHP

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Senden von Ereignissen an Amazon CloudWatch Events mit AWS SDK for PHP Version 3

CloudWatch Events liefert nahezu in Echtzeit einen Stream von Systemereignissen, die Änderungen an den Ressourcen von Amazon Web Services (AWS) für verschiedene Ziele beschreiben. Mit einfachen Regeln können Sie Ereignisse zuordnen und sie zu einer oder mehreren Zielfunktionen oder Streams umleiten.

In den nachstehenden Beispielen wird Folgendes veranschaulicht:

  • Erstellen Sie eine Regel mit PutRule.

  • Fügen Sie einer Regel Ziele hinzu mit PutTargets.

  • Senden Sie benutzerdefinierte Ereignisse an CloudWatch Ereignisse mithilfe von PutEvents.

Der gesamte Beispielcode für AWS SDK for PHP ist hier verfügbar GitHub.

Anmeldeinformationen

Bevor Sie den Beispielcode ausführen, konfigurieren Sie Ihre AWS Anmeldeinformationen wie unter beschriebenAuthentifizierung AWS mit AWS SDK for PHP Version 3. Importieren Sie dann die AWS SDK for PHP, wie unter beschriebenInstallation der AWS SDK for PHP Version 3.

Erstellen einer Regel

Importe

require 'vendor/autoload.php'; use Aws\Exception\AwsException;

Beispiel-Code

$client = new Aws\cloudwatchevents\cloudwatcheventsClient([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2015-10-07' ]); try { $result = $client->putRule([ 'Name' => 'DEMO_EVENT', // REQUIRED 'RoleArn' => 'IAM_ROLE_ARN', 'ScheduleExpression' => 'rate(5 minutes)', 'State' => 'ENABLED', ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }

Fügen Sie Ziele zu einer Regel hinzu

Importe

require 'vendor/autoload.php'; use Aws\Exception\AwsException;

Beispiel-Code

$client = new Aws\cloudwatchevents\cloudwatcheventsClient([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2015-10-07' ]); try { $result = $client->putTargets([ 'Rule' => 'DEMO_EVENT', // REQUIRED 'Targets' => [ // REQUIRED [ 'Arn' => 'LAMBDA_FUNCTION_ARN', // REQUIRED 'Id' => 'myCloudWatchEventsTarget' // REQUIRED ], ], ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }

Benutzerdefinierte Ereignisse senden

Importe

require 'vendor/autoload.php'; use Aws\Exception\AwsException;

Beispiel-Code

$client = new Aws\cloudwatchevents\cloudwatcheventsClient([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2015-10-07' ]); try { $result = $client->putEvents([ 'Entries' => [ // REQUIRED [ 'Detail' => '<string>', 'DetailType' => '<string>', 'Resources' => ['<string>'], 'Source' => '<string>', 'Time' => time() ], ], ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }