Что использовать в качестве идентификатора сеанса в понимании приложения - PullRequest
0 голосов
/ 16 мая 2019

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

Насколько я понимаю, мне нужно аннотировать телеметрию, которую я отправляю, с идентификатором пользователя и идентификатором сеанса.

Для идентификатора пользователя у нас есть идентификатор, который является статическим для пользователя с течением времени.

Для идентификатора сессии я немного озадачен тем, что делать.

  1. Получу ли я выгоду на портале Azure, просто вставив идентификатор пользователя в телеметрию без идентификатора сеанса
  2. Что я могу использовать как сессионный ключ, который имеет смысл? Бэкэнд используется некоторыми приложениями, которые нельзя легко изменить

1 Ответ

1 голос
/ 16 мая 2019

Application Insights имеют поля для трех разных идентификаторов. Ожидания:

  1. UserId - идентификатор пользователя, либо стабильный идентификатор [никогда не изменяется для этого пользователя], либо хотя бы один и тот же идентификатор во многих сеансах
  2. SessionId - идентификатор сеанса [рассмотрим один сеанс браузера]
  3. OperationId - идентификатор операции [представьте себе одну операцию, такую ​​как «вход в систему» ​​или «купить автомобиль»], несколько операций за сеанс

Если данные в этих идентификаторах соответствуют указанным выше рекомендациям, это обеспечит наилучшее взаимодействие с пользователем.

С другой стороны, если, например, все три идентификатора инициализированы с помощью UserId, то представление «Транзакция» станет непригодным для использования, поскольку оно покажет все, что пользователь когда-либо делал, и отдельные транзакции (такие как «покупка автомобиля») будут очень трудно устранить неполадки, используя этот конкретный вид.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...