웹사이트 검색

AWS에서 Lambda 함수에 대한 Cloudwatch 경보를 생성하는 방법


이 페이지에서

  1. 전제 조건
  2. 무엇을 할 것인가?\n
  3. AWS에 로그인
  4. 기존 Lambda 함수에 대한 알람 만들기\n
  5. 결론

Cloudwatch의 Lambda 함수에서 모니터링할 수 있는 다양한 호출 지표, 성능 지표 및 동시성 지표가 있습니다. 호출 메트릭은 본질적으로 호출 및 바이너리의 결과이며 단일 호출에 대한 성능 세부 정보는 성능 메트릭에서 제공됩니다.

  1. 호출 – 성공적인 실행 및 함수 오류로 이어지는 실패한 실행을 포함하여 Lambda 함수 코드가 실행되는 횟수입니다.\n
  2. 오류 – 이는 Lambda 코드에서 발생한 예외와 Lambda 런타임에서 발생한 예외를 포함하는 함수 오류로 이어지는 실패한 호출 수를 반환합니다.\n
  3. DeadLetterErrors – 이는 Lambda가 이벤트를 배달 못한 편지 대기열로 보내려고 시도했지만 비동기식 호출에 실패한 횟수를 반환합니다.\n
  4. DestinationDeliveryFailures – 이는 Lambda가 이벤트를 대상으로 보내려고 시도했지만 비동기식 호출에 실패한 횟수를 반환합니다.\n
  5. Throttles – 제한된 호출 수를 제공합니다.\n
  6. ProvisionedConcurrencyInvocations – 프로비저닝된 동시성에서 Lambda 함수 코드가 실행되는 횟수를 제공합니다.\n
  7. ProvisionedConcurrencySpilloverInvocations – 프로비저닝된 모든 동시성이 사용 중일 때 Lambda 함수 코드가 표준 동시성에서 실행되는 횟수를 제공합니다.\n
  8. 기간 – Lambda 함수 코드가 이벤트를 처리하는 데 소요하는 시간을 반환합니다.\n
  9. PostRuntimeExtensionsDuration – 함수 코드가 완료된 후 Lambda 함수 런타임이 확장 코드를 실행하는 데 소비하는 누적 시간입니다.\n
  10. IteratorAge – 스트림에서 읽는 이벤트 소스 매핑에 대한 이벤트의 마지막 레코드 기간입니다.\n
  11. ConcurrentExecutions – 이벤트를 처리 중인 Lambda 함수 인스턴스의 수를 제공합니다.\n
  12. ProvisionedConcurrentExecutions – 프로비저닝된 동시성에서 이벤트를 처리하는 Lambda 함수 인스턴스의 수를 반환합니다.\n
  13. ProvisionedConcurrencyUtilization – 버전 또는 별칭에 할당된 프로비저닝된 동시성의 총량으로 나눈 ProvisionedConcurrentExecutions의 값을 반환합니다.\n
  14. UnreservedConcurrentExecutions – 예약된 동시성이 없는 Lambda 함수에서 처리 중인 이벤트 수를 반환합니다.\n

Lambda 함수에 사용할 수 있는 측정항목에 대해 자세히 알아보려면 여기를 클릭하세요.

이 문서에서는 트리거될 때 SNS 주제에 알림을 보내는 "Invocations" 지표에 대한 경보를 생성합니다. 진행하기 전에 Lambda 함수 및 SNS 주제에 익숙하다고 가정합니다. 또한 Lambda 함수와 SNS 주제가 이미 있다고 가정합니다.

전제 조건

  1. AWS 계정(계정이 없는 경우 생성).
  2. Lambda 함수(EC2 인스턴스를 시작하고 중지하는 Lambda 함수를 생성하는 방법을 알아보려면 여기를 클릭).\n
  3. SNS 주제(Cloudformation을 사용하여 SNS 주제를 만드는 방법을 알아보려면 여기를 클릭하세요.)\n

우리는 무엇을 할 것인가?

  1. AWS에 로그인합니다.\n
  2. 기존 Lambda 함수에 대한 알람을 만듭니다.\n

AWS에 로그인

AWS 로그인 페이지로 이동하려면 여기를 클릭하세요.

위의 링크를 클릭하면 다음과 같은 로그인 페이지가 나타납니다. 자격 증명을 입력하여 AWS 계정에 로그인하십시오.

계정에 성공적으로 로그인하면 다음과 같이 기본 AWS Management Console이 표시됩니다.

기존 Lambda 함수에 대한 알람 만들기

기존 Lambda 함수에 대한 경보를 생성하려면 Cloudwatch 대시보드로 이동하세요. 화면 상단 검색창에 Cloudwatch를 검색하세요.

다음과 같이 Cloudwatch의 개요 화면이 표시됩니다. 왼쪽 패널에서 "알람"을 클릭합니다.

선택한 지역의 계정에 기존 경보가 있는 경우 여기에 표시됩니다. 기존 람다 함수에 대한 새 경보를 생성하려면 "경보 생성" 버튼을 클릭하십시오.

메트릭과 조건을 지정하는 화면이 나타납니다. "측정항목 선택" 버튼을 클릭합니다.

여기에서 사용 가능한 지표가 있는 서비스를 찾을 수 있습니다.

Lambda로 측정항목을 필터링합니다. 이제 Lambda 함수에 사용할 수 있는 측정항목이 표시됩니다. "Lambda > 함수 이름별"을 클릭합니다.

기존 람다 함수에 사용할 수 있는 메트릭 중 하나를 선택합니다. 여기에서는 "Invocations" 메트릭을 사용하겠습니다. 계속하려면 "측정항목 선택"을 클릭하세요.

통계, 임계값 유형, 경보 조건 및 임계값을 선택합니다. 여기에서 호출의 샘플 수가 5분 동안 1보다 크면 경보가 트리거됩니다.

알람 상태 트리거와 SNS 주제를 선택합니다. 여기서 알람은 트리거되면 "알람 있음" 상태로 이동하고 지정된 SNS 주제로 알림을 보냅니다.

생성할 알람에 이름과 설명을 추가하고 "다음" 버튼을 클릭하여 계속 진행합니다.

모든 구성을 검토하고 모든 것이 정상이면 "알람 생성" 버튼을 클릭하십시오.

알람이 생성되면 \Alarms\ 콘솔에서 볼 수 있습니다. 경보 상태는 조건 및 임계값에 따라 변경됩니다.

결론

이 기사에서는 "Invocations" 지표를 모니터링하기 위해 기존 Lambda 함수의 경보를 생성했습니다. 우리가 생성한 알람은 "Sample count"가 "5분" 동안 임계값 "1"보다 "큼"일 때 트리거되고 SNS 주제의 구독에 알림을 보냅니다. 이제 동일한 단계를 사용하여 다양한 지표, 통계 및 임계값에 대한 경보를 생성할 수 있습니다.