gra*_*a36 8 azure azure-application-insights ms-app-analytics kusto
我想做,
https://example.com/dir01/?query=apple¶m=1
https://example.com/dir01/?query=apple¶m=1
https://example.com/dir01/?query=lemon+juice¶m=1
https://example.com/dir01/?query=lemon+juice¶m=0
https://example.com/dir01/?query=tasteful+grape+wine¶m=1
apple
lemon+juice
tasteful+grape+wine
https://aka.ms/AIAnalyticsDemo
我认为extract
或parseurl(url)
应该是有用的.我尝试了后者,parseurl(url)
但不知道如何将"查询参数"提取为一列.
pageViews
| where timestamp > ago(1d)
| extend parsed_url=parseurl(url)
| summarize count() by tostring(parsed_url)
| render barchart
Run Code Online (Sandbox Code Playgroud)
url
http://aiconnect2.cloudapp.net/FabrikamProd/
parsed_url
{"Scheme":"http","Host":"aiconnect2.cloudapp.net","Port":"","Path":"/FabrikamProd/","Username":"","Password":"","Query Parameters":{},"Fragment":""}
Asa*_*erg 12
是的,parseurl是这样做的方式.它会产生一个动态值,您可以将其用作json.要获取查询参数的"查询"值:
pageViews
| where timestamp > ago(1d)
| extend parsed_url=parseurl(url)
| extend query = tostring(parsed_url["Query Parameters"]["query"])
Run Code Online (Sandbox Code Playgroud)
并通过参数值总结:
pageViews
| where timestamp > ago(1d)
| extend parsed_url=parseurl(url)
| extend query = tostring(parsed_url["Query Parameters"]["query"])
| extend param = toint(parsed["Query Parameters"]["param"])
| summarize sum(param) by query
Run Code Online (Sandbox Code Playgroud)
您可以在演示门户中查看它对示例值的工作原理:
let vals = datatable(url:string)["https://example.com/dir01/?
query=apple¶m=1", "https://example.com/dir01/?query=apple¶m=1",
"https://example.com/dir01/?query=lemon+juice¶m=1",
"https://example.com/dir01/?query=lemon+juice¶m=0",
"https://example.com/dir01/?query=tasteful+grape+wine¶m=1"];
vals
| extend parsed = parseurl(url)
| extend query = tostring(parsed["Query Parameters"]["query"])
| extend param = toint(parsed["Query Parameters"]["param"])
| summarize sum(param) by query
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助,
阿萨夫
归档时间: |
|
查看次数: |
7126 次 |
最近记录: |