1 创建 监控项
概述
要在 Zabbix 前端中 create 一个 监控项,请执行以下操作:
- 转到:数据收集 → 主机
- 点击 监控项 在 主机 的行中
- 点击屏幕右上角的 创建监控项
- 在表单中输入监控项的参数
您也可以通过打开一个现有的create并按下 术语_447b7147来创建一个新的监控项。 克隆 按钮,然后以不同的名称保存。
配置
监控项 选项卡包含监控项的常规属性。

所有必填输入字段都以红色星号标记。
| Parameter | Description |
|---|---|
| Name | 监控项名称。 支持用户宏。 |
| Type | 监控项类型。请参见各个监控项类型章节。 |
| Key | 监控项键值(最多 2048 个字符)。 可支持的监控项键值可在各监控项类型章节中找到。 同一主机内键值必须唯一。 如果键类型为 'Zabbix agent'、'Zabbix agent (active)' 或 'Simple check',则键值必须被 Zabbix agent 或 Zabbix 服务器支持。 另请参见:正确的key 格式。 |
| Type of information | 在执行转换后(如有),存储在数据库中的数据类型。 Numeric (unsigned) - 64 位无符号整数。 请注意,如果接收到整数监控项的浮点值,其小数部分将被截断。 Numeric (float) - 64 位浮点数。 此类型可提供约 15 位数字的精度,范围约为 -1.79E+308 到 1.79E+308(PostgreSQL 11 及更早版本除外)。 也支持接收科学计数法格式的值,例如 1.23E+7、1e308、1.1E-4。 Character - 短文本数据。 Log - 带有可选日志相关属性(时间戳、来源、严重性、logeventid)的长文本数据。 Text - 长文本数据。另请参见text data limits。 Binary - 二进制数(仅支持依赖监控项)。 对于返回二进制数据类型值的监控项,不支持在计算监控项公式或触发器表达式中使用。 对于仅以某一种特定格式返回数据的监控项键值,会自动选择匹配的 information 类型。 |
| Host interface | 选择主机接口。此字段在主机级别编辑监控项时可用。 |
| Units | 如果设置了单位符号,Zabbix 会对接收到的监控项值进行后处理,并以指定的单位后缀显示。 支持带特殊格式的单位符号(以及接收到的监控项值 → 显示值示例): B - 字节(1024 → 1 KB) Bps - 每秒字节数(1024 → 1 KBps) s - 秒,最多显示三个最大的非零时间单位(881764 → 10d 4h 56m) uptime - 以 hh:mm:ss 或 N days, hh:mm:ss 格式显示的已运行时间(881764 → 10 days, 04:56:04) unixtime - Unix 时间戳,格式化为 yyyy.mm.dd hh:mm:ss(881764 → 1970-01-11 04:56:04 AM);要正确格式化,接收到的监控项值必须为 Numeric (unsigned)。 对于其他单位(如 Hz、W 等),如果接收到的值超过 1000,则会除以 1000 并显示相应前缀(5000 → 5 KHz,881764 → 881.76 KW)。 如果单位符号前缀为 !,则会禁用单位转换和前缀处理(1024 !B → 1024 B,61 !s → 61 s)。有关单位符号和单位转换的更多示例和详细信息,请参见监控项值后缀。 |
| Update interval | 每 N 秒获取一次此监控项的新值。允许的最大更新间隔为 86400 秒(1 天)。 支持时间后缀,例如 30s、1m、2h、1d。 支持用户宏。 单个宏必须填满整个字段。不支持在一个字段中使用多个宏,也不支持宏与文本混用。 注意:只有在存在非零值的自定义间隔时,才能将更新间隔设置为 '0'。如果设置为 '0',且存在非零值的自定义间隔(灵活或计划),则会在自定义间隔持续期间轮询该监控项。 注意:监控项变为活动状态后或更新间隔变更后,首次轮询可能早于配置值。 新监控项将在创建后 60 秒内检查,除非它们具有计划或灵活更新间隔,并且 Update interval 设置为 0。 现有的被动监控项可通过点击 Execute now 按钮立即获取值。 |
| Custom intervals | 您可以为检查监控项创建自定义规则: Flexible - 创建 Update interval 的例外(不同频率的间隔)。 Scheduling - 创建自定义轮询计划。 详细信息请参见自定义间隔。 Interval 字段支持时间后缀,例如 30s、1m、2h、1d。 支持用户宏。 单个宏必须填满整个字段。不支持在一个字段中使用多个宏,也不支持宏与文本混用。 |
| Timeout | 设置监控项检查超时(适用于受支持的监控项类型)。请选择超时选项: Global - 使用 proxy/全局超时(显示在灰色的 Timeout 字段中)。 Override - 使用自定义超时(在 Timeout 字段中设置;允许范围:1 - 600s)。支持时间后缀,例如 30s、1m,以及用户宏。 点击 Timeouts 链接可配置proxy超时或全局超时(如果未使用 proxy)。请注意,只有具有 Super admin 类型且对 Administration > General 或 Administration > Proxies 前端部分具有权限的用户,才能看到 Timeouts 链接。 |
| History | 请选择以下之一: Do not store - 不存储监控项历史数据。若只有依赖监控项需要保留历史数据,此选项对主监控项很有用。 此设置不能被全局 housekeeper 设置覆盖。 Store up to - 指定在数据库中保留详细历史数据的时长(1 小时到 25 年)。较旧的数据将由 housekeeper 删除。以秒为单位存储。 支持时间后缀,例如 2h、1d。支持用户宏。 Store up to 的值可在 Administration > Housekeeping 中全局覆盖。 如果存在全局覆盖设置,将显示橙色的 信息图标。将鼠标悬停其上时,会显示警告消息,例如 Overridden by global housekeeper settings (1d)。建议尽可能缩短记录值的保留时间,以减少数据库中值历史记录的大小。您可以存储更长时间的趋势数据,而不是存储很长的值历史。 另请参见历史和趋势。 |
| Trends | 请选择以下之一: Do not store - 不存储趋势数据。 此设置不能被全局 housekeeper 设置覆盖。 Store up to - 指定在数据库中保留聚合后的历史数据(每小时最小值、最大值、平均值、计数)的时长(1 天到 25 年)。较旧的数据将由 housekeeper 删除。以秒为单位存储。 支持时间后缀,例如 24h、1d。支持用户宏。 Store up to 的值可在 Administration > Housekeeping 中全局覆盖。 如果存在全局覆盖设置,将显示橙色的 信息图标。将鼠标悬停其上时,会显示警告消息,例如 Overridden by global housekeeper settings (7d)。注意: 非数值数据(character、log 和 text)不支持保留趋势。 另请参见历史和趋势。 |
| Value mapping | 将值映射应用于此监控项。值映射不会更改接收到的值,仅用于显示数据。 它适用于 Numeric(unsigned)、Numeric(float) 和 Character 监控项。 例如,“Windows service states”。 |
| Log time format | 仅适用于 Log 类型的监控项。支持的占位符: y:Year (1970-2038)。 M:Month (01-12)。 d:Day (01-31)。 h:Hour (00-23)。 m:Minute (00-59)。 s:Second (00-59)。 如果留空,时间戳将被设置为 Unix 时间中的 0,表示 1970 年 1 月 1 日。 例如,考虑来自 Zabbix agent 日志文件的以下一行: " 23480:20100328:154718.045 Zabbix agent started. Zabbix 1.8.2 (revision 11211)." 它以 PID 的 6 个字符位置开头,后面是日期、时间和消息的其余部分。 此行的日志时间格式应为 "pppppp:yyyyMMdd:hhmmss"。 请注意,"p" 和 ":" 字符是占位符,可以是除 "yMdhms" 之外的任何字符。 |
| Populates host inventory field | 您可以选择一个主机清单字段,由监控项的值填充。此功能仅在主机启用了自动清单填充时有效。 如果 Type of information 设置为 'Log',则此字段不可用。 |
| Description | 输入监控项描述。支持用户宏。 |
| Enabled | 勾选复选框以启用该监控项,使其被处理。 |
| Latest data | 点击链接查看该监控项的最新数据。 此链接仅在编辑已存在的监控项时可用。 |
监控项类型特定字段在相应页面中描述。
在主机级别编辑现有模板级别监控项时,部分字段为只读。 您可以使用表单标题中的链接转到模板级别并在那里编辑这些字段,但请注意,模板级别的更改会影响该模板关联的所有主机上的该监控项。
Tags 选项卡用于定义监控项级别的标签。

