【发布时间】:2016-07-30 05:27:17
【问题描述】:
当我尝试在谷歌分析中设置appVersion 时,我的事件跟踪停止工作。具体来说,我正在尝试将应用版本包含在事件跟踪中,这样我就可以知道哪个版本的应用引发了事件。
我试过这样设置应用版本:
ga('set', 'appVersion', app.version);
我试过这样:
ga('send',
'event',
eventCategory,
eventAction,
{'page': pageName, 'appVersion' : app.version });
我也尝试了替代语法:
ga('send',
{'hitType' : 'event',
'eventCategory' : eventCategory,
'eventAction' : eventAction,
'page' : pageName,
'appVersion' : app.version});
如果我包含 appVersion,则事件跟踪将停止工作。行为/事件部分没有实时显示事件,第二天也没有显示。但 PageViews 仍然有效。
根据 cmets 的要求,我正在编辑以添加我的事件跟踪代码。当我尝试解决这个问题时,它已经经历了几种变化。这是它目前的样子。
var app = {
trackEvent: function (pageName, eventCategory, eventAction, optionalEventLabel, optionalEventValue) {
var eventObject = {
'eventCategory' : eventCategory,
'eventAction' : eventAction,
'optionalEventLabel' : optionalEventLabel,
'optionalEventValue' : optionalEventValue,
'page' : pageName,
};
console.log("app.trackEvent - " + JSON.stringify(eventObject));
ga('send', 'event', eventObject);
}
}
我在很多地方使用如下调用调用此方法:
app.trackEvent("PageNameValue", "EventCategoryValue", "EventActionValue", "EventLabelValueIfIHaveOne", AnIntegerValueIfIHaveOne);
任何帮助或建议将不胜感激。
编辑... 我发现以下似乎适用的错误报告:https://code.google.com/p/analytics-issues/issues/detail?id=366 错误报告者提到通过设置自定义维度来解决此问题。我会试试看的。
【问题讨论】:
-
两种事件格式看起来都很好。为方便起见,您可能希望使用 appVersion 设置事件标签。请注意,如果您将应用版本设置为
set,则它适用于页面上的所有点击。此外,如果您set它,那么您无需在事件命中时再次执行此操作(因此只需选择一种方法,而不是两种方法)。通常的调试步骤:使用 GA Debugger 检查,检查控制台命中,确保没有设置过滤器。 -
感谢nyuen的回复。感谢您确认 set 的行为 - 这对我来说似乎更可取。我确实安装了 GA 调试器插件并将其打开,但我没有看到控制台输出有任何差异。我可能没有为此寻找正确的地方。 Ctrl+Shift+J 调出 chrome 开发者控制台对吗?当我查看控制台的“网络”选项卡时,我可以看到 GA 事件请求以状态码 200 结束,这应该表示成功,但正如我所说,事件跟踪将完全停止工作。我确实注意到我的初始请求被重定向(状态代码 307)
-
我猜想用版本号设置 eventLabel 是一种解决方法。我想让它与实际的 appVersion 一起使用,以便我可以将它用于过滤 eventCategory 作为二级维度。
-
我不确定为什么这些事件会停止工作。您能否包含后续事件的代码(即成功后应该触发的事件)?
-
上面的 trackEvent 代码目前正在运行。但是,如果我将 'appVersion' : '1.0' 添加到发送事件调用中,它就会停止工作。
标签: google-analytics event-tracking