- TLC Home Home
- Discussions Discussions
- Documentation Documentation
- Knowledge Base Knowledge Base
- Education Education
- Blog Blog
- Support Desk Support Desk
02-08-2017 02:51 PM
Our dev team implemented some utag.view and utag.link calls that are being used to fire Google Analytics page and event tags. Along with the utag.view and utag.link calls, we are passing an array of variables and values. When I'm debugging the implementation, I see the calls firing properly, and the "a" object contains the right variables and values. However, when I switch and look at the Network calls made to Google Analytics, I see that one of the variables has a different value than what the utag call/data stated. Specifically, for those familiar with GA tracking, the variable is the "non-interaction" parameter.
Does anyone know or have an idea of what might be happening here? why isn't Tealium mapping correctly this value from the utag.view and utag.link calls to the GA tags? I see the variable is mapping correctly to the GA parameter, but the value is wrong :(
Thank you!
02-09-2017 12:50 AM
Easy:
Set a breakpoint inside the GUA tag template inside u.send(a,b)...
Refresh the page so you are broken inside the function and
console.log(b); console.log(u.map);
and see if `b[u.map[key]]` lines up with what you think you're mapping.
Easy:
Install the Google Analytics Debugger Extension from Chrome and in the devtools look at the log output from GA.
Fun Overly Complex Method:
For your devteam to try if they want:
In the devtools set a breakpoint on the first line of the GUA Tag Template
Refresh the page and while you're broken execute this snippet in the console.
(function() { window.GoogleAnalyticsObject = "" || "ga"; window[window.GoogleAnalyticsObject] = window[window.GoogleAnalyticsObject] || function() { (window[window.GoogleAnalyticsObject].q = window[window.GoogleAnalyticsObject].q || []).push(arguments); } var slice = function() { return Array.prototype.slice.call(arguments); } var before = function(before, fn) { return function() { before.apply(this, arguments); return fn.apply(this, arguments); } } var oga = ga; ga = before(function() { console.log(Array.from(arguments)); debugger; return arguments; }, oga); })(window);
Now hit play and you will see the arguments being passed into the ga function from within the tag template and you will break every time ga is called.
Look at the values being passed into GA and when you find the key that you think is being set incorrectly in the callstack restart the frame and trace the execution of how the value got there.
Copyright All Rights Reserved © 2008-2023