监控项 值预处理
预处理选项卡允许为接收到的值定义transformation rules。
监控项测试
要执行监控项测试,请确保服务器和 proxy 上的系统时间已同步。 如果服务器时间落后,监控项测试可能会返回错误消息“The task has been expired.”。 但是,在服务器和 proxy 上设置不同的时区不会影响测试结果。
可以测试监控项,并在配置正确的情况下获取实际值。 即使监控项尚未保存,也可以进行测试。
主机和模板监控项、监控项原型以及低级别发现规则均支持测试。 主动式监控项不支持测试。
以下被动式监控项类型支持测试:
- Zabbix agent
- SNMP agent(v1、v2、v3)
- IPMI agent
- SSH 检查
- Telnet 检查
- JMX agent
- 简单检查(
icmpping*、vmware.*监控项除外) - Zabbix 内部
- 计算监控项
- 外部检查
- 数据库监控
- HTTP agent
- 脚本
- 浏览器
要测试监控项,请点击监控项配置表单底部的测试按钮。
请注意,对于无法测试的监控项(例如主动式检查和被排除的简单检查),测试按钮将处于禁用状态。
当StartHistoryPollers配置参数设置为 0 时,无法测试计算监控项。

监控项测试表单包含必需的主机参数字段(主机地址、端口、使用服务器/proxy 测试(proxy 名称))以及监控项特定的详细信息(例如 SNMPv2 community 或 SNMPv3 安全凭据)。 这些字段具有上下文感知能力:
- 在可能的情况下,字段会预先填充。例如,对于需要 agent 的监控项,会从主机选定的 agent 接口中获取相关信息。
- 模板监控项的字段必须手动填写。
- 纯文本宏值会被解析。
- 值(或值的一部分)为 secret 或 Vault 宏的字段为空,必须手动输入。 如果任何监控项参数包含 secret 宏值,则会显示以下警告消息:“Item contains user-defined macros with secret values. Values of these macros should be entered manually.”
- 如果根据监控项类型的上下文不需要某些字段,这些字段将被禁用(例如,对于计算监控项,主机地址字段和 proxy 字段将被禁用)。
要测试监控项,请点击获取值。
如果成功获取值,该值将填入值字段;当前值(如果有)会被移至之前的值字段,同时计算之前的时间字段,即两个值(点击)之间的时间差,并尝试检测 EOL 序列;如果在获取的值中检测到 "\\n\\r",则切换为 CRLF。
点击获取值并测试以测试预处理。

