Kusto - 从 Kusto table 结果中提取键值
Kusto - extract key value from the Kusto table result
如何从 Kusto Table 结果中提取一组键值。我有一个数据字段(Kusto table 中的列),其中包含日志详细信息(15 行带时间戳)。在这 15 行中,最后 3 行有一个键值对,我需要在查询中使用它来过滤和显示结果。
我用的是下面的方法吗,能举个例子吗
从具有相同格式或模式的字符串的列中提取值 -
列中的示例值为(数据部分的最后 3 行)
2021-09-05T06:42:19.2287304Z VMtype - C4
2021-09-05T06:42:19.2287304Z patchsizeMB - 2533```
I am trying with the below Query is this the right way of doing
```| parse Data with * "Virtual machine =" Virtual machine
| parse Data with * "VMtype=" VMtype
| parse Data with * "patchsizeMB=" patchsizeMB```
您实现它的方式很好,最容易理解和维护。
这是一个完整的示例,其中每个时间戳在一行中返回结果:
datatable(Data:string)["2021-09-05T06:42:19.2287304Z VMtype - C4",
"2021-09-05T06:42:19.2287304Z patchsizeMB - 2533",
"2021-09-05T06:42:19.2287304Z Virtual machine - VM_Name"]
| parse Data with Timestemp:datetime " " *
| parse Data with * "Virtual machine -" VirtualMachine
| parse Data with * "VMtype -" VMtype
| parse Data with * "patchsizeMB -" patchsizeMB
| summarize take_any(VirtualMachine), take_any(VMtype), take_any(patchsizeMB) by bin(Timestemp, 1d)
结果:
Timestemp
VirtualMachine
VMtype
patchsizeMB
2021-09-05
VM_Name
C4
2533
您也可以通过将字符串拆分为一个数组并处理该数组来填充适用的值来实现它,但它的代码要多得多,而且可能更脆弱。
如何从 Kusto Table 结果中提取一组键值。我有一个数据字段(Kusto table 中的列),其中包含日志详细信息(15 行带时间戳)。在这 15 行中,最后 3 行有一个键值对,我需要在查询中使用它来过滤和显示结果。
我用的是下面的方法吗,能举个例子吗
从具有相同格式或模式的字符串的列中提取值 -
列中的示例值为(数据部分的最后 3 行)
2021-09-05T06:42:19.2287304Z VMtype - C4
2021-09-05T06:42:19.2287304Z patchsizeMB - 2533```
I am trying with the below Query is this the right way of doing
```| parse Data with * "Virtual machine =" Virtual machine
| parse Data with * "VMtype=" VMtype
| parse Data with * "patchsizeMB=" patchsizeMB```
您实现它的方式很好,最容易理解和维护。
这是一个完整的示例,其中每个时间戳在一行中返回结果:
datatable(Data:string)["2021-09-05T06:42:19.2287304Z VMtype - C4",
"2021-09-05T06:42:19.2287304Z patchsizeMB - 2533",
"2021-09-05T06:42:19.2287304Z Virtual machine - VM_Name"]
| parse Data with Timestemp:datetime " " *
| parse Data with * "Virtual machine -" VirtualMachine
| parse Data with * "VMtype -" VMtype
| parse Data with * "patchsizeMB -" patchsizeMB
| summarize take_any(VirtualMachine), take_any(VMtype), take_any(patchsizeMB) by bin(Timestemp, 1d)
结果:
Timestemp | VirtualMachine | VMtype | patchsizeMB |
---|---|---|---|
2021-09-05 | VM_Name | C4 | 2533 |
您也可以通过将字符串拆分为一个数组并处理该数组来填充适用的值来实现它,但它的代码要多得多,而且可能更脆弱。