세그먼트를 사용하여 대상에 집중 - Amazon CloudWatch

세그먼트를 사용하여 대상에 집중

대상 세그먼트를 정의하여 출시 및 실험에 사용할 수 있습니다. 세그먼트는 하나 이상의 특성을 공유하는 대상의 일부입니다. Chrome 브라우저 사용자, 유럽의 사용자, 애플리케이션이 수집하는 다른 기준(예: 나이)을 충족하는 유럽의 Firefox 브라우저 사용자 등을 예로 들 수 있습니다.

실험에서 세그먼트를 사용하면 세그먼트 기준과 일치하는 사용자만 평가하도록 실험 범위가 제한됩니다. 시작 시 하나 이상의 세그먼트를 사용할 때 대상 세그먼트별로 서로 다른 트래픽 분할을 정의할 수 있습니다.

세그먼트 규칙 패턴 구문

세그먼트를 생성하려면 세그먼트 규칙 패턴을 정의합니다. 사용자 세션이 세그먼트에 있는지 여부를 평가하는 데 사용할 속성을 지정합니다. 생성하는 패턴은 Evidently가 사용자 세션에서 찾은 evaluationContext의 값과 비교됩니다. 자세한 내용은 EvaluateFeature 사용 단원을 참조하십시오.

세그먼트 규칙 패턴을 생성하려면 패턴을 일치시킬 필드를 지정합니다. 패턴에 And, Or, Not, Exists 등의 로직을 사용할 수도 있습니다.

evaluationContext가 패턴과 일치하려면 evaluationContext가 규칙 패턴의 모든 부분과 일치해야 합니다. Evidently는 evaluationContext의 필드 중 규칙 패턴에 포함되지 않은 필드를 무시합니다.

규칙 패턴이 매칭하는 값은 JSON 규칙을 따릅니다. 따옴표(“)로 묶인 문자열, 숫자 및 키워드(true, falsenull)를 포함할 수 있습니다.

문자열의 경우 Evidently는 대소문자 변환이나 기타 문자열 정규화 없이 정확한 문자별 일치를 사용합니다. 따라서 규칙 일치는 대/소문자를 구분합니다. 예를 들어, evaluationContextbrowser속성이 포함되어 있지만 규칙 패턴이 Browser를 확인하는 경우 일치하지 않습니다.

숫자의 경우 Evidently는 문자열 표현도 사용합니다. 예를 들어 300, 300.0 및 3.0e2는 동일한 것으로 간주되지 않습니다.

evaluationContext에 매칭되는 규칙 패턴을 작성할 때는 TestSegmentPattern API 또는 test-segment-pattern CLI 명령을 사용하여 패턴이 올바른 JSON과 매칭되는지 테스트할 수 있습니다. 자세한 내용은 TestSegmentPattern을 참조하세요.

다음 요약에는 Evidently 세그먼트 패턴에서 사용할 수 있는 모든 비교 연산자가 나와 있습니다.

비교 규칙 구문

Null

UserID가 null임

{ "UserID": [ null ] }

비어 있음

LastName이 비어 있음

{ "LastName": [""] }

같음

Browser가 ‘Chrome’

{ "Browser": [ "Chrome" ] }

And

Country가 ‘France’이고 Device가 ‘Mobile’

{ "Country": [ "France" ], "Device": ["Mobile"] }

Or(단일 속성의 여러 값)

Browser가 ‘Chrome’ 또는 ‘Firefox’

{ "Browser": ["Chrome", "Firefox"] }

Or(다른 속성)

Browser가 ‘Safari’이거나 Device가 ‘Tablet’

{ "$or": [ {"Browser": ["Safari"]}, {"Device": ["Tablet"}] ] }

아님

Browser가 ‘Safari’가 아님

{ "Browser": [ { "anything-but": [ "Safari" ] } ] }

숫자(같음)

가격은 100임

{ "Price": [ { "numeric": [ "=", 100 ] } ] }

숫자(범위)

가격이 10을 초과하고 20보다 작거나 같음

{ "Price": [ { "numeric": [ ">", 10, "<=", 20 ] } ] }

존재함

Age 필드가 있음

{ "Age": [ { "exists": true } ] }

존재하지 않음

Age 필드가 없음

{ "Age": [ { "exists": false } ] }

접두사로 시작함

Region이 United States에 있음

{ "Region": [ {"prefix": "us-" } ] }

접미사로 끝남

Location의 접미사가 ‘West’임

{ "Region": [ {"suffix": "West" } ] }

세그먼트 규칙 예제

다음의 모든 예제에서는 규칙 패턴에서 사용하는 것과 동일한 필드 레이블 및 값을 사용하여 evaluationContext의 값을 전달하는 것으로 가정합니다.

다음 예제는 Browser가 Chrome 또는 Firefox이고 Location이 US-West인 경우 일치합니다.

{ "Browser": ["Chrome", "Firefox"], "Location": ["US-West"] }

다음 예제는 Browser가 Chrome 이외의 브라우저고 LocationUS로 시작하며 Age 필드가 있는 경우에 매칭됩니다.

{ "Browser": [ {"anything-but": ["Chrome"]}], "Location": [{"prefix": "US"}], "Age": [{"exists": true}] }

다음 예제는 Location가 Japan이고 Browser가 Safari이거나 Device가 Tablet인 경우에 매칭됩니다.

{ "Location": ["Japan"], "$or": [ {"Browser": ["Safari"]}, {"Device": ["Tablet"]} ] }

세그먼트 생성

세그먼트를 생성한 후에는 프로젝트의 모든 시작 또는 실험에 사용할 수 있습니다.

세그먼트를 생성하려면
  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 탐색 창에서 Application Signals, Evidently를 선택합니다.

  3. Segments(세그먼트) 탭을 선택합니다.

  4. 세그먼트 생성을 선택합니다.

  5. Segment name(세그먼트 이름)에 이 세그먼트를 식별하는 데 사용할 이름을 입력합니다.

    설명을 추가할 수도 있습니다.

  6. Segment pattern(세그먼트 패턴)에 규칙 패턴을 정의하는 JSON 블록을 입력합니다. 규칙 패턴 구문에 대한 자세한 내용은 세그먼트 규칙 패턴 구문 섹션을 참조하세요.