1 预处理测试
测试
测试预处理步骤对于确保复杂的预处理流水线产生预期结果非常有用,而无需等待接收和预处理项目值。

可以进行以下测试:
- 针对假设值
- 针对来自主机的实际值
每个预处理步骤都可以单独测试,也可以同时测试所有步骤。当您分别点击操作块中的测试或测试所有步骤按钮时,会打开一个测试窗口。
测试假设值

| 参数 | 说明 |
|---|---|
| 从主机获取值 | 如果您想测试一个假设值,请不要勾选此复选框。 另请参见:测试实际值。 |
| 值 | 输入要测试的输入值。 单击参数字段或查看/编辑按钮 将打开一个文本区域窗口,用于输入值或代码块。 |
| 不支持 | 勾选此复选框以测试不受支持的值。 此选项可用于测试 检查不受支持的值 预处理步骤。 |
| 错误 | 输入错误文本。 当未勾选 从主机获取值 但勾选了 不支持 时,此字段可用。 如果勾选了 从主机获取值,此字段将填充来自主机的实际错误消息(只读)。 |
| 时间 | 显示输入值的时间:now(只读)。 |
| 前一个值 | 输入一个前一个输入值以进行比较。 仅用于 变化 和 限流 预处理步骤。 |
| 前一个时间 | 输入前一个输入值的时间以进行比较。 仅用于 变化 和 限流 预处理步骤。 默认值基于监控项的“更新间隔”字段值(如果为“1m”,则此字段填充为 now-1m)。如果未指定任何内容,或者用户无权访问主机,则默认值为 now-30s。 |
| 宏 | 如果使用了任何宏,它们会连同其值一起列出。这些值可为测试目的进行编辑,但更改只会保存在测试上下文中。 |
| 行结束序列 | 为多行输入值选择行结束序列: LF - LF(换行)序列 CRLF - CRLF(回车换行)序列。 |
| 预处理步骤 | 将列出预处理步骤;单击 测试 按钮后,将显示每一步的测试结果。 发送到前端时,测试结果会被截断到最大 512KB。测试结果可复制(不超过截断后的 512KB)。如果结果被截断,将显示警告图标。将鼠标悬停其上可显示警告说明。请注意,大于 512KB 的数据仍会由 Zabbix 服务器完整处理。 如果某一步在测试中失败,将显示错误图标。将鼠标悬停其上可显示错误说明。 如果为该步骤指定了“失败时自定义”并执行了该操作,则会在预处理测试步骤行的正下方出现新的一行,显示执行了什么操作以及产生了什么结果(错误或值)。 |
| 结果 | 当一起测试所有步骤时(即单击 测试所有步骤 按钮时),始终会显示预处理步骤测试的最终结果。 还会显示向监控项值类型的转换类型,例如 Result converted to Numeric (unsigned)。发送到前端时,测试结果会被截断到最大 512KB。最终结果可复制(不超过截断后的 512KB)。如果结果被截断,将显示警告图标。将鼠标悬停其上可显示警告说明。请注意,大于 512KB 的数据仍会由 Zabbix 服务器完整处理。 |
单击 测试 可查看每个预处理步骤后的结果。
无论是针对单个步骤还是所有步骤,测试值都会在测试会话之间保留, 这样用户就可以更改预处理步骤或监控项配置, 然后返回测试窗口,而无需重新输入信息。 不过,刷新页面后这些值会丢失。
测试由 Zabbix 服务器执行。前端会向服务器发送相应的请求, 并等待结果。该请求包含输入值和预处理步骤(带有已展开的用户宏)。 对于 变化 和 限流 步骤,还可以指定可选的前一个值和时间。 服务器会返回每个预处理步骤的结果。
所有技术错误或输入验证错误都会显示在测试窗口顶部的 错误框中。
测试真实值
要针对真实值测试预处理:
- 勾选 Get value from host 复选框
- 输入或确认主机参数(主机地址、端口、proxy 名称/无 proxy)以及监控项特定的详细信息(例如 SNMPv2 community 或 SNMPv3 安全凭据)。这些字段会根据上下文变化:
- 在可能的情况下,这些值会被预填充;例如,对于需要 agent 的监控项,会从主机所选的 agent 接口中获取信息
- 对于模板监控项,这些值必须手动填写
- 纯文本宏值会被解析
- 如果字段值(或值的一部分)是 secret 或 Vault 宏,则该字段将为空,必须手动填写。如果任一监控项参数包含 secret 宏值,则会显示以下警告消息:“监控项包含带有 secret 值的用户自定义宏。这些宏的值应手动输入。”
- 当在该监控项类型的上下文中不需要这些字段时,这些字段将被禁用(例如,对于计算型监控项,主机地址和 proxy 字段会被禁用)
- 点击 Get value and test 以测试预处理

如果您已在监控项配置表单中指定值映射(“Show value”字段),则监控项测试对话框会在最终结果后显示另一行,名称为“应用值映射后的结果”。
特定于从主机获取真实值的参数:
| 参数 | 描述 |
|---|---|
| Get value from host | 勾选此复选框以从主机获取真实值。 |
| Host address | 输入主机地址。 该字段会由监控项主机接口的地址自动填充。 |
| Port | 输入主机端口。 该字段会由监控项主机接口的端口自动填充。 |
| Additional fields for SNMP interfaces (SNMP version, SNMP community, Context name, etc.) |
有关配置 SNMP 接口(v1、v2 和 v3)的更多详细信息,请参见 配置 SNMP 监控。 这些字段会从监控项主机接口自动填充。 |
| Proxy | 如果主机由 proxy 监控,请指定 proxy。 该字段会由主机的 proxy 自动填充(如果有)。 |
| Value | 从主机获取的值。 点击参数字段内或查看/编辑按钮 将打开值或代码块的文本区域窗口。值仅在前端中会被截断为最大 512KB。如果结果被截断,则会显示警告图标。将鼠标悬停其上时会显示警告说明。请注意,大于 512KB 的数据仍会由 Zabbix 服务器完整处理。 |
其余参数请参见上文的测试假设值。
将打开一个文本区域窗口,用于输入值或代码块。