Contributor Insights 규칙 생성 - Amazon CloudWatch

Contributor Insights 규칙 생성

규칙을 생성하여 로그 데이터를 분석할 수 있습니다. JSON 또는 CLF(일반적 로그 형식)의 모든 로그를 평가할 수 있습니다. 여기에는 이러한 형식 중 하나를 따르는 사용자 지정 로그와 Amazon VPC 흐름 로그, Amazon Route 53 DNS 쿼리 로그, Amazon ECS 컨테이너 로그 그리고 AWS CloudTrail, Amazon SageMaker, Amazon RDS, AWS AppSync 및 API Gateway의 로그와 같은 AWS 서비스의 로그가 포함됩니다.

규칙에서 필드 이름이나 값을 지정할 때 일치하는 모든 항목은 대/소문자를 구분합니다.

규칙을 생성할 때 기본 제공 샘플 규칙을 사용하거나 Scratch에서 고유한 규칙을 생성할 수 있습니다. Contributor Insights에는 다음 유형의 로그에 대한 샘플 규칙이 포함되어 있습니다.

  • Amazon API Gateway 로그

  • Amazon Route 53 퍼블릭 DNS 쿼리 로그

  • Amazon Route 53 Resolver 쿼리 로그

  • CloudWatch Container Insights 로그

  • VPC 흐름 로그

CloudWatch 크로스 계정 관측성에서 모니터링 계정으로 설정된 계정에 로그인한 경우 모니터링 계정에서 로그 그룹에 대한 규칙을 생성하는 것 외에도 이 모니터링 계정에 연결된 소스 계정의 로그 그룹에 대한 Contributor Insights 규칙을 생성할 수 있습니다. 여러 계정의 로그 그룹을 모니터링하는 단일 규칙을 설정할 수도 있습니다. 자세한 내용은 CloudWatch 크로스 계정 관측성 단원을 참조하십시오.

중요

사용자에게 cloudwatch:PutInsightRule 권한을 부여하면 기본적으로 해당 사용자는 CloudWatch Logs의 로그 그룹을 평가하는 규칙을 생성할 수 있습니다. 이러한 권한을 제한하는 IAM 정책 조건을 추가하여 사용자가 특정 로그 그룹을 포함하고 제외하도록 할 수 있습니다. 자세한 내용은 조건 키를 사용하여 Contributor Insights 사용자의 로그 그룹 액세스 제한 단원을 참조하십시오.

기본 제공 샘플 규칙을 사용하여 규칙을 생성하려면
  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 탐색 창에서 인사이트(Insights)를 선택한 다음, Contributor Insights를 선택합니다.

  3. Create rule을 선택합니다.

  4. Select log group(s)(로그 그룹 선택)에서 규칙을 모니터링할 로그 그룹을 선택합니다. 로그 그룹을 20개까지 선택할 수 있습니다. CloudWatch 크로스 계정 관측성을 위해 설정된 모니터링 계정에 로그인한 경우 소스 계정에서 로그 그룹을 선택할 수 있으며 여러 계정의 로그 그룹을 분석하는 단일 규칙을 생성할 수도 있습니다.

    1. (선택 사항) 이름이 특정 문자열로 시작하는 모든 로그 그룹을 선택하려면 접두사 일치로 선택 드롭다운을 누른 다음 접두사를 입력합니다. 모니터링 계정인 경우 선택적으로 검색할 계정을 선택할 수 있습니다. 그렇지 않으면 모든 계정이 선택됩니다.

    참고

    규칙과 일치하는 각 로그 이벤트에 대해 요금이 발생합니다. 접두사 일치로 선택 드롭다운을 선택하는 경우 접두사가 일치할 수 있는 로그 그룹 수를 알고 있어야 합니다. 실수로 의도한 것보다 많은 로그 그룹을 검색하면 예기치 않은 요금이 발생할 수 있습니다. 자세한 내용은 Amazon CloudWatch 요금을 참조하세요.

  5. Rule type(규칙 유형)에서 Sample rule(샘플 규칙)을 선택합니다. 그런 다음 Select sample rule(샘플 규칙 선택)을 선택하고 규칙을 선택합니다.

  6. 샘플 규칙에는 Log format(로그 형식), Contribution(기여), Filters(필터) 및 Aggregate on(집계) 필드가 작성되어 있습니다. 원하는 경우 이러한 값을 조정할 수 있습니다.

  7. Next(다음)를 선택합니다.

  8. Rule name(규칙 이름)에 이름을 입력합니다. 유효한 문자는 A~Z, a~z, 0~9, -(하이픈), _(밑줄) 및 .(마침표)입니다.

  9. 규칙을 활성화된 또는 비활성화된 상태로 생성할지 여부를 선택합니다. 규칙을 활성화하도록 선택하면 즉시 규칙을 사용하여 데이터 분석이 시작됩니다. 활성화된 규칙을 실행하면 비용이 발생합니다. 자세한 내용은 Amazon CloudWatch 요금을 참조하세요.

    Contributor Insights는 규칙이 생성된 후 새 로그 이벤트만 분석합니다. 규칙은 이전에 CloudWatch Logs에서 처리한 로그 이벤트를 처리할 수 없습니다.

  10. (선택 사항) Tags(태그)에서 이 규칙에 대한 태그로 하나 이상의 키-값 페어를 추가합니다. 태그를 사용하면 AWS 리소스를 식별 및 구성하고 AWS 비용을 추적할 수 있습니다. 자세한 내용은 Amazon CloudWatch 리소스 태그 지정 단원을 참조하십시오.

  11. 생성(Create)을 선택합니다.

