이 문서에서는 Microsoft Dynamics 365 Commerce 파트너 서비스에서 실험을 설정하는 방법을 설명합니다.
가설을 정의하고 사용할 성공 메트릭을 확인한 후 파트너 서비스에서 실험을 설정합니다. 다음 다이어그램에서는 Dynamics 365 Commerce 전자 상거래 웹 사이트에서 실험을 설정하고 실행하는 데 관련된 모든 단계를 보여 있습니다. 추가 단계는 별도의 문서에서 다룹니다.
파트너 서비스에서 실험 설정
실험을 실행하고 모니터링할 파트너 서비스를 선택하고 실험 커넥터를 설정합니다. 이러한 필수 구성 요소는 Dynamics 365 Commerce 실험에 제공됩니다.
파트너 서비스에서 실험을 만드는 데 필요한 단계를 따릅니다. 커넥터가 제대로 구성된 경우 파트너 서비스에서 설정한 실험의 전체 목록이 약 5분 이내에 상거래 사이트 작성기에서 표시됩니다.
성공 지표 설정
모든 실험에는 변형의 효과를 측정하고 가설의 유효성을 검사하기 위한 메트릭이 필요합니다. Dynamics 365 Commerce 라이브 원격 분석 이벤트를 사용하여 파트너 서비스에서 메트릭을 계산할 수 있도록 하려면 다음 단계를 완료합니다.
기본 모듈에 대한 성공 메트릭을 설정하려면 다음 단계를 수행합니다.
- 상거래 사이트 작성기에서 왼쪽 탐색 창에서 페이지를 선택한 다음, 메트릭을 수집하려는 페이지를 선택하세요.
- 추적하려는 페이지 또는 모듈의 오른쪽 속성 창에서 이벤트 ID 추적 섹션으로 이동합니다.
- 보기를 선택합니다. 모든 클릭 이벤트 ID 목록이 표시됩니다. 추적하려는 이벤트를 복사한 다음, 파트너 서비스의 지정된 위치에 이벤트 키를 붙여넣습니다. 두 개 이상의 이벤트가 필요한 경우 키를 한 번에 하나씩 복사합니다.
- 페이지 뷰를 위해 사이트 작성기에서 페이지 이름의 SHA-256 해시 값에
.PageView를 추가하여 사용합니다. 예를 들어 이벤트 IDHomepage.PageView는 .입니다e217eb66c7808ecc43b0f5c517c6a83b39d72b91412fbd54a485da9d8e186a9. - 파트너 서비스에서 필요에 따라 메트릭을 추적하기 위한 다른 단계를 수행합니다.
사용자 지정 모듈 사용자 작업의 경우 다음 단계에 따라 클릭 이벤트를 계측합니다.
다음 함수를 사용하여 모듈에 대한 TelemetryContent 개체를 준비합니다. 이 함수는 페이지 이름, 모듈 이름 및 SDK에서 제공하는 기본 원격 분석 개체를 입력으로 사용합니다.
getTelemetryObject(pageName: string, moduleName: string, telemetry: ITelemetry): ITelemetryContent다음은 예입니다.
private readonly telemetryContent: ITelemetryContent = getTelemetryObject(this.props.context.request.telemetryPageName!, this.props.friendlyName, this.props.telemetry);캡처해야 하는 항목에 대한 정보가 포함된 페이로드 데이터를 만듭니다. 단추 및 기타 정적 컨트롤의 경우 "지금 쇼핑" 또는 "검색"과 같은 etext 를 포함할 수 있습니다. 제품 카드 선택과 같은 사용자 작업이 있는 구성 요소의 경우 제품의 레코드 ID 또는 제품 ID인 recid 를 보낼 수 있습니다.
getPayloadObject(eventType: string, telemetryContent: ITelemetryContent, etext: string, recid?: string): IPayLoad정적 컨트롤의 예로 다음 코드와 같이 단추 텍스트 문자열을 전달합니다.
const payLoad = getPayloadObject('click', this.props.telemetryContent, 'Shop Now', '');제품 사용자 작업의 예로 다음 코드와 같이 product recordId를 전달합니다.
const payLoad = getPayloadObject('click', telemetryContent!, '', product.RecordId.toString());OnClick 함수를 호출하여 이벤트를 등록합니다.
onTelemetryClick = (telemetryContent: ITelemetryContent, payLoad: IPayLoad, linkText: string) => () =>다음은 그 예입니다.
onClick: onTelemetryClick(this.props.telemetryContent, payLoad, linkText)