如何从 Azure Log Analytics 中找到附加到 Azure Linux 虚拟机的每个磁盘的总大小?

Posted

技术标签:

【中文标题】如何从 Azure Log Analytics 中找到附加到 Azure Linux 虚拟机的每个磁盘的总大小?【英文标题】:How to find total size of each disk attached to Azure Linux Virtual Machine from Azure Log analytics? 【发布时间】:2021-10-27 07:53:55 【问题描述】:

我有 Azure Log Analytics 中收集的 Azure Linux VM 指标的资源日志。一些指标是 % Used SpaceFree MB 等。 我在分区级别获取这些指标的日志。(/home、/boot、/opt、/tmp、/mnt 等)

具有时间戳、VM 名称、指标名称、指标值、分区名称作为字段的示例记录:

我想根据这些指标计算附加到 VM 的每个数据磁盘的总磁盘大小。 我试过这个公式:

TotalSizeInMb = (可用兆字节/(100- % 已用空间)) * 100

我猜,我得到了每个分区的总大小,例如 /home、/boot、/mnt、/tmp 等。 我无法将这些分区与 Azure 中的 OS 磁盘或数据磁盘相关联。

理想情况下,我想从 Log Analytics 中的指标中找到 OS 磁盘和数据磁盘的总大小。

有人可以帮我解决这个问题吗?

谢谢

【问题讨论】:

你检查过this 吗? @amitd 是的,我已经检查过了。但这与附加到 Windows VM 的磁盘有关,这将在 Log Analytics 中为每个磁盘生成指标。在 Linux VM 的情况下,它是不一样的,它会为磁盘中的每个分区生成指标。我试图找出如何从 Log Analytics 中可用的指标中找到连接到 Linux Vm 的磁盘的总大小。 【参考方案1】:

请使用以下查询以 GB 为单位查找每个磁盘的总大小:

let disk_free_GB = 
Perf
| where ObjectName == "Logical Disk"
| where CounterName == "Free Megabytes"
| where InstanceName != "/boot/efi" and InstanceName != "_Total" //excluding partitions and total vm space
| summarize (TimeGenerated, disk_free_gb)=arg_max(TimeGenerated, CounterValue/1024) by Computer, InstanceName;
let used_space_percent = 
Perf
| where ObjectName == "Logical Disk"
| where CounterName == "% Used Space"
| where InstanceName != "/boot/efi" and InstanceName != "_Total" //excluding partitions and total vm space
| summarize (TimeGenerated, Used_Space_Percent)=arg_max(TimeGenerated, CounterValue) by Computer, InstanceName;
disk_free_GB 
| join (
   used_space_percent 
) on Computer, InstanceName
| extend  total_gb = disk_free_gb/(1-Used_Space_Percent/100)
| project Computer, InstanceName, disk_free_gb, Used_Space_Percent, total_gb

预期的输出是

【讨论】:

以上是关于如何从 Azure Log Analytics 中找到附加到 Azure Linux 虚拟机的每个磁盘的总大小?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Log Analytics / Azure Monitor 挂接到角色分配中?

Azure Log Analytics - 警报建议

从 Databricks 将日志推送到 Log Analytics

将日志从一个 Azure Log Analytics 工作区传送到另一个

根据数据类型增加Azure Log Analytics的数据保留时间

Azure Log Analytics - SQL 托管实例日志