DTM 为自定义链接和页面调用提供不同的报表包?

DTM giving a different report suite for custom links and page calls?

我在 DTM 中遇到了一些非常奇怪的行为。当我们的页面加载时(从网站的本地实例),我们会通过适当的开发报告套件获得预期的调用。当从该页面进行自定义 link 调用时,出于某种原因 DTM 将其与生产报表包一起发送。如果我在 Adob​​e Analytics 中查找在产品 RSI 下报告的自定义 link 名称,它不会显示在其中。

关于发生了什么以及如何解决这个问题有什么想法吗?

这是我根据你所说的在黑暗中拍摄的,它是基于你的陈述是真实的假设(例如,你没有看到粉红色的大象,请求确实显示了你的 prod rsid在请求的适当部分 url,你确实在经过一段可接受的时间后检查了你的 prod rsid,没有段或其他过滤器恶作剧,等等。:简而言之,你知道如何准确表演基本的问答歌舞)。

在这个假设下,下面的场景可以合理地重现您所描述的内容。对于您的具体情况,我可能部分正确或完全不正确,但如果不访问您的 DTM 实例,我真的无法确定。

场景

长话短说,听起来您混合启用了自定义代码和 DTM 自动设置,并且 DTM 覆盖 and/or 不关心您的自定义代码以进行 link 跟踪。

更具体地说,在我看来您已将 AA 作为 DTM 中的工具实施,并且在配置设置中,您在文本字段中指定了生产和暂存 rsid。

然后在 General 部分,您要么没有为 Tracking ServerTracking Server Secure 指定值,否则它们被设置为错误的值。

然后,在 图书馆管理 部分,您选择 "Managed by Adobe" 在这种情况下 DTM 负责图书馆,或者您选择 "Custom" 并且您正在自己添加库并且您 检查 "Set report suites using custom code below"。

然后,在 DTM 的某处(例如 图书馆管理 > 自定义代码框,或 自定义页面代码 代码框)你有代码弹出 rsid 内容(例如 s.accounts_accountdynamicAccountList 内容),可能还有 trackingServertrackingServerSecure

最后,您(像大多数其他人一样,因为 DTM 的双脚本包含用于暂存和生产是..愚蠢的)只需在您的页面上使用生产脚本包含,并使用 debug/staging 模式或依靠你设置的任何 rsid 路由逻辑来路由到开发。

所以.. 首次加载页面时,DTM 会加载 AA 库并根据您在工具配置中指定的内容设置变量和内容。在此期间,它还会弹出您在工具配置中拥有的任何自定义代码块,这些代码块可能会或可能不会覆盖您在工具配置字段中指定的内容,具体取决于您启用的内容。然后,它会弹出页面加载规则(如果有)等中的内容。

但随后 link 点击。正如我在 SO 的其他帖子中提到的,DTM 有关于它如何在初始页面后引用 AA 对象的警告(IMO 错误)[=121= 】 要求:基本上没有。相反,它利用内部方法(主要方法是 .getS() 方法)根据您在工具配置部分中配置的任何内容创建 AA 对象的新实例。好吧,问题就在这里。它 NOT 说明或执行您在工具配置部分的代码框中完成的任何自定义编码。

因此,只要触发了基于事件的规则或直接调用规则,基本上就会发生这种情况,这会有效地困扰您。 DTM 为什么要这样做?我不知道。 IMO Adob​​e 需要更改此 feature caveat 错误。要么他们应该重构 DTM 以执行代码框,要么他们可以,你知道的.. 只是引用创建的原始 AA 对象,就像任何普通脚本一样..

但无论如何..

例如,我的理论是页面加载正常,根据您的设置指向 dev rsid。但是随后您单击 link 并触发一个事件,DTM 生成一个新的 AA 对象而不关心您的自定义代码,因此它所要做的就是您在工具的配置字段中拥有的内容。

由于 DTM 实际上没有关于您在这些字段中指定的产品与开发 rsid 的任何规则(您必须在自定义代码框中编写自定义代码 - DTM 会忽略!),它只会弹出产品rsid,因为这是您页面上包含的脚本。

那么就没有看到数据实际显示在您的产品 rsid 中​​:同样,由于 DTM 忽略了您在自定义代码框中设置的内容,因此它默认为工具配置中 trackingServer 字段中指定的内容,我在这里的假设是它们要么是空白要么是错误的(您应该能够查看请求 url 到 adobe 以验证这一点)。这个理论是因为你说 prod rsid 是对的,而且你看到了一个请求。所以下一个罪魁祸首是错误指定的跟踪服务器。

所以,这就是我对正在发生的事情的理论。也许一切都好,也许是对的,希望它至少可以为您指明正确的方向。

编辑:

如果您能确认这确实是您的设置方式,那么您自然会问 "Okay, well what do I do about that?"。正如我在很多其他 SO 答案中所说的那样。基本上,您唯一的选择是取消选中使 DTM 自动执行 AA 的所有设置,并且在您的所有规则中,禁用 AA 部分以及您想要设置的任何 AA 变量,自己设置它们并使 s.t()s.tl() 在第 3 方脚本代码框中调用自己,以便它继续引用并基于最初实例化的 AA 对象弹出。

更新

根据您在下面的评论,好的,是的..这听起来像我所描述的,并且解释了 prod rsid 弹出。至于报告中未显示的数据……因此,如果您确定跟踪服务器设置正确(请求 url 看起来不错),那么这不是 DTM 问题。以下是数据未显示原因的其他一些解释:

  • 确定请求正在发送到您的 prod rsid 吗?我不知道你在看什么来验证这一点,但这是你应该看的地方:在对 AA 的 URL 请求中:"http://[trackingServer value]/b/ss/[s.account value]/1..."
  • 点击请求未发送到 Omniture。在数据包嗅探器中验证请求是否实际发出以及您是否收到 200 OK or NS_Binding_Aborted response
  • 您等待的时间不够长,无法检查数据。即使是基本的命中数据和查看 "real time" 报告也需要一点时间才能显示出来。
  • 您有一个 segment/filter 活动,它与您尝试查看的数据不一致。确保您没有应用任何东西。或者,如果您正在使用这些东西来查找您的数据(但没有看到它),请确保您正确地应用了它。
  • 您最近创建了 rsid,"go live" 日期尚未过去。在指定的 "go live" 日期后最多 24 小时内,数据才会显示在报表包中。
  • 您有一个影响数据显示的 vista 规则。一些公司出于多种原因制定了 vista 规则,并且有上百万种方式可以影响数据(例如路由到不同的报表包)。对于狗屎和笑容,请检查您的开发人员(或其他 rsid)以查看您的数据是否显示在那里。即使这没有意义,至少它是向前迈出的一步。
  • 您有一个机器人程序/IP 排除规则,可以从您的位置捕获数据。
  • 从 link 点击发送的数据与报告无关。例如,也许您正在查看例如prop10 报告和 prop10 实际上并未在点击请求中发送。

我知道其中有很多是需要检查的基本内容,毫无疑问您已经检查过,但请再次检查。请其他人为您检查以确定。我在这里不是在质疑你的能力,但即使是最好的编码员有时也会忘记在他们的 t 上划线并在他们的 i 上加点,并设法遗漏明显的东西。如果您确定所有这些,请联系 Adob​​e ClientCare,因为我真的想不出任何其他不涉及 Adob​​e 后端问题的事情。

我 运行 在我的实现中遇到了类似的问题。本质上,我所做的是直接在 doPlugins 中设置 s.account 变量,因此它会在所有跟踪调用中设置。我在这里也写了细节:DTM Tracking Account