【问题标题】:Sitecore Analytics: Trigger Event from REST service (Sitecore 6.5)Sitecore Analytics:从 REST 服务触发事件 (Sitecore 6.5)
【发布时间】:2013-07-16 14:12:02
【问题描述】:

我是 Sitecore Analytics 的新手,我遇到了一种情况,即我想在调用 REST 服务后保存一些 Analytics 数据。

我正在使用 Fiddler 调用 POST REST 服务。在 REST 服务中(我关注了类似的文章 Sitecore Analytics: Trigger profiles and events from webservice),我编写了以下代码。我正在传递正确的虚拟事件名称MLN360_BLDG_CLK_EN,它是我在/sitecore/system/Settings/Analytics/Page Events/ 下创建的

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();
}

但是,我在PageEvents 表中根本没有看到任何记录。如果我使用此代码并将其粘贴到分配了演示文稿布局的项目(.aspx 页面)中并使用 Web 浏览器调用此项目(.aspx 页面),则记录将添加到数据库中

如何使用 Web 服务注册事件,以及如何使用 Fiddler 等客户端对其进行测试?

谢谢

【问题讨论】:

  • 您是否从 Sitecore 中部署了 PageEvent?在内容编辑器中,单击“审核”选项卡,然后单击“工作流”块中的“部署”按钮。虽然如果您还没有这样做,我怀疑当您尝试在分析跟踪器中注册事件时会引发异常。
  • @AdamWeber:是的,我已经部署了页面事件。我也在 PageEventDefinitions 表中看到了我的事件,但在 PageEvents 表中没有。
  • 有趣。我在本地环境中尝试了您的代码,但无法重现该问题,即页面事件已按预期在 PageEvents 表中注册。我对代码所做的唯一修改是删除设置 Sitecore.Context.Item - 您不需要使用 DMS 执行此操作。您是否检查过 Sitecore.Analytics.config 中的 Analytics.TrackerChanges.FlushInterval 设置?也许间隔设置为某个较大的数字,而将跟踪器数据写入数据库需要很长时间?
  • @AdamWeber:奇怪的是,如果我将此代码粘贴到页面(具有布局)并通过网络浏览器调用,事件就会被注册。但是,如果我使用 Fiddler 并为相同的 URL 发送 GET 请求,代码会被执行,但页面事件不会被注册。我确定 Fiddler 在请求期间不会发送一些信息,因为 Tracker 没有要跟踪的信息,因此它不会抱怨,也不会注册页面事件。如何使用 Fiddler 之类的客户端发送被跟踪的请求,我们可以在 PageEvents 表中看到条目。
  • @AdamWeber:终于!!问题在于使用 Fiddler,我使用谷歌的 Simple REST 客户端扩展来发出请求,我可以在数据库中看到页面事件。谢谢亚当。

标签: c# sitecore sitecore6 sitecore-dms


【解决方案1】:

问题在于使用 Fiddler,正如他们所说的“半知半解是极其危险的”。我改为切换到 Chrome 的简单 REST 客户端扩展来发出请求,我可以在页面事件表中看到事件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多