Amazon Web Services 한국 블로그

Amazon DevOps Guru 신규 기능 — 로그 이상 탐지 및 권장 사항

오늘, Amazon DevOps Guru에 대한 새로운 기능으로 로그 이상 탐지 및 권장 사항을 발표합니다. 이 기능을 사용하면 앱 내의 관련 로그에서 이상 징후를 찾고 문제 해결을 위해 타겟팅된 권장 사항을 얻을 수 있습니다. 다음은 이 기능에 대한 간략한 설명입니다.

AWS는 개발자와 운영자가 애플리케이션의 신뢰성과 가용성을 보다 쉽게 개선할 수 있도록 2020년 12월에 완전관리형 AIOps 플랫폼 서비스인 DevOps Guru를 출시했습니다. DevOps Guru는 Amazon.com용 애플리케이션 구축, 조정 및 유지 관리에 대한 20년 이상의 운영 전문 지식에 기반을 둔 기계 학습 모델을 사용하여 문제 해결에 필요한 시간을 최소화합니다.

DevOps Guru를 사용하여 지연 시간 증가, 오류율 및 리소스 제약과 같은 이상 징후를 식별한 다음, 문제 해결을 위한 설명 및 실행 가능한 권장 사항이 포함된 알림을 보냅니다. DevOps Guru를 사용하기 위해 기계 학습에 대한 사전 지식이 필요하지 않으며 DevOps Guru 대시보드에서 활성화하기만 하면 됩니다.

새로운 기능 – 로그 이상 탐지 및 권장 사항
관찰 가능성 및 모니터링은 DevOps와 모던 애플리케이션의 핵심 부분입니다. 애플리케이션은 여러 유형의 원격 측정을 생성할 수 있으며, 그 중 하나인 지표는 애플리케이션의 성능을 파악하고 문제를 식별하는 데 도움이 됩니다.

오늘날 DevOps Guru가 분석한 지표는 애플리케이션에서 발생하는 문제를 드러내는 데 중요하지만 이러한 문제의 근본 원인을 찾는 것은 여전히 어려운 일입니다. 애플리케이션이 분산되고 복잡해짐에 따라 개발자와 IT 운영자는 운영 문제를 감지, 디버깅 및 해결하는 데 드는 시간과 노력을 줄이기 위해 더욱 자동화된 작업 방식이 필요합니다. 관련 로그를 지표와 연결하여 소싱함으로써 개발자는 이제 애플리케이션을 보다 효과적으로 모니터링하고 문제를 해결할 수 있습니다.

새로운 로그 이상 탐지 및 권장 사항 기능을 사용하면 수동 작업 없이도 애플리케이션 로그에서 정확한 권장 사항과 함께 인사이트를 얻을 수 있습니다. 이 기능은 이상 징후 발생에 대해 컨텍스트화된 로그 데이터를 제공하고 DevOps Guru 대시보드 내에 통합된 권장 사항으로부터 실행 가능한 인사이트를 제공합니다.

로그 이상 탐지 및 권장 사항 기능은 예외 키워드, 숫자 이상, HTTP 상태 코드, 데이터 형식 이상 등을 탐지할 수 있습니다. DevOps Guru가 로그에서 이상 징후를 식별하면 DevOps Guru 대시보드에서 관련 로그 샘플과 CloudWatch 로그에 대한 딥 링크를 확인할 수 있습니다. 이렇게 컨텍스트화된 로그는 DevOps Guru가 추가 기능, 즉 더 빠른 문제 해결 및 수정 조치 수행에 도움이 되는 타겟팅된 권장 사항을 제공하는 데 중요한 구성 요소입니다.

DevOps Guru 로그 이상 탐지 시작하기
새로운 기능은 ‘로그 이상 탐지’와 ‘권장 사항’의 두 가지로 구성됩니다. 이 기능을 사용하여 문제의 근본 원인을 찾고 권장 사항을 얻는 방법을 더 자세히 살펴보겠습니다. 예시를 위해, Amazon DynamoDB와 통합된 AWS Lambda와 함께 Amazon API Gateway를 사용해 구축된 내 서버리스 API를 살펴보겠습니다. 아키텍처는 다음 이미지에 나와 있습니다.

