AWS CDKを使用してLambda関数をEventBridgeトリガーとして設定する方法


まず、AWS CDKをインストールし、プロジェクトをセットアップします。次に、CDKアプリケーション内でLambda関数を定義します。以下は、TypeScriptを使用したCDKアプリケーションの例です。

import * as cdk from 'aws-cdk-lib';
import * as lambda from 'aws-cdk-lib/aws-lambda';
import * as events from 'aws-cdk-lib/aws-events';
import * as targets from 'aws-cdk-lib/aws-events-targets';
const app = new cdk.App();
const stack = new cdk.Stack(app, 'MyStack');
// Lambda関数を定義
const myFunction = new lambda.Function(stack, 'MyFunction', {
  code: lambda.Code.fromAsset('path/to/code'),
  handler: 'index.handler',
  runtime: lambda.Runtime.NODEJS_14_X
});
// EventBridgeルールを定義し、Lambda関数をトリガーとして設定
const rule = new events.Rule(stack, 'MyRule', {
  eventPattern: {
    source: ['my-event-source'],
    detailType: ['my-event-type']
  }
});
rule.addTarget(new targets.LambdaFunction(myFunction));
app.synth();

上記の例では、CDKアプリケーション内でLambda関数を定義し、EventBridgeルールを作成しています。EventBridgeルールのeventPatternには、トリガー条件を指定します。この例では、my-event-sourcemy-event-typeにマッチするイベントが発生した場合にLambda関数がトリガーされます。

このコードをデプロイするには、CDKコマンドを使用します。以下のコマンドを実行して、CDKアプリケーションをデプロイします。

cdk deploy

以上で、AWS CDKを使用してLambda関数をEventBridgeのトリガーとして設定する手順が完了です。これにより、特定のイベントが発生した際にLambda関数が自動的に実行されるようになります。

この記事では、AWS CDKを使用してLambda関数をEventBridgeトリガーとして設定する方法を説明しました。これにより、サーバーレスアプリケーションの開発をシンプルかつ効率的に行うことができます。詳細な情報については、AWS CDKの公式ドキュメントを参照してください。