2

인프라에서 일부 프로세스를 실행하는 AWS 람다 함수가 있습니다. Lambda는 CloudWatch 규칙을 사용하여 8 시간마다 트리거됩니다. 오류가 람다 프로세스에 발생하면 알림을 발생 시키려고합니다. 나는 SES를 사용하려했지만 해당 지역에서는 해당 서비스를 사용할 수 없습니다.AWS 람다 함수에 오류가있을 때 알림을 전송합니다.

나는이 문제에 대한 어떤 제안을 알고 싶은 것 :

어떻게 설정 알림에 오류가 내 람다 함수에서 발생하는 경우?

나는 제안을 찾고있다. 이 질문은 결코 내 일을 요구하지 않았습니다. 나는 어떤 공식적인 문서든지 평가할 것이다 그러나 어느 쪽이든, 어떤 도움든지 환영 받다.

답변

9

몇 가지 제안 :

배달 못한 편지 큐 : 당신의 오류 원인은 호출을 실패하면

, 당신은 SNS 주제 또는 SQS 큐에 이벤트를 보낼 Lambda Dead Letter Queue를 사용할 수 있습니다. SNS 주제로 보내면 SNS 나 이메일을 통해 직접 subscribe to the topic을 보내어 해당 주제에 메시지가 게시 될 때마다 알림을받을 수 있습니다.

멀티 지역 SES :

당신은 정말 SES 직접, SES 클라이언트가 제공하는 명시 적 영역을 인스턴스화 할 수 있습니다 사용하여 설정하는 경우 - 한 당신의 람다의 실행 역할은 적절한 권한으로, 다른 지역의 SES로 이메일을 보낼 수 있습니다. JS SES 클라이언트를 인스턴스화하는 데 여기에 documentation이 있습니다.

CloudWatch에서 로그 :

당신의 오류가 호출이, 또 다른 옵션은 그들에 실패하고 잠재적으로 경보를 집계하는 CloudWatch에서 로그 metric filter을 사용하고 실패하지 않습니다. NodeJS를 사용하는 경우 console.log(), console.error() 등을 통해 로그 아웃하면 CWLogs에 기록됩니다. 더 자세한 내용 here.

CloudWatch Alarm에 SNS 주제를 등록하고 DLQ와 동일한 방식으로 사용자에게 알릴 수 있습니다.


오류와 경험을 얻을 수 있으며 일반적인 오류를 처리하는 방법으로, 당신은 또한 그런 일이로 처리하는 DLQ/CWLogs 예에서 SNS 주제에 다른 람다를 구독 할 수 있습니다.

+0

답변 해 주셔서 감사합니다. 나는 당신에게 대답을 읽고 메트릭 필터에 대한 검색을했고 미터법 필터를 만들었지 만 한 번만 알림을 올리려고합니다. 나는 나의 전자 우편을 사용하고 오류가 발생했을 때 처음으로 알림 전자 메일 오류를 보냅니다. 왜 이메일을 하나 이상 올리지 않는지 알고 싶습니다. 어떤 단서가 있다면? – Robert

+2

예; CloudWatch Alarm의 경우 지정된 경보 기간에 메트릭이 경보 임계 값을 초과하면 경보가 발령되었음을 알리는 단일 전자 메일을 받게됩니다. 따라서 한 번에 메트릭을 10 회 작성하고 값이 1 인 경보 트립이 발생하면 단일 경보 통지를 받게됩니다. 알람 기간을 충분히 낮게 설정 한 경우 (8 시간마다 한 번만 실행하는 경우에는 5 분의 1 기간 동안 메트릭 값> 1과 같이 알람 임계 값을 매우 낮게 설정해도 아무런 해가 없습니다) 여러 기간에 걸쳐 경보가 표시됩니다. –

+0

글쎄, 시간과 문턱에 관한 것이었다. 몇 분 후에 모든 것이 잘되면 알람이 이전 상태로 돌아갑니다. 고맙습니다 – Robert

관련 문제