Logging 要定制排序顺序吗?
如何在Kusto中执行自定义排序顺序 查询示例:Logging 要定制排序顺序吗?,logging,azure-log-analytics,kql,Logging,Azure Log Analytics,Kql,如何在Kusto中执行自定义排序顺序 查询示例: //==================================================// // Assign variables //==================================================// let varStart = ago(2d); let varEnd = now(); let varStorageAccount = 'stgacctname'; //==========
//==================================================//
// Assign variables
//==================================================//
let varStart = ago(2d);
let varEnd = now();
let varStorageAccount = 'stgacctname';
//==================================================//
// Filter table
//==================================================//
StorageBlobLogs
| where TimeGenerated between (varStart .. varEnd)
and AccountName == varStorageAccount
| sort by OperationName
需要:
//==================================================//
// Assign variables
//==================================================//
let varStart = ago(2d);
let varEnd = now();
let varStorageAccount = 'stgacctname';
//==================================================//
// Filter table
//==================================================//
StorageBlobLogs
| where TimeGenerated between (varStart .. varEnd)
and AccountName == varStorageAccount
| sort by OperationName
- 我想将各种
(操作名
,GetBlob
等)放入自定义顺序AppendFile
- 比如:
|按操作名['GetBlob']、操作名['AppendFile']、操作名asc进行排序
- 理想情况下,我希望指定排序依据的值,然后允许Kusto使用
/asc
对其余的进行排序desc
这可能吗?使用辅助列,如下所示:
datatable(OperationName:string, SomethingElse:string)
[
"AppendFile", "3",
"GetBlob", "1",
"AppendFile", "4",
"GetBlob", "2"
]
| extend OrderPriority =
case(OperationName == "GetBlob", 1,
OperationName == "AppendFile", 2,
3)
| order by OrderPriority asc, SomethingElse asc
| project-away OrderPriority
输出:
操作名
某物
GetBlob
1.
GetBlob
2.
追加文件
3.
追加文件
4.
谢谢你在另一个问题上的投票。关于这个例子,kusto不提供这种“排序”,所以我认为您可以使用union所有子查询结果,以便它们可以自定义排序,我的意思是
let a=Your Query | where OperationName='GetBlob'按OperationName排序;让b=您的查询| where OperationName='AppendFile'按OperationName排序;工会a、b
听起来这是不可能使用原始Kusto的。这是一个很好的解决方案,尽管有点复杂。非常感谢。