所以我试图使用演示凭证使用GET请求每小时在最后一天获取浏览器异常的数量:
https://api.applicationinsights.io/beta/apps/DEMO_APP/metrics/exceptions/browser?timespan=P1D&interval=PT1H
但它不会返回所有数据,它只返回已设置的数据,如下所示:
{
start: '2017-08-22T13:00:00.000Z',
end: '2017-08-22T14:00:00.000Z',
'exceptions/browser': { sum: 1 }
}
{
start: '2017-08-23T04:00:00.000Z',
end: '2017-08-23T05:00:00.000Z',
'exceptions/browser': { sum: 1 }
}
我该怎么做才能返回每一位数据,即使总和为0?例如:
{
start: '2017-08-22T13:00:00.000Z',
end: '2017-08-22T14:00:00.000Z',
'exceptions/browser': { sum: 1 }
}
{
start: '2017-08-23T14:00:00.000Z',
end: '2017-08-23T15:00:00.000Z',
'exceptions/browser': { sum: 0 }
}
{
start: '2017-08-23T15:00:00.000Z',
end: '2017-08-23T16:00:00.000Z',
'exceptions/browser': { sum: 0 }
}
{
start: '2017-08-23T16:00:00.000Z',
end: '2017-08-23T17:00:00.000Z',
'exceptions/browser': { sum: 1 }
}
答案 0 :(得分:1)
这需要使用查询API,并使用Analytics Query Language形式化您的查询 我正在运行以获取您想要的相同数据的查询是:
exceptions
| where timestamp >= ago(24h)
| where client_Type=="Browser"
| make-series count() default=0 on timestamp in range(ago(24h), now(), 1h)
| mvexpand count_ to typeof(long), timestamp to typeof(datetime)
很少有事情需要注意:
client_Type=="Browser"
进行过滤,以匹配exceptions/browser
查询make-series
而不是summarize
https://api.applicationinsights.io/beta/apps/DEMO_APP/query?query=exceptions%7C%20where%20timestamp%20%3E%3D%20ago(24h)%7C%20where%20client_Type%3D%3D%22Browser%22%7C%20make-series%20count()%20default%3D0%20on%20timestamp%20in%20range(ago(24h)%2C%20now()%2C%201h)%7C%20mvexpand%20count_%20to%20typeof(long)%2C%20timestamp%20to%20typeof(datetime)
答案 1 :(得分:0)
您正在使用API的指标部分,请使用查询部分。
查询仍然会返回Jason但是in odata标准。这意味着需要涉及分页。
查询调用将允许您返回所有列和所有行。