【发布时间】:2021-09-07 07:49:57
【问题描述】:
我正在将 Azure OPDG 系统聚合日志从 Azure 监控代理提取到 Azure Log Analytics 工作区。每个日志都按时间戳收集,我使用自定义过滤器来分离出CounterMin、CounterMax、CounterAverage 和CounterName。 CounterName 的 4 种类型分别是 GatewayCPUPercent、SystemCPUPercent、SystemMEMUsedPercent 和 GatewayMEMKb。不幸的是,最后一个值 GatewayMEMKb 不在系统总内存的百分比中,因此无法在时间表上跟踪这 4 个值。
我想将GatewayMEMKb 转换为GatewayMEMUsedPercent,并且我有服务器总内存的值,所以应该可以这样做,但我不知道如何提取CounterAverage 列的值取决于 CounterName 列的内容。
我意识到这可能需要使用单独的列来实现,但不知道该怎么做。
初始数据:
| CounterName | CounterAverage |
|---|---|
| GatewayCPUPercent | 15 |
| SystemCPUPercent | 45 |
| SystemMEMUsedPercent | 30 |
| GatewayMEMKb | 327,678 |
| GatewayCPUPercent | 14 |
| SystemCPUPercent | 48 |
| SystemMEMUsedPercent | 31 |
| GatewayMEMKb | 356,876 |
期望的结果:
| CounterName | CounterAverage | GatewayMEMUsedPercent |
|---|---|---|
| GatewayCPUPercent | 15 | |
| SystemCPUPercent | 45 | |
| SystemMEMUsedPercent | 30 | |
| GatewayMEMKb | 327,678 | 2.5 |
| GatewayCPUPercent | 14 | |
| SystemCPUPercent | 48 | |
| SystemMEMUsedPercent | 31 | |
| GatewayMEMKb | 356,876 | 2.8 |
【问题讨论】:
标签: azure azure-data-explorer azure-log-analytics kql