Scratch에서 규칙을 새로 생성하려면
  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 탐색 창에서 Contributor Insights를 선택합니다.

  3. Create rule을 선택합니다.

  4. Select log group(s)(로그 그룹 선택)에서 규칙을 모니터링할 로그 그룹을 선택합니다. 로그 그룹을 20개까지 선택할 수 있습니다. CloudWatch 크로스 계정 관측성을 위해 설정된 모니터링 계정에 로그인한 경우 소스 계정에서 로그 그룹을 선택할 수 있으며 여러 계정의 로그 그룹을 분석하는 단일 규칙을 생성할 수도 있습니다.

    1. (선택 사항) 이름이 특정 문자열로 시작하는 모든 로그 그룹을 선택하려면 접두사 일치로 선택 드롭다운을 누른 다음 접두사를 입력합니다.

    참고

    규칙과 일치하는 각 로그 이벤트에 대해 요금이 발생합니다. 접두사 일치로 선택 드롭다운을 선택하는 경우 접두사가 일치할 수 있는 로그 그룹 수를 알고 있어야 합니다. 실수로 의도한 것보다 많은 로그 그룹을 검색하면 예기치 않은 요금이 발생할 수 있습니다. 자세한 내용은 Amazon CloudWatch 요금을 참조하세요.

  5. Rule type(규칙 유형)에서 Custom rule(사용자 지정 규칙)을 선택합니다.

  6. 로그 형식에서 JSON 또는 CLF를 선택합니다.

  7. 마법사를 사용하거나 Syntax(구문) 탭을 선택하고 규칙 구문을 수동으로 지정하여 규칙 생성을 완료할 수 있습니다.

    마법사를 계속 사용하려면 다음을 수행합니다.

    1. Contribution(기고), Key(키)에 보고할 기고자 유형을 입력합니다. 보고서에는 이 기고자 유형에 대한 상위 N개의 값이 표시됩니다.

      유효한 항목은 값이 있는 모든 로그 필드입니다. 예를 들면 requestId, sourceIPaddresscontainerID입니다.

      특정 로그 그룹에 있는 로그의 로그 필드 이름을 찾는 방법에 대한 자세한 내용은 로그 필드 찾기를 참조하세요.

      1KB보다 큰 키는 1KB 단위로 잘립니다.

    2. (선택 사항) Add new key(새 키 추가)를 선택하여 키를 더 추가합니다. 규칙에 최대 4개의 키를 포함할 수 있습니다. 두 개 이상의 키를 입력하면 보고서의 기고자는 키의 고유한 값 조합으로 정의됩니다. 예를 들어 세 개의 키를 지정하면 세 개의 키에 대한 각각의 고유한 값 조합이 고유한 기고자로 계산됩니다.

    3. (선택 사항) 결과 범위를 좁히는 필터를 추가하려는 경우 필터 추가(Add filter)를 선택합니다. 일치(Match)에 필터링하려는 로그 필드 이름을 입력합니다. 그런 다음 조건(Condition)에서 비교 연산자를 선택하고 필터링하려는 값을 입력합니다.

      규칙에 필터를 4개까지 추가할 수 있습니다. 여러 필터는 AND 논리로 결합되므로 모든 필터와 일치하는 로그 이벤트만 평가됩니다.

      참고

      비교 연산자 다음에 나오는 배열(예:In, NotIn 또는 StartsWith)은 최대 10개의 문자열 값을 포함할 수 있습니다. Contributor Insights 규칙 구문에 대한 자세한 내용은 Contributor Insights 규칙 구문 섹션을 참조하세요.

    4. [집계(Aggregate on)]에서 [수(Count)] 또는 [합계(Sum)]를 선택합니다. [수(Count)]를 선택하면 기여 요소 순위가 발생 횟수를 기반으로 결정됩니다. [합계(Sum)]를 선택하면 [기여(Contribution)], [값(Value)]에서 지정한 필드 값의 집계된 합계를 기반으로 순위가 결정됩니다.

  8. 마법사를 사용하는 대신 규칙을 JSON 객체로 입력하려면 다음을 수행합니다.

    1. Syntax(구문) 탭을 선택합니다.

    2. Rule body(규칙 본문)에 규칙의 JSON 객체를 입력합니다. 규칙 구문에 대한 자세한 내용은 Contributor Insights 규칙 구문 단원을 참조하십시오.

  9. Next(다음)를 선택합니다.

  10. Rule name(규칙 이름)에 이름을 입력합니다. 유효한 문자는 A-Z, a-z, 0-9, "-", "_” 및 "."입니다.

  11. 규칙을 활성화된 또는 비활성화된 상태로 생성할지 여부를 선택합니다. 규칙을 활성화하도록 선택하면 즉시 규칙을 사용하여 데이터 분석이 시작됩니다. 활성화된 규칙을 실행하면 비용이 발생합니다. 자세한 내용은 Amazon CloudWatch 요금을 참조하세요.

    Contributor Insights는 규칙이 생성된 후 새 로그 이벤트만 분석합니다. 규칙은 이전에 CloudWatch Logs에서 처리한 로그 이벤트를 처리할 수 없습니다.

  12. (선택 사항) Tags(태그)에서 이 규칙에 대한 태그로 하나 이상의 키-값 페어를 추가합니다. 태그를 사용하면 AWS 리소스를 식별 및 구성하고 AWS 비용을 추적할 수 있습니다. 자세한 내용은 Amazon CloudWatch 리소스 태그 지정 단원을 참조하십시오.

  13. Next(다음)를 선택합니다.

  14. 입력한 설정을 확인하고 Create rule(규칙 생성)을 선택합니다.

생성한 규칙을 비활성화, 활성화 또는 삭제할 수 있습니다.

Contributor Insights에서 규칙을 활성화, 비활성화 또는 삭제하려면
  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 탐색 창에서 Contributor Insights를 선택합니다.

  3. 규칙 목록에서 단일 규칙 옆에 있는 확인란을 선택합니다.

    기본 제공 규칙은 AWS 서비스에서 생성되며 편집, 비활성화 또는 삭제할 수 없습니다.

  4. 작업을 선택한 다음 원하는 옵션을 선택합니다.

로그 필드 찾기

규칙을 생성할 때 로그 그룹의 로그 항목에 있는 필드의 이름을 알아야 합니다.

로그 그룹에서 로그 필드를 찾으려면
  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 탐색 창의 로그에서 Insights를 선택합니다.

  3. 쿼리 편집기 위에서 쿼리할 로그 그룹을 하나 이상 선택합니다.

    로그 그룹을 선택하면 CloudWatch Logs Insights가 로그 그룹의 데이터에서 필드를 자동으로 감지하고 오른쪽 창의 [검색된 필드(Discovered fields)]에 해당 필드를 표시합니다.