1
Sitecore Analytics가 새로 도입되었으며 REST 서비스가 호출되면 일부 Analytics 데이터를 저장하려고하는 상황에 처했습니다.Sitecore Analytics : REST 서비스 (Sitecore 6.5)에서 이벤트 트리거
POST REST 서비스를 호출하기 위해 피들러를 사용하고 있습니다. REST 서비스 (비슷한 기사 Sitecore Analytics: Trigger profiles and events from webservice을 따랐습니다)에서 다음 코드를 작성했습니다. 나는 모든 PageEvents
표에 그러나
void TriggerPageEvent(string eventName)
{
if (!Tracker.IsActive)
{
Tracker.StartTracking();
}
Sitecore.Data.Database db = Sitecore.Configuration.Factory.GetDatabase("web");
Sitecore.Context.Item = db.GetItem("/sitecore");
PageEventData pageEventData = new PageEventData(eventName);
pageEventData.Text = "Value is here";
pageEventData.DataKey = String.Empty;
pageEventData.Data = " Data is here";
pageEventData.ItemId = new Guid(Sitecore.Context.Item.ID.ToString());
Tracker.CurrentPage.Register(pageEventData);
Tracker.Submit();
}
/sitecore/system/Settings/Analytics/Page Events/
에서, 내가 본하지 않는 레코드를 만들 한 올바른 더미 EVENTNAME
MLN360_BLDG_CLK_EN
을 통과하고있다. 이 코드를 사용하여 프리젠 테이션 레이아웃이 지정된 항목 (.aspx 페이지)에 붙여넣고 웹 브라우저를 사용하여이 항목 (.aspx 페이지)을 호출하면 레코드가 데이터베이스에 추가됩니다.
어떻게 이벤트를 등록 할 수 있습니까? webservice를 사용하고 또한 Fiddler와 같은 클라이언트를 사용하여 어떻게 테스트 할 수 있습니까? 그들은 "절반 지식은 매우 위험"말한대로
는 문제가 피들러를 사용하여이었다 당신에게
Sitecore에서 PageEvent를 배포 했습니까? 콘텐츠 편집기에서 '검토'탭을 클릭 한 다음 '워크 플로우'체크에서 '배포'버튼을 클릭하십시오. 비록 당신이 이미 이것을하지 않았다면 나는 당신이 analytics tracker에 이벤트를 등록하려고 할 때 예외가 던져 질 것이라고 의심 할 것입니다. –
@AdamWeber : 예, 이미 페이지 이벤트를 배포했습니다. 내 이벤트는 PageEventsDefinitions 테이블에서도 볼 수 있지만 PageEvents 테이블에서는 볼 수 없습니다. –
흥미 롭습니다. 내 지역 환경에서 코드를 시도했지만 문제를 재현 할 수 없습니다. 즉, 페이지 이벤트가 PageEvents 테이블에 예상대로 등록되었습니다. 코드에 대한 유일한 수정 사항은 Sitecore.Context.Item 설정을 제거하는 것이 었습니다. DMS에서는이 작업을 수행 할 필요가 없습니다. Sitecore.Analytics.config에서 Analytics.TrackerChanges.FlushInterval 설정을 확인 했습니까? 아마도 간격이 큰 숫자로 설정되어 있고 추적기 데이터가 데이터베이스에 기록되는 데 오랜 시간이 걸릴 것입니까? –