트랜잭션 검색 활성화 - Amazon CloudWatch

트랜잭션 검색 활성화

콘솔 또는 API를 사용하여 트랜잭션 검색을 활성화할 수 있습니다. 트랜잭션 검색은 전체 계정에 대해 구성되며, X-Ray를 통한 모든 스팬 수집을 Amazon CloudWatch 요금을 사용하는 비용 효율적인 수집 모드로 전환합니다. 기본적으로 수집된 스팬의 1%를 분석용 트레이스 요약으로 무료로 인덱싱합니다. 이는 트랜잭션 검색을 통해 수집된 모든 스팬에 대한 전체 트레이스 가시성이 이미 있는 경우 일반적으로 충분합니다.

콘솔에서 트랜잭션 검색 활성화

다음 절차에서는 콘솔에서 트랜잭션 검색을 활성화하는 방법을 설명합니다.

CloudWatch 콘솔에서 트랜잭션 검색을 활성화하려면 다음을 수행합니다.
  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 탐색 창의 Application Signals에서 트랜잭션 검색을 선택하세요.

  3. Enable Transaction Search를 선택합니다.

  4. 스팬을 구조화된 로그로서 수집하도록 확인란을 선택하고, 인덱싱할 스팬의 백분율을 입력합니다. 스팬을 1%로 무료로 인덱싱하고 나중에 요구 사항에 따라 비율을 변경할 수 있습니다.

API를 사용하여 트랜잭션 검색 활성화

다음 절차에서는 API를 사용하여 트랜잭션 검색을 활성화하는 방법을 설명합니다.

1단계. CloudWatch Logs의 수집 스팬에 대한 액세스 권한을 부여하는 정책 생성

AWS CLI 또는 SDK를 사용하여 트랜잭션 검색을 활성화할 경우, PutResourcePolicy를 통해 리소스 기반 정책을 사용하여 권한을 구성해야 합니다.

예제 정책

다음 예제 정책을 사용하면 X-Ray가 CloudWatch Logs로 트레이스를 전송할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "TransactionSearchXRayAccess", "Effect": "Allow", "Principal": { "Service": "xray.amazonaws.com" }, "Action": "logs:PutLogEvents", "Resource": [ "arn:partition:logs:region:account-id:log-group:aws/spans:*", "arn:partition:logs:region:account-id:log-group:/aws/application-signals/data:*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:partition:xray:region:account-id:*" }, "StringEquals": { "aws:SourceAccount": "account-id" } } } ] }
명령 예제:

다음 예제에서는 PutResourcePolicy를 사용하여 AWS CLI 명령의 형식을 지정하는 방법을 보여줍니다.

aws logs put-resource-policy --policy-name MyResourcePolicy --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "TransactionSearchXRayAccess", "Effect": "Allow", "Principal": { "Service": "xray.amazonaws.com" }, "Action": "logs:PutLogEvents", "Resource": [ "arn:partition:logs:region:account-id:log-group:aws/spans:*", "arn:partition:logs:region:account-id:log-group:/aws/application-signals/data:*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:partition:logs:region:account-id:*" }, "StringEquals": { "aws:SourceAccount": "account-id" } } } ]}'

2단계. 트레이스 세그먼트의 대상 구성

UpdateTraceSegmentDestination을 사용하여 스팬 수집을 구성합니다.

명령 예제:

다음 예제에서는 UpdateTraceSegmentDestination을 사용하여 AWS CLI 명령의 형식을 지정하는 방법을 보여줍니다.

aws xray update-trace-segment-destination --destination CloudWatchLogs

3단계. 인덱싱할 스팬의 양 구성

UpdateIndexingRule을 사용하여 원하는 샘플링 백분율 구성

명령 예제:

다음 예제에서는 UpdateIndexingRule을 사용하여 AWS CLI 명령의 형식을 지정하는 방법을 보여줍니다.

aws xray update-indexing-rule --name "Default" --rule '{"Probabilistic": {"DesiredSamplingPercentage": number}}'
참고

트랜잭션 검색을 활성화한 후 검색 및 분석에 스팬을 사용할 수 있기까지 10분 정도 소요될 수 있습니다.

4단계. 검색 및 분석에 스팬을 사용할 수 있는지 확인

검색 및 분석에 스팬을 사용할 수 있는지 확인하려면 GetTraceSegmentDestination을 사용합니다.

예시 명령

다음 예제에서는 GetTraceSegmentDestination을 사용하여 AWS CLI 명령의 형식을 지정하는 방법을 보여줍니다.

aws xray get-trace-segment-destination
응답의 예

다음 예제는 트랜잭션 검색이 활성화되었을 때 예상 가능한 응답을 보여줍니다.

{ "Destination": "CloudWatchLogs", "Status": "ACTIVE" }