asp.net-mvc - 适用于 Web 的 Azure 应用程序见解,在 Power BI 中显示唯一用户

标签 asp.net-mvc azure azure-application-insights powerbi

我们使用 Application Insights -> Stream Analytics -> Power BI 路径设置 Web 分析。

我们希望在 Power BI 仪表板中查看每日独立访问者的图表。

如果[context].[user].anonId不同,则用户被视为唯一。时间放置在见解 json 中的 [context].[data].eventTime 中。

导出查询应该类似于这样(我们知道如何解决缺少的 unique 关键字,因此为了简单起见,我将使用它):

SELECT
    count(unique A.[context].[user].anonId)
    SYSTEM.TIMESTAMP
FROM
    [export-input] A
    TIMESTAMP BY A.[context].[data].eventTime
GROUP BY 
    TumblingWindow(day, 1)

问题是 TIMESTAMP BY 不支持限定字段。如果没有这一点,我们实际上不是按实际页面访问时间,而是按此数据进入流分析的时间为用户添加时间戳。这意味着,我们可能会丢失一堆独特的 uesr,或者对其中一些进行两次计数。

有解决办法吗?

最佳答案

TIMESTAMP BY 现在支持限定字段,因此它应该不再是问题。但是,请注意,流分析没有 Unique/Distinct 关键字。您将需要像这样重写查询来计算唯一计数:

WITH step1 AS
(
SELECT
    COUNT(*) countPerAnonId
FROM
    [export-input] A
    TIMESTAMP BY A.[context].[data].eventTime
GROUP BY 
    A.[context].[user].anonId,
    TumblingWindow(day, 1)
)

SELECT COUNT(*)
FROM step1
GROUP BY System.Timestamp

关于asp.net-mvc - 适用于 Web 的 Azure 应用程序见解,在 Power BI 中显示唯一用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32119506/

相关文章:

python - azure 函数的有效绑定(bind)名称是什么?

c# - Azure Web 角色是否旨在托管永久打开的 TCP 连接?

c# - 使用 `String` 而不是 `Date` 类型时如何验证日期?

javascript - Owin、GrantResourceOwnerCredentials 发送自定义参数

asp.net-mvc - 最小起订量异常 : Verifying a method call that takes parameters

asp.net-mvc - 混合 spark 和 webform View 引擎

azure - 如何将根CA证书加载到azure中

asp.net - Application Insights 中未显示异常

azure - 如何使用 ARM 模板为 Application Insights 中的应用服务创建工作簿?

c# - 具有应用程序见解的依赖关系日志记录不会记录响应