无法查询 AppInsight 日志

Cannot query AppInsight log

我正在努力创建 AppInsight 查询...

我想获取一个应用程序的启动次数,然后除以触发某个事件(拼写检查器)的次数。

实际上,我有 3 个应用程序都使用相同的拼写检查功能,我想看看每个应用程序中拼写检查的使用量是否相同。

//First, let's get the count of hasBeenUsed (how many times the application has been used) 
let app1Starts =
customEvents
| where timestamp > ago(30d)
| where name == 'hasBeenUsed';
| where customDimensions['payload.appId] == 'app1'
| summarize count(); 
//Now, let's get the count of how many times spellchecking has happened for that specific application
let spellCheckEvents =
customEvents
| where timestamp > ago(30d)
| where name == 'spellchecked';
| where customDimensions['payload.appId] == 'app1'
| summarize count();
//this is where I struggle
customEvents
| summarize app1Starts / spellCheckEvents    //HELP ME PLEASE

我收到错误消息

'summarize' operator: Failed to resolve scalar expression named 'app1Starts'

如果我将最后一行从 summarize 更改为 extend

,也会发生同样的情况

你可以在 let 语句中使用 toscalar() 运算符。

对于您的情况,查询应该是:

//First, let's get the count of hasBeenUsed (how many times the application has been used) 
let app1Starts =toscalar(
customEvents
| where timestamp > ago(30d)
| where name == 'hasBeenUsed'
| where customDimensions['payload.appId] == 'app1'
| summarize count()); 

//Now, let's get the count of how many times spellchecking has happened for that specific application
let spellCheckEvents =toscalar(
customEvents
| where timestamp > ago(30d)
| where name == 'spellchecked'
| where customDimensions['payload.appId] == 'app1'
| summarize count());

//then you can use the following statement
customEvents
| extend c1=app1Starts/spellCheckEvents