DevOps Guru를 처음 사용하는 경우 DevOps Guru 대시보드로 이동해서 활성화해야 합니다. 시작하기 페이지를 방문해서 자세히 알아볼 수 있습니다.

DevOps Guru를 이미 활성화했으므로 인사이트(Insights) 페이지로 이동하여 로그 그룹(Log groups) 섹션으로 이동한 다음 로그 이상 탐지 활성화(Enable log anomaly detection)를 선택할 수 있습니다.

로그 이상 탐지

몇 시간 후 DevOps Guru 대시보드를 방문하여 인사이트를 확인할 수 있습니다. 다음 스크린샷에서 볼 수 있듯이 DevOps Guru로부터 몇 가지 결과를 얻었습니다.

다음 스크린샷에서 볼 수 있듯이 로그 이상 탐지를 통해 DevOps Guru는 로그 그룹(Log groups) 섹션에 서버리스 API의 결과를 표시합니다.

이상 항목 위로 마우스를 가져가면 이 로그 그룹에 있는 컨텍스트화된 보강 데이터에 대한 개략적인 요약을 얻을 수 있습니다. 또한 분석된 로그 레코드 수 및 로그 스캔 시간 범위를 포함한 추가 정보도 제공합니다. 이 정보를 통해 이러한 이상 징후는 과거에 ERROR 키워드로 탐지되지 않은 새로운 이벤트 유형이라는 것을 알게 됩니다.

추가 조사를 위해 로그 그룹 링크를 선택하고 세부 정보(Detail) 페이지로 이동할 수 있습니다. 그래프는 이러한 로그 쇼케이스와 관련하여 발생했을 수 있는 관련 이벤트를 보여 주며, 이는 근본 원인을 해결하는 데 유용한 컨텍스트입니다. 이 세부 정보(Detail) 페이지에는 이상 징후 발생 시 로그에서 발견되는 예외 키워드 및 수치 이상과 같은 유사한 로그 이벤트의 클러스터를 개별적으로 나타내는 다양한 쇼케이스가 포함되어 있습니다.

첫 번째 로그 쇼케이스를 살펴보니, AWS Lambda 함수 내에서 ConditionalCheckFailedException 오류가 있음을 발견했습니다. 이 오류는 AWS LambdaDynamoDB를 호출하지 못할 때 발생할 수 있습니다. 여기에서 조건부 확인 섹션에 오류가 있음을 알게 되었고 AWS Lambda의 로직을 검토했습니다. CloudWatch 링크에서 세부 정보 보기(View details)를 선택하여 관련 CloudWatch 로그 그룹을 조사할 수도 있습니다.

여기서 강조하고 싶은 한 가지는 DevOps Guru가 애플리케이션 성능과 관련된 중요한 이벤트를 식별해 주므로 수많은 정보 중에서 중요한 정보를 구분하여 이에 집중할 수 있도록 도와준다는 것입니다.

타겟팅된 권장 사항
이 새로운 기능은 로그의 이상 탐지 외에도 로그의 결과를 기반으로 정확한 권장 사항을 제공합니다. 이러한 권장 사항은 인사이트(Insights) 페이지에서 아래로 스크롤하여 권장 사항(Recommendations) 섹션에서 찾을 수 있습니다.

여기에서 DevOps Guru의 몇 가지 권장 사항을 확인하여 문제 해결을 위한 즉각적인 조치를 더 쉽게 수행할 수 있습니다. 다음 이미지에 표시된 권장 사항 중 하나는 AWS Lambda로부터 생성된 로그에서 발견된 이상 항목과 관련된 Check DynamoDB ConditionalExpression입니다.

가용성

오늘부터 DevOps Guru 로그 이상 탐지 및 권장 사항을 DevOps Guru가 제공되는 모든 리전, 즉 미국 동부(오하이오), 미국 동부(버지니아 북부), 미국 서부(오레곤), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(도쿄), 유럽(프랑크푸르트), 유럽(아일랜드) 및 유럽(스톡홀름)에서 추가 요금 없이 사용할 수 있습니다.

자세한 내용은 Amazon DevOps Guru 웹 사이트 및 기술 설명서를 참조하시고 지금 바로 시작하세요.

즐겁게 빌드해 보세요

– Donnie