性能计数器提供虚拟硬件组件、操作系统和工作负载性能的见解。 搭配使用数据收集规则 (DCR) 和性能计数器数据源,从 Windows 和 Linux 虚拟机收集计数器。
有关创建 DCR 的详细信息,请参阅 使用 Azure Monitor 从 VM 客户端收集数据。 本文提供了性能计数器数据源类型的其他详细信息。
注意
若要直接使用 DCR 定义或使用 ARM 模板等其他方法进行部署,请参阅 Azure Monitor 中的数据收集规则(DCR)示例。
根据使用 Azure Monitor 从虚拟机客户端收集数据的过程创建 DCR。 在 DCR 的“收集和传递”选项卡上,从“数据源类型”下拉列表中选择“性能计数器”。 从预定义的一组对象和其采样率中进行选择。 采样率越低,收集值的频率就越高。
选择“自定义”以指定XPath来收集使用基本选择不可获取的任何性能计数器。 使用 \PerfObject(ParentInstance/ObjectInstance#InstanceIndex)\Counter
格式。
提示
如果计数器名称包含和符号 (&),请将其替换成 &
。 例如,\Memory\Free & Zero Page List Bytes
。
警告
在手动定义与 Windows 和 Linux 计算机关联的 DCR 计数器时要小心,因为某些 Windows 和 Linux 样式计数器名称可以解析为相同的指标并导致重复收集。 例如,在同一 DCR 中同时指定 \LogicalDisk(*)\Disk Transfers/sec
(Windows) 和 Logical Disk(*)\Disk Transfers/sec
(Linux) 将导致每个采样周期收集磁盘传输指标两次。
通过不在未指定平台类型的 DCR 中收集性能计数器,可以避免此行为。 确保 Windows 计数器仅包含在与 Windows 计算机关联的 DCR 中,并且 Linux 计数器仅包含在与 Linux 计算机关联的 DCR 中。
注意
Microsoft.HybridCompute(已启用 Azure Arc 的服务器)资源当前无法在 指标资源管理器中查看,但可以通过指标 REST API(指标命名空间 - 列表、指标定义 - 列表和指标 - 列表)获取其指标数据。
性能计数器可以发送到一个 Log Analytics 工作区,存储在 Perf 表和/或 Azure Monitor 指标(预览版)中,在指标资源管理器中可用。 添加 Azure Monitor 日志 类型的目标并选择 Log Analytics 工作区。 虽然可以添加多个工作区,但请注意,这会向每个工作区发送重复的数据,这将导致额外的成本。 对于 Azure Monitor 指标(预览版),不需要进一步的详细信息,因为这存储在受监视资源的订阅级别。
注意
对于 Linux,v1.10.9.0 或更高版本中支持使用 Azure Monitor 指标作为唯一目标。
若要验证是否正在 Log Analytics 工作区中收集数据,请检查 Perf 表中的记录。 在虚拟机或 Azure 门户中的 Log Analytics 工作区中,选择 “日志 ”,然后单击“ 表 ”按钮。 在“虚拟机”类别下,单击 Perf 旁边的“运行”。
若要验证数据是否正在 Azure Monitor 指标中收集,请从 Azure 门户中的虚拟机中选择 “指标 ”。 为命名空间选择 虚拟机来宾 (Windows)或 azure.vm.linux.guestmetrics ,然后选择要添加到视图的指标。
适用于 Windows 和 Linux 虚拟机的 Azure Monitor 代理可收集以下性能计数器。 创建或更新数据收集规则时,可以更改采样频率。
性能计数器 | 类别 | 默认采样频率 |
---|---|---|
Processor(*)\% Processor Time | 中央处理器 | 六十 |
处理器(*)\% 空闲时间 | 中央处理器 | 六十 |
Processor(*)\% User Time | 中央处理器 | 六十 |
Processor(*)\% Nice Time | 中央处理器 | 六十 |
Processor(*)\% Privileged Time | 中央处理器 | 六十 |
处理器(*)\% 输入/输出等待时间 | 中央处理器 | 六十 |
处理器(*)\% 中断时间 | 中央处理器 | 六十 |
内存(*)\可用内存(MB) | 内存 | 六十 |
Memory(*)\% Available Memory | 内存 | 六十 |
内存(*)\已用内存 MB | 内存 | 六十 |
内存(*)\% 已用内存 | 内存 | 六十 |
内存(*)\页/秒 | 内存 | 六十 |
内存(*)\页面读取/秒 | 内存 | 六十 |
Memory(*)\页面写入次数/秒 | 内存 | 六十 |
Memory(*)\Available MBytes Swap | 内存 | 六十 |
内存(*)\% 可用交换空间 | 内存 | 六十 |
Memory(*)\Used MBytes Swap Space | 内存 | 六十 |
内存(*)\% 已用交换空间 | 内存 | 六十 |
Process(*)\Pct User Time | 内存 | 六十 |
Process(*)\Pct Privileged Time | 内存 | 六十 |
进程(*)\已用内存 | 内存 | 六十 |
Process(*)\Virtual Shared Memory | 内存 | 六十 |
Logical Disk(*)\% Free Inodes | 磁盘 | 六十 |
Logical Disk(*)\% Used Inodes | 磁盘 | 六十 |
Logical Disk(*)\Free Megabytes | 磁盘 | 六十 |
逻辑磁盘(*)\% 空闲空间 | 磁盘 | 六十 |
逻辑磁盘(*)\% 已用空间 | 磁盘 | 六十 |
逻辑磁盘(*)\逻辑磁盘字节/秒 | 磁盘 | 六十 |
逻辑磁盘(*)\磁盘读取字节数/秒 | 磁盘 | 六十 |
逻辑磁盘(*)\磁盘写入字节/秒 | 磁盘 | 六十 |
逻辑磁盘(*)\磁盘传输次数/秒 | 磁盘 | 六十 |
逻辑磁盘(*)\磁盘读取次数/秒 | 磁盘 | 六十 |
逻辑磁盘(*)\磁盘写入次数/秒 | 磁盘 | 六十 |
网络(*)\传输的总字节数 | 网络 | 六十 |
网络(*)\接收的总字节数 | 网络 | 六十 |
网络(*)\总字节数 | 网络 | 六十 |
网络(*)\传输的数据包总数 | 网络 | 六十 |
网络(*)\总接收的数据包数量 | 网络 | 六十 |
Network(*)\Total Rx Errors | 网络 | 六十 |
Network(*)\Total Tx Errors | 网络 | 六十 |
网络(*)\总碰撞次数 | 网络 | 六十 |
System(*)\Uptime | 系统 | 六十 |
System(*)\Load1 | 系统 | 六十 |
System(*)\Load5 | 系统 | 六十 |
System(*)\Load15 | 系统 | 六十 |
System(*)\Users | 系统 | 六十 |
System(*)\Unique Users | 系统 | 六十 |
System(*)\CPUs | 系统 | 六十 |
- 详细了解 Azure Monitor 代理程序。
- 详细了解数据收集规则。