BLOG

Amazon Elasticsearch 서비스 오류 로그 보기
작성일: 2018-08-24

Amazon ES(Amazon Elasticsearch Service)Amazon CloudWatch 로그에 오류 로그를 게시하도록 지원합니다. 이 새로운 기능은 오류 로그를 캡쳐 할 수 있는 능력을 제공합니다. 이는 서비스 작동 중 발생한 오류 및 경고에 대한 정보에 접근 할 수 있습니다. 이러한 세부 정보는 문제 해결에 유용할 수 있습니다. 그런 다음 이 정보를 사용하여 사용자와 함께 도메인에서 오류 또는 경고 시나리오를 발생시키는 패턴을 식별할 수 있습니다.
이 기능에 대한 액세스는 도메인이 생성되는 즉시 활성화됩니다.
로그를 사용할 때마다 설정하거나 해제할 수 있으며, 로그 사용량에 따라 CloudWatch 비용만 지불하면 됩니다.

 

도메인에 대한 오류 로그 전달 설정
활성 도메인에 대한 오류 로그를 사용하려면 AWS 관리 콘솔에 로그인하고 Elasticsearch Service를 선택합니다. Amazon ES 콘솔에서 대시 보드를 열려면 리스트에서 도메인 이름을 선택합니다. 그런 다음 Logs 탭을 선택합니다.

이 창에서 느린 로그 검색, 느린 로그 인덱싱 및 오류 로그를 CloudWatch Logs 로그 그룹에 게시하도록 Amazon ES 도메인을 구성합니다. AWS Database 블로그에서 Amazon Elasticsearch 서비스 느린 로그 보기를 통해 느린 로그를 설정하는 방법에 대한 자세한 내용을 볼 수 있습니다.

오류 로그 설정에서 설정(Setup)을 선택합니다.

새 로그 그룹 생성 또는 기존 로그 그룹 사용을 선택할 수 있습니다. 로그 그룹 이름을 다음과 같은 경로로 지정하는 것이 좋습니다.

/aws/aes/domains/mydomain/application-logs/

이러한 이름 지정 체계를 사용하면 다음과 같은 특정 경로의 모든 로그 그룹에 권한을 부여할 수 있는 CloudWatch 액세스 정책을 더 쉽게 적용할 수 있습니다.

/aws/aes/domains

CloudWatch 로그 그룹에 로그를 배달하려면 Amazon ES에 대한 정책을 지정해야 사용자 대신 CloudWatch 로그에 게시할 수 있습니다. 새 정책 생성 또는 기존 정책 선택을 선택합니다. 정책을 있는 그대로 받아들일 수 있습니다. 또는 로그 그룹 이름이 경로인 경우 다음과 같이 리소스(Resource)를 확장할 수 있습니다.

arn:aws:logs:us-east-1:123456789012:log-group:/aws/aes/domains/*

그런 다음 모든 도메인에 대해 이 정책을 재사용할 수 있습니다.

도메인에 대한 정책을 저장했으면 사용(Enable)을 선택하고 설치를 완료했습니다. 이제 사용자의 도메인이 CloudWatch 로그로 오류 로그를 보낼 수 있습니다.

이제 오류 로그 게시를 사용하도록 설정했으므로 로그 모니터링을 시작할 수 있습니다.

 

캡쳐된 이벤트 유형

Elasticsearch는 Apache Log4j 2와 TRACE, DEBUG, INFO, WARN, ERROR 및 FATAL의 기본 로그 수준(심각하지 않은 수준부터 가장 심각한 수준까지)을 사용합니다. 오류 로그를 사용하도록 설정한 후 Amazon ES는 WARN, ERROR 및 FATAL의 로그 행을 CloudWatch에 게시합니다. 덜 심각한 수준(INFO, DEBUG 및 TRACE)은 사용할 수 없습니다.

이를 기반으로 다음 목록에서 강조 표시된 이벤트와 같은 이벤트에 대한 세부 정보를 찾을 수 있습니다.

  • 구성된 max_analyzed_offset 매개 변수 한계 초과에 기반한 거부
  • 요청의 Painless 스크립트 컴파일 문제
  • 잘못된 요청 및 잘못된 쿼리 형식에 대한 자세한 정보
  • GC 사이클
  • 쓰기 블록에 대한 자세한 정보
  • 스냅 샷 연습 중 발생한 문제

 

로그 데이터 보기

로그 데이터를 보려면 AWS 관리 콘솔에 로그인하고 CloudWatch 콘솔을 여십시오. 왼쪽 탐색 창에서 Logs 탭을 선택합니다. 그룹 목록에서 로그 그룹을 찾아 로그 그룹을 엽니다. 로그 그룹 이름은 Amazon ES 마법사에서 로깅을 설정할 때 설정하는 이름입니다.

로그 그룹 내에 여러 로그 스트림이 표시됩니다.

Amazon ES는 CloudWatch 로그에 쓸 수 있도록 오류 로그를 설정하는 동안 es-test-log-stream을 생성합니다. 이 스트림에는 단일 테스트 메시지만 포함됩니다.

응용 프로그램 오류 로그는 30분 내에 도착하며 로그 데이터의 원본을 나타내기 위해 es-application-logs로 표시된 긴 16진수 이름을 가집니다. 마지막 이벤트 시간을 기준으로 이벤트를 보려면 다음 중 하나를 선택합니다.

각 이벤트에 대한 개별 항목은 타임 스탬프 순서로 표시해야 합니다. 이벤트 로그 항목에서 세부 정보를 매우 세부적인 세부 정보로 전환하려면 CloudWatch 로그 콘솔 오른쪽 상단에 있는 토글(toggle)을 사용하면 됩니다. 형식은 타임 스탬프, 활동 중심지, 오류 또는 경고를 생성하는 노드 및 스택 추적에서 보는 것처럼 클러스터 자체의 세부 사항이 정리된 텍스트입니다.

 

결론

오류 로그 기능을 사용하면 Amazon ES 도메인의 문제를 보다 자세히 파악하고 도메인 구성의 문제를 식별할 수 있습니다. 또한 CloudWatch 로그와 Amazon ES의 통합을 사용하여 응용 프로그램 오류 로그를 다른 Amazon ES 도메인으로 보내고 도메인의 성능을 모니터링합니다.

 

원문 URL: https://aws.amazon.com/ko/blogs/big-data/viewing-amazon-elasticsearch-service-error-logs/

** 메가존 TechBlog는 AWS BLOG 영문 게재글중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아서, 정기적으로 게재하고 있습니다. 추가로 번역및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.