【问题标题】:App Insights - Pivot resultApp Insights - 透视结果
【发布时间】:2017-07-24 14:19:52
【问题描述】:

如何转换 App Insights 分析查询的结果?

例如,我想为每个 cloud_RoleInstace 设置一个值列:

performanceCounters  
| where timestamp > todatetime("2017-07-24T13:44:00.251Z")  
    and timestamp < todatetime("2017-07-24T13:49:00.251Z")   
| where name in ("% Processor Time")//, "Request Execution Time")  
| sort by timestamp asc nulls last  
| project timestamp, value, cloud_RoleInstance 

【问题讨论】:

    标签: azure-application-insights ms-app-analytics


    【解决方案1】:

    是的,只需添加

    | evaluate pivot(cloud_RoleInstance)
    

    或者可能更复杂但可能更正确:

    | summarize value=sum(value) by bin(timestamp, 1m), cloud_RoleInstance 
    | evaluate pivot(cloud_RoleInstance, sum(value))
    

    您的查询:)

    此外,您可以简化查询的时间部分以使用 between 运算符

    | where timestamp between(todatetime("2017-07-24T13:44:00.251Z")..todatetime"2017-07-24T13:49:00.251Z")   
    

    【讨论】:

    • 快速问题:可以用枢轴总结count()吗?我只得到 0 和 1,我认为这表示该给定行是否存在值?
    • 看起来你可以做 pivot(cloud_RoleInstance, sum(value) ,从文档看来目前只支持 countsum
    • 不走运 john...pivot(column, count()) 返回相同的 0 和 1...
    • 只有 0 和 1?如果我这样做| evaluate pivot(cloud_RoleInstance, sum(value)) 我会看到 0 和不是 1 的数字以及很多行。如果我这样做| summarize value=sum(value) by bin(timestamp, 1m), cloud_RoleInstance | evaluate pivot(cloud_RoleInstance, sum(value)),我每分钟得到一行,每个角色实例在那一分钟内的 perfcounter 的总和。
    • 太棒了,用这些东西更新了答案。一旦掌握了查询语言,它就会非常棒,我发誓该团队每天都会添加运算符和函数!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-28
    • 2020-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多