タスクをトリガーするCloudWatchスケジュールイベントによって渡される設定を使用して、固定スケジュールでLambdaタスクを実行したいと思います。ドキュメントを見るとここCloudwatch のスケジュールされたイベントは次のようになります。
{
"id": "53dc4d37-cffa-4f76-80c9-8b7d4a4d2eaa",
"detail-type": "Scheduled Event",
"source": "aws.events",
"account": "123456789012",
"time": "2015-10-08T16:53:06Z",
"region": "us-east-1",
"resources": [ "arn:aws:events:us-east-1:123456789012:rule/MyScheduledRule" ],
"detail": {}
}
event.CloudWatchEvent
私の Lambda タスクは Go で記述されており、イベントのフィールドの JSON にアクセスできることはわかりますdetail
が、カスタムの詳細を含む Cloudwatch スケジュール イベント ルールを作成する方法がわかりません。何かご意見はありますか?
答え1
# This is for AWS Sam CF
MyScheduledRule:
Type: "AWS::Events::Rule"
Properties:
Description: "ScheduledRule"
ScheduleExpression: "rate(6 minutes)"
State: "ENABLED"
Targets:
- Arn:
!GetAtt MyLambdaFunction.Arn
Id: "IdForAlert"
Input: "{\"name\": \"value\"}"
答え2
完璧な答えではありませんが、env vars を使用して Lambda タスクと通信することになりました。