Amazon EventBridge에 AWS Lambda 사용(CloudWatch Events) - AWS Lambda

Amazon EventBridge에 AWS Lambda 사용(CloudWatch Events)

참고

Amazon EventBridge는 이벤트를 관리하는 데 선호되는 방법입니다. CloudWatch Events와 EventBridge는 기본 서비스 및 API가 동일하지만 EventBridge가 더 많은 기능을 제공합니다. CloudWatch Events 또는 EventBridge에서 변경한 내용은 각 콘솔에 나타납니다. 자세한 내용은 Amazon EventBridge 문서를 참조하십시오.

EventBridge(CloudWatch Events)는 AWS 리소스의 상태 변경에 응답할 수 있게 해줍니다. Eventbridge에 대한 자세한 내용은 Amazon EventBridge 사용 설명서Amazon EventBridge란 무엇입니까?를 참조하세요.

리소스 상태가 변경될 경우 이벤트를 이벤트 스트림으로 자동 전송합니다. Eventbridge(CloudWatch Events)를 사용하면 스트림에서 선택된 이벤트와 일치할 경우 AWS Lambda 함수로 라우팅하여 작업을 실행하는 규칙을 생성할 수 있습니다. 예를 들어, AWS Lambda 함수를 자동으로 호출하여 EC2 인스턴스 또는 AutoScaling 그룹의 상태를 로깅할 수 있습니다.

EventBridge(CloudWatch Events)는 소스에서 이벤트를 래핑하는 이벤트 문서를 사용하여 함수를 비동기적으로 호출합니다. 다음 예제에서는 Amazon Relational Database Service의 데이터베이스 스냅샷에서 발생한 이벤트를 보여줍니다.

예 EventBridge(CloudWatch Events) 이벤트

{ "version": "0", "id": "fe8d3c65-xmpl-c5c3-2c87-81584709a377", "detail-type": "RDS DB Instance Event", "source": "aws.rds", "account": "123456789012", "time": "2020-04-28T07:20:20Z", "region": "us-east-2", "resources": [ "arn:aws:rds:us-east-2:123456789012:db:rdz6xmpliljlb1" ], "detail": { "EventCategories": [ "backup" ], "SourceType": "DB_INSTANCE", "SourceArn": "arn:aws:rds:us-east-2:123456789012:db:rdz6xmpliljlb1", "Date": "2020-04-28T07:20:20.112Z", "Message": "Finished DB Instance backup", "SourceIdentifier": "rdz6xmpliljlb1" } }

Lambda 함수를 생성하고 AWS Lambda에 이를 정기적으로 호출하도록 지시할 수도 있습니다. 고정 비율(예: 1시간 또는 15분마다 Lambda 함수 호출)을 지정하거나 Cron 식을 지정할 수 있습니다.

예 EventBridge(CloudWatch Events) 메시지 이벤트

{ "version": "0", "account": "123456789012", "region": "us-east-2", "detail": {}, "detail-type": "Scheduled Event", "source": "aws.events", "time": "2019-03-01T01:23:45Z", "id": "cdc73f9d-aea9-11e3-9d5a-835b769c0d9c", "resources": [ "arn:aws:events:us-east-2:123456789012:rule/my-schedule" ] }

Eventbridge(CloudWatch Events)를 구성하여 함수를 호출하려면

  1. Lambda 콘솔의 함수(Functions) 페이지를 엽니다.

  2. 함수 선택

  3. 함수 개요(Function overview)에서 트리거 추가(Add trigger)를 선택합니다.

  4. 트리거 유형을 EventBridge(CloudWatch Events)로 설정합니다.

  5. 규칙에서 새 규칙 생성을 선택합니다.

  6. 나머지 옵션을 구성하고 추가를 선택합니다.

표현식 예약에 대한 자세한 내용은 Rate 또는 Cron을 사용한 예약 표현식 단원을 참조하세요.

각 AWS 계정에는 소스 유형이 EventBridge(CloudWatch Events)- 일정인 고유한 이벤트 소스가 최대 100개까지 있을 수 있습니다. 이들 각각이 최대 5개의 Lambda 함수에 대한 이벤트 소스가 될 수 있습니다. 즉, AWS 계정에서 정기적으로 실행할 수 있는 Lambda 함수를 최대 500개까지 가질 수 있습니다.