ga.getAll() 不 return 所有跟踪器

ga.getAll() does not return all the trackers

使用带有 4 个 Analytics 标签的 Google 标签管理器:3 个标签在 "Page View" 上触发,而 1 个标签在 "JavaScript error" 上触发。

标签本身工作正常:如果 uncaught JavaScript error 发生,事件会被正确触发并由 Google Analytics 收集。

目标

我还想使用该标签来触发自定义事件,以将那些 caught.

的错误发送给 Analytics

问题

其他 3 个标签在执行 ga.getAll()ga.getByName() 时在我的代码中可用。相反,第四个标签不在数组中。它变得可用 only after at least 1 uncaught exception is thrown。这使得 getByName 不可靠,以防捕获的错误发生在任何未捕获的错误之前。

这是 ga 错误还是预期的行为?是否有另一种方法来实现错误记录,可能是通过 dataLayer 或以不同方式配置的单独标记?

跟踪器是在标记被触发时创建的,因此这是预期的行为 - ga.getByName() 在这里并非不可靠,它只是无法 return 尚未实例化的跟踪器。