tag seguimiento manager google eventos evento etiqueta configurar como codigo code google-analytics google-analytics-api

manager - ¿Cuál es la identificación del cliente al enviar datos de seguimiento a Google Analytics a través del protocolo de medición?



onclick ga (3)

Estoy utilizando un nodo con un módulo de análisis rápido y universal y he elegido usar el cid incrustado en la cookie _ga en lugar de generar mi propio lado del servidor cid.

mi servidor.js se ve así ...

app.use(function(req, res, next) { if(req.session && (!req.session.cid) && req.cookies._ga){ //Use the cid already embedded in the _ga cookie and save to session so I can access from socket routes var gaSplit = req.cookies._ga.split(''.''); req.session.cid = gaSplit[2] + "." + gaSplit[3]; }; next(); });

Luego, más adelante, puedo hacer esto ...

ua = require(''universal-analytics'') var visitor = ua(''UAXXX'', req.session.cid)

HTH

Quiero utilizar el nuevo protocolo de medición de Google para enviar eventos de seguimiento desde mi servidor en lugar de JavaScript.

Esta página dice que se requiere la identificación del cliente: https://developers.google.com/analytics/devguides/collection/protocol/v1/devguide#required

Y esta página dice que es opcional: https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#visitor

Además, el formato definido en estos documentos es diferente: la primera página da un entero como ejemplo y simplemente dice que es "un valor único", mientras que el segundo dice que debe ser un UUID.

Si envío identificadores de usuario o UUID generados en mi back-end, ¿cómo sabrá Google para vincular ese visitante a una sesión de visitante existente? Parece que tendría que recuperar la referencia interna de GA a un usuario existente.

Cualquier ayuda es apreciada, ¡gracias!


En Rails:

def save_google_analytics_client_id if current_user && cookies["_ga"] client_id = cookies["_ga"].split(".").last(2).join(".") if current_user.google_analytics_client_id != client_id current_user.google_analytics_client_id = client_id current_user.save end end end


Entero o UUID

El cid es el equivalente del segundo valor en la cookie _utma cuando usa el seguimiento de JavaScript. En js tracking, es un entero aleatorio (generado por Math.round(2147483647 * Math.random()) ). Pero está diseñado y enviado como una cadena: para que pueda usar ambos formatos (entero o UUID).

Requerido / Opcional

Con el seguimiento de js, los servidores de Analytics ignoran una solicitud enviada con un ID de usuario faltante. Entonces asuma que es requerido.

Enlace visitante web con acciones de protocolo de medición

Si desea vincular a su usuario back-end con un visitante previamente rastreado con Analytics javascript ga.js , puede obtener el valor cid de la cookie _utma . Pero no lo recomiendo; cada vez que cambia (cambio de terminal o navegador, limpieza de cookies, etc.), perderá el vínculo con las acciones previas de su cliente.

Actualizar

analytics.js no existía cuando se formuló la pregunta. cid ahora está almacenado en la cookie _ga . Puedes obtenerlo en javascript con:

ga(function(tracker) { var clientId = tracker.get(''clientId''); });

Al escribir esto, cuando obtiene el ID de cliente del rastreador como en el código anterior, no le dará un UUID sino dos enteros aleatorios de 32 bits en el formato "XY". Esta implementación puede cambiar al UUID en el futuro.

O configúrelo con su propio valor (como un UUID generado por el backend):

ga(''create'', ''UA-XXXXX-Y'', {''clientId'': ''your_client_id''});