기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon EventBridge 이벤트 버스에 대한 로그 구성
이벤트 버스가 이벤트를 처리하는 방법을 자세히 설명하는 로그를 보내도록 EventBridge를 구성하여 문제 해결 및 디버깅을 지원할 수 있습니다.
EventBridge가 지정된 이벤트 버스에 대한 로그를 전송하는 로그 대상으로 다음 AWS 서비스를 선택할 수 있습니다.
Amazon CloudWatch Logs
EventBridge는 지정된 CloudWatch Logs 로그 그룹에 로그를 전송합니다.
CloudWatch Logs를 사용하면 사용하는 모든 시스템, 애플리케이션 및 AWS 서비스의 로그를 확장성이 뛰어난 단일 서비스로 중앙 집중화할 수 있습니다. 자세한 내용은 Amazon CloudWatch Logs 사용 설명서의 로그 그룹 및 로그 스트림 작업을 참조하세요.
Amazon Data Firehose
EventBridge는 Firehose 전송 스트림에 로그를 전송합니다.
Amazon Data Firehose는 지원되는 타사 서비스 공급자가 소유한 사용자 지정 HTTP 엔드포인트 또는 HTTP 엔드포인트뿐만 아니라 특정 AWS 서비스와 같은 대상에 실시간 스트리밍 데이터를 제공하기 위한 완전관리형 서비스입니다. 자세한 내용은 Amazon Data Firehose 사용 안내서의 Amazon Data Firehose 전송 스트림 생성을 참조하세요.
Amazon S3
EventBridge는 로그를 Amazon S3 객체로 지정된 버킷에 전송합니다.
Amazon S3는 업계 최고의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스입니다. 자세한 내용은 Amazon Simple Storage Service 사용 설명서의 Amazon S3에서 객체 업로드, 다운로드 및 작업을 참조하세요.
이벤트 버스에 대한 로깅 작동 방식
EventBridge는 다음에 대한 로그를 생성합니다.
-
이벤트 버스의 규칙과 일치하는 모든 AWS 서비스 이벤트
-
이벤트가 성공적으로 수집되었는지 또는 규칙과 일치하는지 여부에 관계없이 다음 메서드에 의해 전달되는 모든 이벤트:
아카이브에서 재생되는 이벤트
를 통해 버스로 전송되는 이벤트 PutEvents
EventBridge는 관리형 규칙과만 일치하는 이벤트를 로깅하지 않습니다.
선택한 각 로그 대상으로 전송된 로그 데이터는 동일합니다.
다음과 같은 방법으로 EventBridge가 선택한 대상으로 보내는 로그를 사용자 지정할 수 있습니다.
EventBridge가 선택한 대상으로 로그를 전송하는 단계를 결정하는 로그 수준을 지정할 수 있습니다. 자세한 내용은 이벤트 버스 로그 수준 지정 단원을 참조하십시오.
-
EventBridge에 다음과 같은 보다 세분화된 정보가 포함되는지 여부를 지정할 수 있습니다.
이벤트 세부 정보
대상 입력 정보
대상 요청 정보
자세한 내용은 이벤트 버스 로그에 세부 데이터 포함 단원을 참조하십시오.
로그 전송 고려 사항
이벤트 버스에 대한 로깅을 구성할 때 다음 사항을 고려해야 합니다.
이벤트 버스 로그 레코드는 최선을 다해 전송됩니다. 로깅을 위해 올바르게 구성된 이벤트 버스에 대한 대부분의 요청은 전달된 로그 레코드를 생성합니다. 이벤트 버스 로깅의 완전성과 적시성은 보장되지 않습니다.
경우에 따라 이벤트 버스 로그 레코드 자체를 전달하면 이벤트가 생성되어 EventBridge로 전송되므로 로그 레코드 전송이 중단될 수 있습니다. 이러한 이유로 EventBridge는 다음 이벤트를 로깅하지 않습니다.
AWS KMS
Decrypt
고객 관리형 키를 사용하여 암호화된 로그 레코드가 로그 대상으로 전송될 때 생성되는 및GenerateDataKey
이벤트입니다.PutRecordBatch
이벤트 버스 로그를 전송하여 생성된 Firehose의 이벤트입니다.
-
S3 로그 대상의 경우 EventBridge에 대한 이벤트 알림이 활성화된 대상 버킷을 지정하면 로그 전송이 중단될 수 있으므로 권장되지 않습니다.
암호화 로깅
로그를 전송할 때 EventBridge는 이벤트 버스에 지정된 KMS 키로 각 로그 레코드의 detail
및 error
섹션을 암호화합니다. 전송된 레코드는 복호화된 다음 로그 대상에 지정된 KMS 키로 다시 암호화됩니다.
자세한 내용은 이벤트 버스 로그 암호화 단원을 참조하십시오.
이벤트 버스 로깅 권한 지정
이벤트 버스에서 로깅을 활성화하려면 EventBridge가 해당 버스에서 로그를 전송할 수 있는 권한을 부여해야 합니다. 이벤트 버스에 AllowVendedLogDeliveryForResource를 부여하는 정책을 추가합니다.
자세한 내용은 CloudWatch Logs 사용 설명서의 서비스별 권한을 참조하세요.
이벤트 버스 로그 수준 지정
EventBridge가 선택한 로그 대상에 로깅하는 이벤트 처리 단계의 유형을 지정할 수 있습니다.
로그에 포함할 다음 세부 정보 수준 중에서 선택합니다. 로그 수준은 이벤트 버스에 지정된 모든 로그 대상에 적용됩니다. 각 로그 수준에는 이전 로그 수준의 단계가 포함됩니다.
-
OFF - EventBridge는 로그를 전송하지 않습니다. 이 값이 기본값입니다.
-
오류 - EventBridge는 이벤트 처리 및 대상 전송 중에 생성된 오류와 관련된 모든 로그를 전송합니다.
-
INFO - EventBridge는 오류와 관련된 모든 로그와 이벤트 처리 중에 수행되는 주요 단계를 전송합니다.
-
추적 - EventBridge는 이벤트 처리의 모든 단계에서 생성된 모든 로그를 전송합니다.
다음 표에는 각 로그 수준에 포함된 이벤트 처리 단계가 나열되어 있습니다.
단계 | TRACE | INFO | ERROR | OFF |
---|---|---|---|---|
이벤트 수집 |
x | x | ||
이벤트 수집 실패 |
x | x | x | |
이벤트 수신됨 |
x | |||
호출 시도 시작됨 |
x | |||
호출 시도 영구 실패 |
x | x | x | |
호출 시도 재시도 가능 실패 |
x | x | x | |
호출 시도 성공 |
x | |||
호출 시도 제한됨 |
x | x | x | |
호출 DLQ |
x | x | x | |
호출 실패 |
x | x | x | |
호출 시작됨 |
x | x | ||
호출 성공 |
x | x | ||
호출 스로틀 시작됨 |
x | x | x | |
일치하는 규칙 없음 |
x | x | ||
규칙 일치 |
x | x | ||
규칙 일치 시작됨 |
x |
이벤트 버스 로그에 세부 데이터 포함
EventBridge가 생성하는 로그에 더 세분화된 정보를 포함하도록를 지정할 수 있습니다. 이 데이터는 문제 해결 및 디버깅에 유용할 수 있습니다. 이 옵션을 선택하면 EventBridge는 지정된 모든 로그 대상의 관련 레코드에이 데이터를 포함합니다.
세부 정보에는 다음 필드가 포함됩니다.
event_detail
: 이벤트 자체의 세부 정보입니다.target_input
: EventBridge가 대상으로 보내는 요청입니다.target_properties
:
이벤트 버스 로그에서 데이터 잘라내기
로그 대상 제약으로 인해 EventBridge는 로그 레코드를 1MB로 제한합니다. 로그 레코드가이 제한을 초과하면 EventBridge는 다음 필드를 다음 순서로 제거하여 레코드를 잘라냅니다.
-
target_input
-
target_properties
-
target_response_body
EventBridge는 필요한 경우 다음 로그 레코드 유형에서 event_detail
필드를 제거합니다.
EVENT_RECEIVED
EVENT_INGESTED
EVENT_INGESTED_FAILED
RULE_MATCH_STARTED
잘라내야 하는 경우 EventBridge는 전체 필드를 제거합니다.
EventBridge가 이벤트에서 필드를 자르는 경우 dropped_fields
필드에는 잘라낸 데이터 필드 목록이 포함됩니다.
이벤트 버스 로그의 오류 보고
EventBridge에는 사용 가능한 경우 오류 상태를 나타내는 단계에 오류 데이터도 포함됩니다. 이러한 단계는 다음과 같습니다.
EVENT_INGEST_FAILURE
INVOCATION_THROTTLE_START
INVOCATION_ATTEMPT_THROTTLE
INVOCATION_ATTEMPT_RETRYABLE_FAILURE
INVOCATION_ATTEMPT_PERMANENT_FAILURE
INVOCATION_FAILURE
INVOCATION_DLQ