迁移到Web SDK所需的步骤

以下步骤包含要努力实现的具体目标。 单击每个步骤以了解完成该操作的详细说明。

1. 创建和配置数据流

在Adobe Experience Platform数据收集中创建数据流。 当您将数据发送到此数据流时,它会将数据转发到Adobe Analytics。 将来,同一数据流会将数据转发到Customer Journey Analytics。

  1. 导航到experience.adobe.com并使用您的凭据登录。
  2. 使用右上角的主页或产品选择器导航到​ 数据收集
  3. 在左侧导航中,选择​ 数据流
  4. 选择​ 新数据流
  5. 输入所需的名称,然后选择​ 保存
  6. 创建数据流后,选择​ 添加服务
  7. 在服务下拉菜单中,选择​ Adobe Analytics
  8. 输入与您当前将分析数据发送到的网站相同的报表包ID。 单击​ 保存

添加Adobe Analytics服务

您的数据流现在可以接收数据并传递给Adobe Analytics。 请记下数据流ID,因为在代码中配置Web SDK时需要此ID。

2. 安装Web SDK JavaScript库
引用alloy.js的最新版本,以便使用其方法调用。 有关详细信息和要使用的代码块,请参阅使用JavaScript库安装Web SDK
3. 配置Web SDK

使用Web SDK configure命令将您的实施设置为指向在上一步中创建的数据流。 必须在每个页面上设置configure命令,以便您可以将其与库安装代码一起包含。

在Web SDK configure命令中使用datastreamIdorgId属性:

  • datastreamId设置为从上一步检索到的数据流ID。
  • orgId设置为您组织的IMS组织。
alloy("configure", {
    datastreamId: "ebebf826-a01f-4458-8cec-ef61de241c93",
    orgId: "ADB3LETTERSANDNUMBERS@AdobeOrg"
});

您可以选择在configure命令中设置其他属性,具体取决于贵组织的实施要求。

4. 更新代码逻辑以使用JSON有效负载

更改您的Analytics实施,使其不依赖于AppMeasurement.jss对象。 相反,应将变量设置为格式正确的JavaScript对象,该对象在发送到Adobe时会被转换为JSON对象。 在网站上设置数据层在设置值时非常有用,因为您可以继续引用这些相同的值。

若要将数据发送到Adobe Analytics,Web SDK有效负载必须将data.__adobe.analytics与此对象中设置的所有Analytics变量一起使用。 此对象中的变量与其对应的AppMeasurement变量具有相同的名称和格式。 例如,如果设置products变量,请勿像使用XDM时那样将其拆分为单独的对象。 相反,如果设置s.products变量,请完全将其作为字符串包含:

{
  "data": {
    "__adobe": {
      "analytics": {
        "products": "Shoes,Men's sneakers,1,49.99"
      }
    }
  }
}

最终,此有效负载包含所有所需的值,并且实施中对s对象的所有引用都将被删除。 您可以使用JavaScript提供的任何资源来设置此有效负载对象,包括点表示法来设置各个值。

// Define the payload and set objects within it
var dataObj = {data: {__adobe: {analytics: {}}}};
dataObj.data.__adobe.analytics.pageName = window.document.title;
dataObj.data.__adobe.analytics.eVar1 = "Example value";

// Alternatively, set values in an object and use a spread operator to achieve identical results
var a = new Object;
a.pageName = window.document.title;
a.eVar1 = "Example value";
var dataObj = {data:{__adobe:{analytics:{...a}}}};
5. 更新方法调用以使用Web SDK

更新调用s.t()s.tl()的所有实例,将它们替换为sendEvent命令。 需要考虑三种情况:

  • 页面查看跟踪:将页面查看跟踪调用替换为Web SDK sendEvent命令:

    // If your current implementation has this line of code:
    s.t();
    
    // Replace it with this line of code. The dataObj object contains the variables to send.
    alloy("sendEvent", dataObj);
    
  • 自动链接跟踪:默认情况下启用clickCollectionEnabled配置属性。 它会自动设置正确的链接跟踪变量,以将数据发送到Adobe Analytics。 如果要禁用自动链接跟踪,请在configure命令中将此属性设置为false

  • 手动链接跟踪: Web SDK在pageview调用与非页面视图调用之间没有单独的命令。 在有效负荷对象中提供该区别。

    // If your current implementation has this line of code:
    s.tl(true,"o","Example custom link");
    
    // Replace it with these lines of code. Add the required fields to the dataObj object.
    dataObj.data.__adobe.analytics.linkName = "Example custom link";
    dataObj.data.__adobe.analytics.linkType = "o";
    dataObj.data.__adobe.analytics.linkURL = "https://example.com";
    alloy("sendEvent", dataObj);
    
6. 验证和发布更改

删除对AppMeasurement和s对象的所有引用后,将更改发布到开发环境以验证新实施是否有效。 在验证所有组件均可正确工作后,您可以将更新发布到生产环境。

如果迁移正确,则您的网站上不再需要AppMeasurement.js,并且可以删除对此脚本的所有引用。

此时,您的Analytics实施已完全放在Web SDK上,并准备好将来迁移到Customer Journey Analytics。

Analytics