翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
チュートリアル: 入力トランスフォーマーを使用して でイベントを変換する EventBridge
で EventBridge Input Transformer を使用して、ルール のターゲットに送信する前に、イベントからのテキストをカスタマイズできます。
これを行うには、イベントからのJSONパスを定義し、それらの出力をさまざまな変数に割り当てます。その後、こうした変数は、入力テンプレートで使用できるようになります。文字 < および > はエスケープできません。詳細については、「Amazon EventBridge 入力変換」を参照してください。
注記
イベントに存在しないJSONパスと一致する変数を指定すると、その変数は作成されず、出力にも表示されません。
このチュートリアルでは、detail-type: "customerCreated"
のイベントに一致するルールを作成します。入力トランスフォーマーは、変数をイベントからの type
$.detail-type JSONパスにマッピングします。次に EventBridge 、 変数を入力テンプレートに配置します「このイベントは <type> でした」。結果は次の Amazon SNS メッセージです。
"This event was of customerCreated type."
ステップ:
ステップ 1: Amazon SNSトピックを作成する
からイベントを受信するトピックを作成します EventBridge。
トピックを作成する
https://console.aws.amazon.com/sns/v3/home
で Amazon SNSコンソールを開きます。 -
ナビゲーションペインで、[トピック] を選択します。
-
[Create topic] (トピックの作成) を選択します。
-
[Type (タイプ)] で、[Standard (標準)] を選択します。
-
テーブルの名前として
eventbridge-IT-test
を入力します。 -
[Create topic] (トピックの作成) を選択します。
ステップ 2: Amazon SNSサブスクリプションを作成する
サブスクリプションを作成して、変換された情報を含む E メールを送付します。
サブスクリプションを作成するには
https://console.aws.amazon.com/sns/v3/home
で Amazon SNSコンソールを開きます。 -
ナビゲーションペインで [Subscriptions] を選択します。
-
[Create subscription] を選択します。
-
トピック でARN、ステップ 1 で作成したトピックを選択します。このチュートリアルでは、eventbridge-IT-test を選択します。
-
[Protocol (プロトコル)] として [Email (E メール)] を選択します。
-
[エンドポイント] に E メールアドレスを入力します。
-
[Create subscription] を選択します。
-
AWS 通知から受信した E メールで、[サブスクリプションを確認] を選択してサブスクリプションを確認します。
ステップ 3: ルールを作成する
Input Transformer を使用して、ターゲットに送信されるインスタンス状態情報をカスタマイズするルールを作成します。
ルールを作成するには:
で Amazon EventBridge コンソールを開きますhttps://console.aws.amazon.com/events/
。 -
ナビゲーションペインで ルール] を選択します。
-
ルールの作成 を選択します。
-
ルールの名前と説明を入力します。例えば、ルール
ARTestRule
に名前を付けます -
[Event bus] (イベントバス) では、このルールに関連付けるイベントバスを選択します。このルールをアカウントからのイベントと一致させるには、[default] (デフォルト) を選択します。アカウントの AWS サービスがイベントを発行すると、常にアカウントのデフォルトのイベントバスに移動します。
-
[Rule type] (ルールタイプ) では、[Rule with an event pattern] (イベントパターンを持つルール) を選択します。
-
次へ を選択します。
-
[Event source] (イベントソース) では、[Other] (その他) を選択します。
-
[Event pattern] (イベントパターン) では、次のように入力します。
{ "detail-type": [ "customerCreated" ] }
-
[Next] (次へ) を選択します。
-
ターゲットタイプ] では、AWS サービス] を選択します。
-
「ターゲットを選択」で、ドロップダウンリストからSNSトピックを選択します。
-
トピック で、ステップ 1 で作成した Amazon SNSトピックを選択します。このチュートリアルでは、eventbridge-IT-test を選択します。
-
[Additional settings] (追加設定) では、以下を実行します。
-
ターゲット入力の設定では、ドロップダウンリストから[Input transformer] (インプットトランスフォーマー) を選択します。
-
[Configure input transformer] (インプットトランスフォーマーの設定) を選択します。
-
[Sample events] (イベント例) では、以下を入力します。
{ "detail-type": "customerCreated" }
-
[Target input transformer] (ターゲットインプットトランスフォーマー) では、以下を実行します。
-
[Input Path] (入力パス) では、以下を入力します。
{"detail-type":"$.detail-type"}
-
[Input Template] (入力テンプレート) では、以下を入力します。
"This event was of <detail-type> type."
-
[Confirm] (確認) を選択します。
-
-
[次へ] をクリックします。
-
[次へ] をクリックします。
-
ルールの詳細を確認し、[Create rule] (ルールの作成) を選択します。
ステップ 4: テストイベントの送信
SNS トピックとルールを設定したので、テストイベントを送信して、ルールが正しく動作していることを確認します。
テストイベントを送信するには (コンソール)
で Amazon EventBridge コンソールを開きますhttps://console.aws.amazon.com/events/
。 -
ナビゲーションペインの [Event Buses] (イベントバス) を選択します。
-
[Default event bus] (デフォルトのイベントバス) タイルで、[Actions] (アクション)、[Send events] (イベントの送信) を選択します。
-
イベントソースを入力します。例えば
TestEvent
です。 -
[Detail type] (詳細タイプ) を使用する場合、
customerCreated
と入力します。 -
[Event detail] (イベントの詳細) を使用する場合、
{}
と入力します。 -
[送信] を選択します。
ステップ 5: 成功を確認する
予想される出力と一致する AWS 通知から E メールが届いた場合は、チュートリアルは正常に完了しています。
ステップ 6: リソースをクリーンアップする
このチュートリアル用に作成したリソースは、保持しない場合は削除できます。使用しなくなった AWS リソースを削除することで、 AWS アカウントへの不要な課金を防ぐことができます。
SNS トピックを削除するには
-
SNS コンソールのトピックページ
を開きます。 -
先ほど作成したトピックを選択します。
-
[削除] を選択します。
-
delete me
と入力します。 -
[削除] を選択します。
SNS サブスクリプションを削除するには
-
SNS コンソールのサブスクリプションページ
を開きます。 -
作成したサブスクリプションを選択します。
-
[Delete] (削除) を選択します。
-
[Delete] (削除) を選択します。
EventBridge ルールを削除するには (複数可)
-
EventBridge コンソールのルールページ
を開きます。 -
作成したルールを選択します。
-
[Delete] (削除) を選択します。
-
[Delete] (削除) を選択します。