代码之家  ›  专栏  ›  技术社区  ›  Henrik

Application insight如何跟踪用户Id?

  •  4
  • Henrik  · 技术社区  · 8 年前

    我正在运行一个具有application insight的Azure Webapp。

    我知道Microsoft无法显示真实的IP(Client\u IP),所以我将真实的IP地址添加到所有请求(IP)。

    我有一个访客客户端,在过去24小时内使用了48个不同的客户端IP地址。

    同一用户还具有多个真实的IPv6地址。

    我喜欢从我的网站上屏蔽这个IP,但我觉得这看起来很奇怪。

    它真的是同一个用户吗?

    Application insight如何跟踪用户Id?

    Image link

    2 回复  |  直到 5 年前
        1
  •  2
  •   Peter    8 年前

    通常,application insights会自动为每个用户打开一个会话(查找 ai_session 键)。因此,默认用户范围将是会话范围。

    如果您有某种登录,可以通过发送用户上下文来覆盖此行为。( https://docs.microsoft.com/en-us/azure/application-insights/app-insights-usage-send-user-context )

    我发现很可能是同一台设备上的同一个用户,只是使用了几个IP地址,可能是试图保持匿名的失败尝试。

        2
  •  2
  •   sanath meti    8 年前

    用户ID应在用户会话中保持不变,以跟踪用户的行为 随着时间的推移。有多种方法可以持久化ID。

    A definition of a user that you already have in your service.
    If the service has access to a browser, it can pass the browser a cookie with an ID in it. The ID will persist for as long as the cookie
    

    保留在用户浏览器中。 如有必要,您可以在每个会话中使用新ID,但有关用户的结果将受到限制。例如,您将无法看到 用户的行为会随着时间的推移而改变。

    ID应该是Guid或另一个足够复杂的字符串,以识别 每个用户都是唯一的。例如,它可以是一个长的随机数。

    如果ID包含有关用户的个人识别信息, 将其作为 用户ID。您可以将此类ID作为经过身份验证的用户ID发送,但 不满足使用场景的用户ID要求。

    Azure文档中提到。 https://docs.microsoft.com/en-us/azure/application-insights/app-insights-usage-send-user-context