zabbix键值wmi.getall的使用-获取Window信息

在线答疑:https://forum.lwops.cn/

本文完整讲解 wmi.getall 键值作用、环境准备、低级自动发现(LLD)、监控项原型全流程配置。

键值介绍:

wmi.getall[<命名空间>, <WQL查询语句>]

 第一个参数:WMI 命名空间

绝大多数 Windows 硬件 / 系统类固定为 root\cimv2,不可随意修改;

少数特殊组件(存储、虚拟化)才会使用其他命名空间。

 第二个参数:WQL 查询语句

类 SQL 查询语法,用来筛选要采集的 Windows 对象字段;

语句外层使用双引号包裹,Zabbix 内部会自动转义。

键值需要在agent配置开启远程命令参数,5.0以下版本的参数是 EnableRemoteCommand=1,5.0以上版本的是 AllowKey=wmi.getall[*],然后重启agent即可使用。

适用系统:Windows 7/Server 2008R2 及以上,原生支持 WMI、wmic 命令;Windows XP/2003 兼容性较差,不推荐使用。

以下是一个获取windows硬盘序列号和硬盘状态的示例

第一步:创建监控项

键值:wmi.getall[root\cimv2,"select DeviceID,Status,SerialNumber,Caption from Win32_DiskDrive where Name like '%PHYSICALDRIVE%'"]

1.1监控项获取值测试,如图能正常获取到值

第二步:创建自动发现规则

 Zabbix Web → 配置 → 模板 → 选中目标模板 Windows系统硬件信息。

 切换到 自动发现规则 → 右上角 创建发现规则。

2.1填写名称

类型:相关项目

主要项:选择监控项(硬盘发现)

2.2配置 LLD 宏 + JSONPath 解析

LLD 宏名称

JSONPath 表达式

作用说明

{#DISK.CAPTION}

$.Caption

提取磁盘型号 / 名称

{#DISK.DEVICEID}

$.DeviceID

提取磁盘设备 ID(核心唯一标识)

{#DISK.SERIAL}

$.SerialNumber

提取磁盘序列号

{#DISK.STATUS}

$.Status

提取磁盘运行状态

2.3创建【监控项原型】(自动生成监控项)

原型 1:硬盘序列号监控(文本类型)

原型 2:硬盘运行状态监控

第三步:查看监控数据

posted @ 2026-06-24 10:11  乐维_lwops  阅读(5)  评论(0)    收藏  举报