21.4创建和配置Google云功能

21.4.1创建Google云函数

转到https://console.cloud.google.com/。 转到​Cloud Functions

GCP

然后你会看到这个。 单击​创建项目

GCP

作为​项目名称,使用​启动服务器端 — GCP
作为​位置,选择项目的存储位置。

单击​CREATE

GCP

随后将创建您的项目。

GCP

然后,您可以创建云函数。 单击​创建函数

GCP

然后你会看到这个。

GCP

做出以下选择:

  • 函数名称:ldap-launch-ssf(将ldap替换为ldap)
  • 地区:选择任意区域
  • 触发器类型:选择 HTTP
  • 身份验证:选择允 许未经身份验证的调用

你现在应该有这个。 单击​SAVE

GCP

单击​NEXT

GCP

然后您将看到:

GCP

做出以下选择:

  • 运行时:选择 Node.js 12
  • 入口点:进入 helloAEP

GCP

单击​启用API​以启用​云构建API。 然后你会看到一个新窗口。 在该新窗口中,再次单击​启用

GCP

启用​云构建API​后,您将看到此消息。

GCP

返回至您的​云函数

GCP

在云函数内联编辑器中,确保您在其中具有以下代码:

/**
 * Responds to any HTTP request.
 *
 * @param {!express:Request} req HTTP request context.
 * @param {!express:Response} res HTTP response context.
 */
exports.helloAEP = (req, res) => {
  let message = req.query.message || req.body.message || 'Hello World!';
  res.status(200).send(message);
};

接下来,单击​DEPLOY

然后你会看到这个。 您的云函数现在正在创建中。 这可能需要几分钟。

GCP

创建并运行函数后,您将看到此消息。 单击函数的名称以将其打开。

GCP

然后你会看到这个。 转到​TRIGGER。 然后,您将看到​触发器URL,您将使用该URL在Launch服务器端中定义端点。

GCP

复制触发器URL,其外观如下所示:https://us-central1-launch-server-side-gcp.cloudfunctions.net/vangeluw-launch-ssf

在后续步骤中,您将配置Adobe Experience Platform数据收集服务器,以将有关​页面查看次数​的特定信息流传输到您的Google云函数。 您不会按原样转发完整的负载,而是仅将​ECIDtimestamp​和​页面名称​等内容发送到您的Google云函数。

下面是需要解析以过滤掉上述变量的有效负载示例:

