Последовательные попадания ГА отбрасываются
Я хочу отслеживать офлайн-события, используя Google Analytic и Local Storage. это мой код:
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-27966345-1']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setSessionCookieTimeout',10]);
_gaq.push(['_setSampleRate', '400']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
Я просто сохраняю события в локальном хранилище, и когда пользователь возвращается в онлайн, я пытаюсь отправить события в Google в течение, но когда я сравниваю свой счетчик с просмотрами страниц, которые я вижу в режиме реального времени (Google Analytic), я не могу понять почему они разные. Я думаю о частоте дискретизации Google или о чем-то, потому что я тестировал это много раз, и я вижу разные результаты, иногда результаты правильные, но иногда имеют разницу в 1000 и более
Вот мой код для отправки событий:
while(ctr>0){
if(sd==0){
sd=1;
alert(ctr);
}
//
if(flag==0)break;
var name='tosend';
var tosend_action=localStorage.getItem(name+'action'+ctr);
var tosend_label=localStorage.getItem(name+'label'+ctr);
var tosend_value=localStorage.getItem(name+'value'+ctr);
_gaq.push(['_trackEvent',value,tosend_action,tosend_label+"_val:"+tosend_value,tosend_value]);
_gaq.push(['_trackPageview',name+'value'+ctr]);
localStorage.removeItem(name+'action'+ctr);
localStorage.removeItem(name+'label'+ctr);
localStorage.removeItem(name+'value'+ctr);
ctr=Number(ctr)-1;
localStorage.removeItem('counter');
localStorage.setItem('counter',ctr);
ctr=localStorage.getItem('counter');
}
}
p.s: flag - это переменная my, чтобы увидеть, находится ли пользователь в сети или нет.