2단계: 앱 모니터 생성 - Amazon CloudWatch

2단계: 앱 모니터 생성

애플리케이션에서 CloudWatch RUM을 사용하려면 앱 모니터를 생성합니다. 앱 모니터가 생성되면 RUM은 사용자가 애플리케이션에 붙여넣을 수 있도록 JavaScript 코드 조각을 생성합니다. 코드 조각은 RUM 웹 클라이언트 코드를 가져옵니다. RUM 웹 클라이언트는 애플리케이션 사용자 세션 비율에서 데이터를 캡처하여 RUM으로 보냅니다.

앱 모니터 생성
  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 탐색 창에서 Application Signals, RUM을 선택합니다.

  3. 앱 모니터 추가(Add app monitor)를 선택합니다.

  4. 애플리케이션에 대한 정보 및 설정을 입력합니다.

    • 앱 모니터 이름(App monitor name)에서 CloudWatch RUM 콘솔 내에서 이 앱 모니터를 식별하는 데 사용할 이름을 입력합니다.

    • 애플리케이션 도메인(Application domain)에서 애플리케이션에 관리 권한이 있는 최상위 도메인 이름을 입력합니다. URL 도메인 형식이어야 합니다.

      하위 도메인 포함(Include sub domains)을 선택하여 앱 모니터가 최상위 도메인 아래의 모든 하위 도메인에서 데이터를 수집하도록 합니다.

  5. RUM 데이터 수집 구성(Configure RUM data collection)에서 앱 모니터에서 다음을 각각 수집할지 여부를 지정합니다.

    • 성능 원격 측정(Performance telemetry): 페이지 로드 및 리소스 로드 시간에 대한 정보를 수집합니다.

    • JavaScript 오류: 애플리케이션에서 발생하는 처리되지 않은 JavaScript 오류에 대한 정보를 수집합니다.

    • HTTP 오류: 애플리케이션에서 발생하는 HTTP 오류에 대한 정보를 수집합니다.

    이러한 옵션을 선택하면 애플리케이션에 대한 자세한 정보가 제공되지만, 더 많은 CloudWatch RUM 이벤트가 생성되므로 더 많은 요금이 발생합니다.

    이 중 하나를 선택하지 않아도 앱 모니터가 세션 시작 이벤트 및 페이지 ID를 수집하여 운영 체제 유형 및 버전, 브라우저 유형 및 버전, 디바이스 유형 및 위치별 분류를 포함하여 애플리케이션을 사용하는 사용자 수를 확인할 수 있습니다.

  6. 샘플링된 사용자 세션에서 사용자 ID 및 세션 ID를 수집할 수 있도록 하려면 CloudWatch RUM 웹 클라이언트가 쿠키를 설정할 수 있도록 이 옵션 선택(Check this option to allow the CloudWatch RUM Web Client to set cookies)을 선택합니다. 사용자 ID는 RUM에 의해 임의로 생성됩니다. 자세한 정보는 CloudWatch RUM 웹 클라이언트 쿠키(또는 유사한 기술)을 참조하세요.

  7. 세션 샘플(Session samples)에서 RUM 데이터를 수집하는 데 사용할 사용자 세션 비율을 입력합니다. 기본값은 100%입니다. 이 수를 줄이면 데이터가 줄어들지만, 요금도 줄어듭니다. RUM 요금에 대한 자세한 내용은 RUM 요금을 참조하세요.

  8. CloudWatch RUM에 대해 수집하는 최종 사용자 데이터는 30일 동안 보존된 다음 자동으로 삭제됩니다. CloudWatch Logs에 RUM 이벤트 복사본을 보관하고 이러한 복사본을 보존하는 기간을 구성하려면 데이터 스토리지(Data storage)에서 애플리케이션 원격 측정 데이터를 CloudWatch Logs 계정에 저장하려면 이 옵션을 선택(Check this option to store your application telemetry data in your CloudWatch Logs account)을 선택합니다. 기본적으로 CloudWatch Logs 로그 그룹은 데이터를 30일 동안 보존합니다. CloudWatch Logs 콘솔에서 보존 기간을 조정할 수 있습니다.

  9. 권한 부여(Authorization)에서 새로운 또는 기존 Amazon Cognito 자격 증명 풀을 사용할지 아니면 다른 자격 증명 공급자를 사용할지를 지정합니다. 새 자격 증명 풀을 만드는 것은 다른 설정 단계가 필요하지 않은 가장 간단한 옵션입니다. 자세한 내용은 1단계: 애플리케이션에서 데이터를 AWS로 전송하도록 권한 부여 단원을 참조하십시오.

    새 Amazon Cognito 자격 증명 풀을 생성하려면 관리 권한이 필요합니다. 자세한 내용은 CloudWatch RUM을 사용하는 IAM 정책 섹션을 참조하세요.

  10. (선택 사항) 기본적으로 애플리케이션에 RUM 코드 조각을 추가하면 웹 클라이언트는 애플리케이션의 모든 페이지에 있는 HTML 코드에 JavaScript 태그를 삽입하여 사용량을 모니터링합니다. 이를 변경하려면 페이지 구성(Configure pages)을 선택한 다음 이 페이지만 포함(Include only these pages) 또는 이 페이지 제외(Exclude these pages) 중 하나를 선택합니다. 그런 다음, 포함하거나 제외할 페이지를 지정합니다. 포함하거나 제외할 페이지를 지정하려면 전체 URL을 입력합니다. 추가 페이지를 지정하려면 URL 추가(Add URL)를 선택합니다.

  11. 앱 모니터에서 샘플링한 사용자 세션의 AWS X-Ray 추적을 사용하려면 Active tracing(활성 추적)을 선택하고 Trace my service with AWS X-Ray(으로 내 서비스 추적)을 선택합니다.

    이 옵션을 선택하면 XMLHttpRequestfetch 요청이 앱 모니터에서 샘플링하는 사용자 세션 중에 수행됩니다. 그런 다음, RUM 대시보드, X-Ray 트레이스 맵 및 트레이스 세부 정보 페이지에서 이러한 사용자 세션의 트레이스와 세그먼트를 볼 수 있습니다. 이러한 사용자 세션은 애플리케이션에 대해 활성화된 후 Application Signals의 클라이언트 페이지로도 표시됩니다.

    CloudWatch RUM 웹 클라이언트에 대한 추가 구성을 변경함으로써 HTTP 요청에 X-Ray 추적 헤더를 추가하여 AWS 관리형 서비스 다운스트림으로 사용자 세션의 엔드 투 엔드 추적을 활성화할 수 있습니다. 자세한 내용은 X-Ray 종단 간 추적 활성화 단원을 참조하십시오.

  12. (선택 사항) 앱 모니터에 태그를 추가하려면 태그(Tags)에서 새 태그 추가(Add new tag)를 선택합니다.

    그런 다음, 키(Key)에서 태그 이름을 입력합니다. 값(Value)에 태그의 선택적 값을 추가할 수 있습니다.

    다른 태그를 추가하려면 새 태그 추가(Add new tag)를 다시 선택합니다.

    자세한 내용은 AWS 리소스에 태깅을 참조하세요.

  13. 앱 모니터 추가(Add app monitor)를 선택합니다.

  14. 샘플 코드(Sample code) 섹션에서 애플리케이션에 추가하는 데 사용할 코드 조각을 복사할 수 있습니다. JavaScript 또는 TypeScript를 선택하고 NPM을 사용하여 CloudWatch RUM 웹 클라이언트를 JavaScript 모듈로 설치하는 것이 좋습니다.

    또는 콘텐츠 전송 네트워크(CDN)를 사용하는 HTML을 선택하여 CloudWatch RUM 웹 클라이언트를 설치합니다. CDN 사용 시의 단점은 웹 클라이언트가 광고 차단기에 의해 차단되는 경우가 많다는 것입니다.

  15. 복사(Copy) 또는 다운로드(Download)를 선택한 다음 완료(Done)를 선택합니다.