'detail' 필드에 임의의 데이터가 포함된 CloudWatch 예약 이벤트 생성

'detail' 필드에 임의의 데이터가 포함된 CloudWatch 예약 이벤트 생성

작업을 트리거하는 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

완벽한 대답은 아니지만 환경 변수를 사용하여 Lambda 작업과 통신하게 되었습니다.

https://docs.aws.amazon.com/lambda/latest/dg/env_variables.html

관련 정보