Что такое идентификатор клиента при отправке данных отслеживания в google analytics через протокол измерения?



Я хочу использовать новый протокол измерения Google для отправки событий отслеживания с моего сервера вместо JavaScript.

на этой странице указано, что требуется идентификатор клиента: https://developers.google.com/analytics/devguides/collection/protocol/v1/devguide#required

и эта страница говорит, что это необязательно: https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#visitor

плюс, формат, определенный в эти документы отличаются - первая страница дает целое число в качестве примера и просто говорит, что это "уникальное значение", а вторая ссылка говорит, что это должен быть UUID.

Если я отправлю либо идентификаторы пользователей, либо сгенерированные UUID на моем бэкэнде, как Google узнает, чтобы связать этого посетителя с существующим сеансом посетителей? Похоже, мне нужно будет получить внутреннюю ссылку GA на существующего пользователя.

любая помощь ценится-спасибо!

159   3  

3 ответов:

Integer или UUID

The cid является эквивалентом второго значения в _utma cookie при использовании отслеживания javascript. В JS tracking это случайное целое число (генерируемое Math.round(2147483647 * Math.random())). Но он строится и отправляется как строка : поэтому вы можете использовать оба формата (integer или UUID).

Обязательный/Дополнительный

при отслеживании js запрос, отправленный с отсутствующим идентификатором пользователя, игнорируется серверами аналитики. Так предположим, что это необходимо.

связать веб-посетителя с действиями протокола измерения

если вы хотите связать своего бэкэнд-пользователя с посетителем, ранее отслеживаемым с помощью Analytics javascript ga.js, вы можете получить cid значение _utma печенье. Но я не рекомендую его; каждый раз, когда он меняется (изменение терминала или браузера, очистка файлов cookie и т. д.), вы потеряете связь с предыдущим вашим клиентом действия.

обновление

The analytics.js не существовало, когда был задан вопрос. cid теперь хранится в cookie _ga. Вы можете получить его в javascript с помощью:

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

на момент написания этого, когда вы получите clientId от трекера, как в приведенном выше коде, он не даст вам UUID, а два случайных 32-битных целых числа в формате "X. Y". Эта реализация может измениться на UUID в будущем.

или установить его с вашим собственным значением (например, бэкэнд генерируется UUID):

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

В 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

Я использую узел с модулем express и universal-analytics и решил использовать cid, встроенный в файл cookie _ga, а не создавать свою собственную серверную сторону cid.

мой сервер.js выглядит так...

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();
});  

потом, позже, я могу сделать это..

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

HTH

    Ничего не найдено.

Добавить ответ:
Отменить.