AWS SDK for Java 1.x は 2024 年 7 月 31 日にメンテナンスモードに移行し、2025 年 12 月 31 end-of-support
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CloudWatch にイベントを送信する
CloudWatch Events は、AWS リソースの変更を示すシステムイベントのほぼリアルタイムのストリームを、Amazon EC2 インスタンス、Lambda 関数、Kinesis ストリーム、Amazon ECS タスク、Step Functions ステートマシン、Amazon SNS トピック、Amazon SQS キュー、または組み込みターゲットに振り分けます。簡単なルールを使用して、一致したイベントを 1 つ以上のターゲット関数またはストリームに振り分けることができます。
イベントの追加
カスタム CloudWatch イベントを追加するには、各イベントに関する詳細情報を提供している PutEventsRequestEntry オブジェクトを 1 つ以上含む PutEventsRequest オブジェクトを使用して AmazonCloudWatchEventsClient の putEvents
メソッドを呼び出します。イベントのソースとタイプ、イベントに関連付けられたリソースなど、エントリの複数のパラメータを指定できます。
注記
putEvents
への呼び出しごとに最大 10 個のイベントを指定できます。
インポート
import com.amazonaws.services.cloudwatchevents.AmazonCloudWatchEvents; import com.amazonaws.services.cloudwatchevents.AmazonCloudWatchEventsClientBuilder; import com.amazonaws.services.cloudwatchevents.model.PutEventsRequest; import com.amazonaws.services.cloudwatchevents.model.PutEventsRequestEntry; import com.amazonaws.services.cloudwatchevents.model.PutEventsResult;
Code
final AmazonCloudWatchEvents cwe = AmazonCloudWatchEventsClientBuilder.defaultClient(); final String EVENT_DETAILS = "{ \"key1\": \"value1\", \"key2\": \"value2\" }"; PutEventsRequestEntry request_entry = new PutEventsRequestEntry() .withDetail(EVENT_DETAILS) .withDetailType("sampleSubmitted") .withResources(resource_arn) .withSource("aws-sdk-java-cloudwatch-example"); PutEventsRequest request = new PutEventsRequest() .withEntries(request_entry); PutEventsResult response = cwe.putEvents(request);
ルールの追加
ルールを作成または更新するには、ルールの名前を含む PutRuleRequest と、イベントパターン、ルールと関連付ける IAM ロール、およびルールの実行頻度を説明するスケジュール式などを含む任意指定のパラメータを AmazonCloudWatchEventsClient の putRule
メソッドを使用して呼び出します。
インポート
import com.amazonaws.services.cloudwatchevents.AmazonCloudWatchEvents; import com.amazonaws.services.cloudwatchevents.AmazonCloudWatchEventsClientBuilder; import com.amazonaws.services.cloudwatchevents.model.PutRuleRequest; import com.amazonaws.services.cloudwatchevents.model.PutRuleResult; import com.amazonaws.services.cloudwatchevents.model.RuleState;
Code
final AmazonCloudWatchEvents cwe = AmazonCloudWatchEventsClientBuilder.defaultClient(); PutRuleRequest request = new PutRuleRequest() .withName(rule_name) .withRoleArn(role_arn) .withScheduleExpression("rate(5 minutes)") .withState(RuleState.ENABLED); PutRuleResult response = cwe.putRule(request);
ターゲットの追加
ターゲットは、ルールがトリガーされたときに呼び出されるリソースです。ターゲット例には、Amazon EC2 インスタンス、Lambda 関数、Kinesis ストリーム、Amazon ECS タスク、Step Functions ステートマシン、組み込みターゲットが含まれます。
ルールにターゲットを追加するには、更新するルールを含む PutTargetsRequest とルールに追加するターゲットのリストを使用して AmazonCloudWatchEventsClient の putTargets
メソッドを呼び出します。
インポート
import com.amazonaws.services.cloudwatchevents.AmazonCloudWatchEvents; import com.amazonaws.services.cloudwatchevents.AmazonCloudWatchEventsClientBuilder; import com.amazonaws.services.cloudwatchevents.model.PutTargetsRequest; import com.amazonaws.services.cloudwatchevents.model.PutTargetsResult; import com.amazonaws.services.cloudwatchevents.model.Target;
Code
final AmazonCloudWatchEvents cwe = AmazonCloudWatchEventsClientBuilder.defaultClient(); Target target = new Target() .withArn(function_arn) .withId(target_id); PutTargetsRequest request = new PutTargetsRequest() .withTargets(target) .withRule(rule_name); PutTargetsResult response = cwe.putTargets(request);
詳細情報
-
Amazon CloudWatch Events ユーザーガイドの PutEvents を使用したイベントの追加
-
Amazon CloudWatch Events ユーザーガイドのルールのスケジュール式
-
Amazon CloudWatch Events ユーザーガイドの CloudWatch イベントのイベントタイプ
-
Amazon CloudWatch Events ユーザーガイドのイベントとイベントパターン
-
Amazon CloudWatch Events API リファレンスの PutEvents
-
Amazon CloudWatch Events API リファレンスの PutTargets
-
Amazon CloudWatch Events API リファレンスの PutRule