从主机获取的值和测试结果发送到前端时,最大长度会被截断为 512KB。 如果结果被截断,则会显示警告图标。 将鼠标悬停在警告图标上时,会显示警告描述。 请注意,超过 512KB 的数据仍会由 Zabbix 服务器完整处理。
如果配置不正确,则会显示描述可能原因的错误消息。

从主机成功获取的值也可用于测试预处理步骤。
表单按钮
表单底部的按钮允许执行多个操作。
![]() |
添加一个监控项。此按钮仅适用于新建的监控项。 |
![]() |
更新一个监控项的属性。 |
![]() |
基于当前监控项的属性创建另一个监控项。 |
![]() |
立即执行对新的监控项值的检查。仅支持被动检查(参见more details)。 注意:在立即检查值时,configuration cache不会更新,因此该值不会反映监控项配置的最新更改。 |
![]() |
通过获取值来测试监控项配置是否正确。 |
![]() |
删除监控项的历史记录和趋势数据。 |
![]() |
删除该监控项。 |
![]() |
取消对监控项属性的编辑。 |
文本数据限制
文本数据限制取决于数据库后端。在将文本值存储到数据库之前,它们会通过 get 截断以匹配数据库值类型的限制:
| 数据库 | 信息类型 | ||
|---|---|---|---|
| Character | 日志 | 文本 | |
| MySQL | 255 characters | 65536 字节 | 65536 字节 |
| PostgreSQL | 255 characters | 65536 字符 | 65536 字符 |
| Oracle | 255 characters | 65536 字符 | 65536 字符 |
| SQLite (仅限 Zabbix proxy) | 255 characters | 65536 字符 | 65536 字符 |
自定义脚本限制
可用自定义脚本长度取决于所使用的数据库:
| 数据库 | 字符限制 | 字节限制 |
|---|---|---|
| MySQL | 65535 | 65535 |
| PostgreSQL | 65535 | 无限制 |
| Oracle | 2048 | 4000 |
| SQLite(仅 Zabbix proxy) | 65535 | 无限制 |
监控项超时
监控项 timeout 指定Zabbix在将检查判定为失败前应等待的时间
当达到超时时间时,即使数据检索未完成,检查也会被中止。如果仅接收到部分数据,监控项将变为不受支持,并记录错误消息(例如,在SNMP检查中,仅成功收集多个OID中的一个OID的数据时)。
对于多种监控项类型,您可以设置灵活的监控项超时时间:
- 每单个 监控项
- 按监控项类型(在添加-proxies级别)
- 按监控项类型(在超时级别)
为单个监控项设置自定义超时非常有用,当您需要为特定监控项指定更长超时时间的同时,保持其他监控项的低超时值。
超时优先级
- 单一 监控项 超时会覆盖任何其他超时设置.
- Proxy级超时设置将覆盖全局超时设置
Zabbix 超时 或 超时 配置中的超时设置对于已设置灵活超时的检查 不 起作用
灵活超时支持
以下监控项类型支持灵活的监控项超时设置:
- Zabbix agent (包括被动和主动检查)
- SNMP agent (传统SNMP检查除外1)
- Simple check (
icmpping*和VMware 监控项除外2) - SSH agent
- Telnet agent
- External check
- Database monitor
- Script
- HTTP agent
- Browser
1 对于传统SNMP检查(单OID轮询),应用超时或超时中的超时设置。
2 对于icmpping* 监控项,超时值直接在监控项键中指定。VMware监控监控项使用server或proxy配置中自带的VMwareTimeout参数。
不支持的监控项
不支持的 监控项 会报告为具有 Not supported 状态,并且仍会按照其标准的 配置 进行重新检查。
当某个 监控项 因某些原因无法检索到值时(例如连接错误、没有配置轮询器来处理该 监控项),它将变为不支持状态。此外,未接收到历史数据的 监控项 将保持在 Not supported 状态。这是预期的行为 —— 只有在接收到新的、有效的历史数据时,监控项 才会转换为 Normal 状态。
与问题类似,不支持的 监控项 仅在接收到新数据时才会重新评估 —— 即使该 监控项 不再有任何历史数据可用。换句话说,监控项 和触发器仅在接收到新数据时才会改变其状态。然而,如果触发器表达式包含 date and time 和/或 nodata() 函数,则该触发器将每隔 30 秒重新计算一次(详细信息请参见 计算时间)。
信息图标。将鼠标悬停其上时,会显示警告消息,例如 Overridden by global housekeeper settings (1d)。