{
  "events": [
    {
      "xdm": {
		  "eventType": "web.webpagedetails.pageViews",
		  "web": {
		    "webPageDetails": {
		      "URL": "https://public.aepdemo.net/index.html",
		      "name": "Luma Home"
		    },
		    "webReferrer": {
		      "URL": "https://public.aepdemo.net/admin.html"
		    }
		  },
		  "device": {
		    "screenHeight": 1080,
		    "screenWidth": 1920,
		    "screenOrientation": "landscape"
		  },
		  "environment": {
		    "type": "browser",
		    "browserDetails": {
		      "viewportWidth": 1920,
		      "viewportHeight": 507,
		      "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36",
		      "acceptLanguage": "en"
		    }
		  },
		  "placeContext": {
		    "localTime": "2021-01-29T15:45:26.815+01:00",
		    "localTimezoneOffset": -60
		  },
		  "timestamp": "2021-01-29T14:45:26.815Z",
		  "implementationDetails": {
		    "name": "https://ns.adobe.com/experience/alloy/reactor",
		    "version": "2.3.0+2.2.0",
		    "environment": "browser"
		  },
		  "_experienceplatform": {
		    "identification": {
		      "core": {
		        "ecid": "83249052138816938582105724584714316131"
		      }
		    },
		    "demoEnvironment": {
		      "tms": "Launch",
		      "ldap": "vangeluw",
		      "brandLogo": "https://parsefiles.back4app.com/hgJBdVOS2eff03JCn6qXXOxT5jJFzialLAHJixD9/d632e769791f0a4dbe0b84058d282d45_logo.png",
		      "brandName": "Luma",
		      "brandIndustry": "retail"
		    }
		  }
		}

以下字段包含需要解析的信息:

  • ECID:events.xdm。_experienceplatform.identification.core.ecid
  • 时间戳:timestamp
  • 页面名称:events.xdm.web.webPageDetails.name

现在,让我们转到Adobe Experience Platform数据收集服务器,以配置数据元素,从而实现这一点。

21.4.2更新Adobe Experience Platform数据收集服务器属性:数据元素

转到https://experience.adobe.com/#/data-collection/

Adobe Experience Platform数据收集SSF

单击左上角的​客户端,然后在下拉菜单中,单击​服务器端。 然后,您将看到所有可用Adobe Experience Platform数据收集服务器属性的概述。 单击以打开在练习21.1中创建的属性。

Adobe Experience Platform数据收集SSF

在左侧菜单中,转到​数据元素。 单击 Add Data Element.

Adobe Experience Platform数据收集SSF

然后,您将看到要配置的新数据元素。

Adobe Experience Platform数据收集SSF

进行以下选择:

  • 对于​名称,输入​customerECID
  • 对于​扩展,选择​核心
  • 对于​数据元素类型,选择​路径
  • 对于​Path,输入arc.event.xdm.--aepTenantId--.identification.core.ecid。 通过输入此路径,您将从网站或移动设备应用程序发送到Adobe Edge的事件有效负载中过滤掉字段​ecid
注意

在上述路径和下面路径中,对​arc​进行引用。 ​arcstants表示Adobe资源上 ​下文,而arcalways表示在服务器端上下文中可用的可用的最高对象。可以使用Adobe Experience Platform数据收集服务器函数将扩充和转换添加到​arc​对象。

在上述路径和下面的路径中,对​event​进行引用。 ​事件表示唯一事件,Adobe Experience Platform数据收集服务器将始终单独评估每个事件。有时,您可能会在Web SDK客户端发送的有效负载中看到对​events​的引用,但在Adobe Experience Platform数据收集服务器中,会单独评估每个事件。

你现在会得到这个。 单击​保存

Adobe Experience Platform数据收集SSF

单击 Add Data Element.

Adobe Experience Platform数据收集SSF

然后,您将看到要配置的新数据元素。

Adobe Experience Platform数据收集SSF

进行以下选择:

  • 对于​Name,输入​eventTimestamp
  • 对于​扩展,选择​核心
  • 对于​数据元素类型,选择​路径
  • 对于​Path,输入​arc.event.xdm.timestamp。 通过输入此路径,您将从网站或移动设备应用程序发送到Adobe Edge的事件有效负载中过滤掉字段​timestamp

你现在会得到这个。 单击​保存

Adobe Experience Platform数据收集SSF

单击 Add Data Element.

Adobe Experience Platform数据收集SSF

然后,您将看到要配置的新数据元素。

Adobe Experience Platform数据收集SSF

进行以下选择:

  • 对于​Name,输入​pageName
  • 对于​扩展,选择​核心
  • 对于​数据元素类型,选择​路径
  • 对于​Path,输入​arc.event.xdm.web.webPageDetails.name。 通过输入此路径,您将从网站或移动设备应用程序发送到Adobe Edge的事件有效负载中过滤掉字段​name

你现在会得到这个。 单击​保存

Adobe Experience Platform数据收集SSF

您现在已创建以下数据元素:

Adobe Experience Platform数据收集SSF

21.4.3更新Adobe Experience Platform数据收集服务器属性:更新规则

在左侧菜单中,转到​Rules。 在上一个练习中,您创建了规则​All Pages。 单击该规则以将其打开。

Adobe Experience Platform数据收集SSF

你会的。 单击​Actions​下的​+​图标以添加新操作。

Adobe Experience Platform数据收集SSF

然后你会看到这个。

Adobe Experience Platform数据收集SSF

进行以下选择:

  • 选择​Extension:Adobe云连接器
  • 选择​操作类型:进行获取调用

这应该为您提供​名称:Adobe云连接器 — 进行获取调用。 此时您应会看到以下内容:

Adobe Experience Platform数据收集SSF

接下来,配置以下内容:

  • 将请求协议从GET更改为​POST
  • 输入您在以前某个步骤中创建的Google云函数的URL,如下所示:https://us-central1-launch-server-side-gcp.cloudfunctions.net/vangeluw-launch-ssf

你现在应该有这个。 接下来,转到​Body

Adobe Experience Platform数据收集SSF

然后你会看到这个。 单击​JSON​的单选按钮。

Adobe Experience Platform数据收集SSF

按如下方式配置​Body:

customerECID {{customerECID}}
pageName {{pageName}}
eventTimestamp {{eventTimestamp}}

然后你会看到这个。 单击 Keep Changes.

Adobe Experience Platform数据收集SSF

然后你会看到这个。 单击​保存

Adobe Experience Platform数据收集SSF

您现在已更新Adobe Experience Platform数据收集服务器属性中的现有规则。 转到​发布流程​以发布更改。 按照指示,通过单击​Edit​打开开发库​v1

Adobe Experience Platform数据收集SSF

单击​Add All Changed Resources​按钮,随后您将看到此库中显示您的规则和数据元素。 接下来,单击​Save & Build for Development。 您的更改现已部署完成。

Adobe Experience Platform数据收集SSF

几分钟后,您将看到部署已完成并准备进行测试。

Adobe Experience Platform数据收集SSF

21.3.4测试配置

打开全新的隐身浏览器窗口,然后转到https://public.aepdemo.net

然后你会看到这个。

Adobe Experience Platform数据收集设置

输入配置ID并单击​Load Configuration。 随后将加载您的配置。

Adobe Experience Platform数据收集设置

向下滚动,然后单击​保存配置

Adobe Experience Platform数据收集设置

然后,您将被重定向到“管理员”主页。 转到​选择LDAP。 选择LDAP并单击​Save

Adobe Experience Platform数据收集设置

然后,您将被重定向到“管理员”主页。 转到​选择Brand​并选择品牌​Luma,单击​Save

Adobe Experience Platform数据收集设置

然后,您将被重定向到“管理员”主页。 单击​Luma​徽标。

Adobe Experience Platform数据收集设置

然后,您将看到Luma主页。

Adobe Experience Platform数据收集设置

在打开浏览器的“开发人员视图”时,您可以检查网络请求,如下所示。 使用过滤器​interact​时,您将看到Adobe Experience Platform数据收集客户端发送到Adobe Edge的网络请求。

Adobe Experience Platform数据收集设置

将视图切换到Google云函数,然后转到​LOGS。 现在,您应该有一个与此类似的视图,并显示许多日志条目。 每次您看到​函数开始执行​时,它表示在您的Google云函数中接收到传入流量。

Adobe Experience Platform数据收集设置

让我们更新一下您的函数以处理传入数据,并显示从Adobe Experience Platform数据收集服务器收到的信息。 转到​SOURCE​并单击​EDIT

Adobe Experience Platform数据收集设置

在下一个屏幕中,单击​NEXT

Adobe Experience Platform数据收集设置

更新您的代码,如下所示:

/**
 * Responds to any HTTP request.
 *
 * @param {!express:Request} req HTTP request context.
 * @param {!express:Response} res HTTP response context.
 */
exports.helloAEP = (req, res) => {
  console.log('>>>>> Function has started. The following information was received from Launch Server Side:');
  console.log(req.body);

  let message = req.query.message || req.body.message || 'Hello World!';
  res.status(200).send(message);
};

然后你会得到这个。 单击​DEPLOY

Adobe Experience Platform数据收集设置

几分钟后,您的函数将再次部署。 单击您的函数名称以将其打开。

Adobe Experience Platform数据收集设置

在您的演示网站上,导航到产品,例如​Nadia Elements Shell

Adobe Experience Platform数据收集设置

将视图切换到Google云函数,然后转到​LOGS。 现在,您应该有一个与此类似的视图,并显示许多日志条目。

对于演示网站上的每次页面查看,您现在应会在Google Cloud函数的日志中看到一个新的日志条目弹出窗口,其中显示了收到的信息。

Adobe Experience Platform数据收集设置

现在,您已成功将Adobe Experience Platform数据收集收集的数据实时发送到Google云函数端点。 从此处,任何Google Cloud Platform应用程序(例如BigQuery)都可以使用该数据进行存储和报告,或用于机器学习用例。

下一步:21.5创建并配置Microsoft Azure函数

返回到模块21

返回到所有模块

在此页面上