1 预处理测试

测试

测试预处理步骤对于确保复杂的预处理流程能够产生预期的结果非常有用,而无需等待接收到并预处理监控项值。

可以针对以下内容进行测试:

  • 假设的值
  • 来自一个主机的真实值

每个预处理步骤都可以单独测试,也可以一起测试所有步骤。当分别在“操作”区块中点击“测试”或“测试所有步骤”按钮时,将打开一个测试窗口。

测试假设值

Parameter Description
Get value from host 如果要测试假设值,请不要勾选此复选框。
另请参见:测试真实值
Value 输入要测试的值。
单击参数字段或查看/编辑按钮 将打开一个文本区域窗口,用于输入值或代码块。
Not supported 勾选此复选框以测试不受支持的值。
此选项适用于测试 Check for not supported value 预处理步骤。
Error 输入错误文本。
当未勾选 Get value from host 但已勾选 Not supported 时,此字段可用。
如果勾选了 Get value from host,则此字段会填入来自主机的实际错误消息(只读)。
Time 显示输入值的时间:now(只读)。
Previous value 输入要进行比较的上一个输入值。
仅适用于 ChangeThrottling 预处理步骤。
Previous time 输入要进行比较的上一个输入值时间。
仅适用于 ChangeThrottling 预处理步骤。
默认值基于监控项的 'Update interval' 字段值(如果为 '1m',则此字段填充为 now-1m)。如果未指定任何内容,或者用户无权访问主机,则默认值为 now-30s
Macros 如果使用了任何宏,它们会连同其值一起列出。出于测试目的,这些值可以编辑,但更改只会保存在测试上下文中。
End of line sequence 为多行输入值选择行尾序列:
LF - LF(换行)序列
CRLF - CRLF(回车换行)序列。
Preprocessing steps 会列出预处理步骤;点击 Test 按钮后,会显示每个步骤的测试结果。
测试结果在发送到前端时会被截断,最大大小为 512KB。如果结果被截断,会显示警告图标。将鼠标悬停在其上会显示警告说明。请注意,超过 512KB 的数据仍会由 Zabbix 服务器完整处理。
如果某个步骤在测试中失败,会显示错误图标。将鼠标悬停在其上会显示错误说明。
如果为该步骤指定了 "Custom on fail" 且执行了该操作,则会在预处理测试步骤行的正下方新增一行,显示已执行的操作及其产生的结果(错误或值)。
Result 当所有步骤一起测试时(即点击 Test all steps 按钮时),会显示预处理步骤测试的最终结果。
还会显示转换为监控项值类型的类型,例如 Result converted to Numeric (unsigned)
测试结果在发送到前端时会被截断,最大大小为 512KB。如果结果被截断,会显示警告图标。将鼠标悬停在其上会显示警告说明。请注意,超过 512KB 的数据仍会由 Zabbix 服务器完整处理。

单击 Test 可查看每个预处理步骤后的结果。

测试值会在单个步骤或所有步骤的测试会话之间保存,允许用户更改预处理步骤或监控项配置,然后返回测试窗口,而无需重新输入信息。不过,刷新页面后这些值会丢失。

测试由 Zabbix 服务器执行。前端向服务器发送相应请求并等待结果。该请求包含输入值和预处理步骤(已展开用户宏)。对于 ChangeThrottling 步骤,可以指定可选的上一个值和时间。服务器会返回每个预处理步骤的结果。

所有技术错误或输入验证错误都会显示在测试窗口顶部的错误框中。

测试真实值

要针对真实值测试预处理:

  • 勾选 从主机获取值 复选框
  • 输入或确认主机参数(主机地址、端口、proxy 名称/无 proxy)以及监控项特定详情(例如 SNMPv2 community 或 SNMPv3 安全凭据)。这些字段具有上下文感知能力:
    • 在可能的情况下会预先填充这些值,即对于需要 agent 的监控项,会从主机所选的 agent 接口获取信息
    • 模板监控项必须手动填写这些值
    • 会解析纯文本宏值
    • 如果字段值(或部分值)是密钥或 Vault 宏,则该字段将为空,且必须手动填写。如果任何监控项参数包含密钥宏值,则会显示以下警告信息:"Item contains user-defined macros with secret values. Values of these macros should be entered manually."
    • 当在监控项类型的上下文中不需要这些字段时,它们会被禁用(例如,对于计算监控项,主机地址和 proxy 字段会被禁用)
  • 点击 获取值并测试 以测试预处理

如果您在监控项配置表单中指定了值映射('显示值' 字段),监控项测试对话框会在最终结果之后再显示一行,名为 '应用值映射后的结果'。

从主机获取真实值时特有的参数:

Parameter Description
从主机获取值 勾选此复选框可从主机获取真实值。
主机地址 输入主机地址。
此字段会自动填充监控项主机接口的地址。
端口 输入主机端口。
此字段会自动填充监控项主机接口的端口。
SNMP 接口的附加字段
(SNMP 版本、SNMP community、Context name 等)
有关配置 SNMP 接口(v1、v2 和 v3)的更多详细信息,请参见配置 SNMP 监控
这些字段会自动从监控项主机接口中填充。
Proxy 如果主机由 proxy 监控,请指定 proxy。
此字段会自动填充主机的 proxy(如果有)。
从主机检索到的值。
单击参数字段或查看/编辑按钮 将打开一个文本区域窗口,用于显示该值或代码块。
值在前端中最多会被截断为 512KB。若结果被截断,会显示警告图标。将鼠标悬停在警告上会显示说明。请注意,超过 512KB 的数据仍会由 Zabbix 服务器完整处理。

其余参数请参见上文的测试假设值