설명
슬로우 로그는 검색이나 인덱싱이 오래 걸리는 요청을 찾는 데 도움이 됩니다. 필요한 로그가 없으면 성능 문제의 원인을 파악하기 어려워질 수 있습니다. INDEX_SLOW_LOGS는 인덱싱, SEARCH_SLOW_LOGS는 검색 슬로우 로그의 게시에 사용합니다.
CloudWatch 게시 설정만으로 샤드 슬로우 로그가 생성되지는 않습니다. 인덱스별 임계값도 설정해야 하며, 기본값인 -1은 해당 로깅을 비활성화합니다.
잠재적 영향
- 느린 검색이나 인덱싱의 원인을 파악하기 어려울 수 있습니다.
- 성능 문제 대응 시간이 길어질 수 있습니다.
- 운영 중 병목 구간을 조기에 발견하지 못할 수 있습니다.
해결 방법
- 필요한 슬로우 로그 유형을
log_publishing_options에서 활성화하고 CloudWatch 로그 그룹 및 서비스의 쓰기 권한을 구성하세요. - 인덱스별 임계값을 워크로드에 맞게 설정하고 실제 로그 수집을 확인하세요. 기존에 필요한 애플리케이션 로그도 유지하세요.
- 로그의 민감한 내용을 고려하여 접근 권한과 보존 기간을 제한하고 수집량과 비용을 점검하세요.
예시
로그 유형을 비교하는 부분 예제로, 도메인의 필수 설정과 로그 그룹 리소스 정책, 인덱스별 임계값은 생략했습니다. 필요한 로그 게시 블록을 함께 구성하세요.
변경 전
hcl
resource "aws_elasticsearch_domain" "example" {
log_publishing_options {
cloudwatch_log_group_arn = aws_cloudwatch_log_group.example.arn
log_type = "ES_APPLICATION_LOGS"
enabled = true
}
}
변경 후
hcl
resource "aws_elasticsearch_domain" "example" {
log_publishing_options {
cloudwatch_log_group_arn = aws_cloudwatch_log_group.example.arn
log_type = "INDEX_SLOW_LOGS"
enabled = true
}
}
설명:
- 변경 전:
ES_APPLICATION_LOGS게시 설정이며 검색·인덱싱 슬로우 로그 설정은 아닙니다. - 변경 후: 인덱싱 슬로우 로그 게시를 활성화합니다. 검색 슬로우 로그와 실제 생성에 필요한 임계값은 별도로 설정해야 합니다.