[comment]: # ({55392e36-02a3a9ac})
# 15 依赖监控项

[comment]: # ({/55392e36-02a3a9ac})

[comment]: # ({8893505b-4eb72974})
#### 概述

在某些情况下，单个监控项会一次性采集多个指标或
同时收集相关指标的做法甚至更为合理，因为
示例：

- 各核心的CPU利用率
-   入站/出站/总网络流量

为了实现批量指标收集并支持同时在多个场景中使用
相关监控项，Zabbix支持依赖监控项。依赖监控项依赖于
在主节点监控项上同时收集它们的数据
query。主监控项的新值将自动填充到
依赖监控项的取值。依赖监控项不能具有不同的
update 间隔比主 监控项 更短。

Zabbix预处理选项可用于提取特定部分
需要从主监控项数据中获取依赖监控项所需的数据。

预处理由`preprocessing manager`进程管理，同时
执行预处理步骤的工作线程。所有经过预处理的值（在Zabbix 7.0.17之前，所有值），从
不同的数据采集器，在通过预处理管理器之前
被添加到history cache。使用基于套接字的IPC通信
在数据采集器（轮询器、捕获器等）与预处理之间
进程

Zabbix server 或 Zabbix proxy（若 主机 由 proxy 监控）
执行预处理步骤并处理依赖的监控项。

任何类型的监控项，即使是依赖监控项，都可以被设置为主监控项。
可以利用额外的依赖监控项层级，从现有依赖监控项的值中提取更小的部分。

[comment]: # ({/8893505b-4eb72974})

[comment]: # ({3e1d96f5-3e1d96f5})
##### 限制

-   仅允许相同的 主机（模板）依赖
-   一个 监控项 原型可以依赖于另一个 监控项 原型或同一 主机 中的常规 监控项
-   每个主 监控项 的依赖 监控项 最大数量限制为 29999（与依赖层级数量无关）
-   允许的最大 3 依赖层级
-   模板中主 监控项 来自模板的 一个主机 上的依赖 监控项 不会导出到 XML

[comment]: # ({/3e1d96f5-3e1d96f5})

[comment]: # ({81da0f3a-3f705816})
#### 监控项配置

依赖监控项的数据依赖于其主监控项。这就是为什么必须先配置（或存在）**主监控项**：

-   转到：*数据采集* → *主机*
-   在主机所在行点击 *监控项*
-   点击 *创建监控项*
-   在表单中输入监控项参数

![](../../../../../assets/en/manual/config/items/itemtypes/master_item.png)

所有必填输入字段都用红色星号标记。

点击 *添加* 保存主监控项。

然后您就可以配置一个**依赖监控项**。

![](../../../../../assets/en/manual/config/items/itemtypes/dependent_item.png)

所有必填输入字段都用红色星号标记。

依赖监控项需要填写的特定字段如下：

|   |   |
|--|--------|
|*类型*|在此选择 **Dependent item**。|
|*键值*|输入一个用于识别该监控项的键值。|
|*主监控项*|选择主监控项。主监控项的值将用于填充依赖监控项的值。|
|*信息类型*|选择与将要存储的数据格式相对应的信息类型。|

您可以使用监控项值
[预处理](/manual/config/items/item#item-value-preprocessing)来
提取主监控项值中所需的部分。

![](../../../../../assets/en/manual/config/items/itemtypes/dependent_item_preprocessing.png){width="600"}

如果不进行预处理，依赖监控项的值将与主监控项的值完全相同。

点击 *添加* 保存依赖监控项。

您还可以通过点击监控项列表中的 ![](../../../../../assets/en/manual/config/items/itemtypes/dependent_item_button.png) 按钮并选择 *创建依赖监控项*，更快地创建依赖监控项。

![](../../../../../assets/en/manual/config/items/itemtypes/dependent_item_menu.png){width="350"}

[comment]: # ({/81da0f3a-3f705816})

[comment]: # ({8323a97a-8323a97a})
##### 显示

在监控项列表中，依赖的监控项会以其主控监控项的名称作为前缀显示。

![](../../../../../assets/en/manual/config/items/itemtypes/dependent_items.png){width="600"}

如果删除了一个主控监控项，其所有依赖的监控项也将被删除。

[comment]: # ({/8323a97a-8323a97a})
