[comment]: # translation:outdated

[comment]: # ({dddbf4df-516a6885})
# 21 问题主机

[comment]: # ({/dddbf4df-516a6885})

[comment]: # ({cdbcbfe3-1ee1c5af})
### 说明

各个仪表盘组件字段对象中的这些参数和可用属性值允许在`dashboard.create` 和 `dashboard.update` 方法中配置[*问题主机*](/manual/web_interface/frontend_sections/dashboards/widgets/problem_hosts)组件。

::: noteimportant
在创建或更新仪表盘期间不会验证组件的 `fields` 属性。
这个方法允许用户修改[内置组件](/manual/web_interface/frontend_sections/dashboards/widgets)和创建[自定义组件](/devel/modules/tutorials/widget)，但也会导致存在错误创建或更新组件的风险。
为确保成功创建或更新*问题主机*组件，请参阅下表中概述的参数行为。
:::

[comment]: # ({/cdbcbfe3-1ee1c5af})

[comment]: # ({4fdd85e3-e1337d2e})
### 参数

*问题主机*组件支持以下参数：

|参数|<|[类型](/manual/api/reference/dashboard/object#仪表盘组件字段)|参数名称|参数值或参数说明|
|-|--------|--|--------|-------------------------------|
|*刷新频率*|<|0|rf_rate|0 - 不刷新；<br>10 - 10 秒；<br>30 - 30 秒；<br>60 - *(默认)* 1 分钟；<br>120 - 2 分钟；<br>600 - 10 分钟；<br>900 - 15 分钟。|
|*主机组*|<|2|groupids.0|[主机组](/manual/api/reference/hostgroup/get) ID。<br><br>注意：如果需要配置多个主机组，则需要给每个主机组创建一个仪表盘组件字段对象，参数名称 `groupids.0` 中的数字按照顺序进行递增。<br><br>在[仪表盘模板](/manual/api/reference/templatedashboard/object)上配置组件时，这个参数不受支持。|
|<|*主机组 (组件)*|1|groupids.\_reference|用于替代[主机组](/manual/api/reference/hostgroup/get) ID：<br>`ABCDE._hostgroupids` - 将一个 *标识符* 参数为 `ABCDE` 的[兼容性组件](/manual/web_interface/frontend_sections/dashboards/widgets#组件兼容性)作为数据源。<br><br>在[仪表盘模板](/manual/api/reference/templatedashboard/object)上配置组件时，这个参数不受支持。|
|*排除主机组*|<|2|exclude_groupids.0|[主机组](/manual/api/reference/hostgroup/get) ID。<br><br>注意：如果需要排除多个主机组，则需要给每个主机组创建一个仪表盘组件字段对象，参数名称 `exclude_groupids.0` 中的数字按照顺序进行递增。<br><br>在[仪表盘模板](/manual/api/reference/templatedashboard/object)上配置组件时，这个参数不受支持。|
|*主机*|<|3|hostids.0|[主机](/manual/api/reference/host/get) ID。<br><br>注意：如果需要配置多个主机，则需要给每个主机创建一个仪表盘组件字段对象，参数名称 `hostids.0` 中的数字按照顺序进行递增。配置多个主机时，*主机组* 必须不进行配置或配置中至少包含一个主机所属的主机组。<br><br>在[仪表盘模板](/manual/api/reference/templatedashboard/object)上配置组件时，这个参数不受支持。|
|<|*主机 (组件/仪表盘)*|1|hostids.\_reference|用于替代[主机](/manual/api/reference/host/get) ID：<br>`DASHBOARD.hostids` - 将[*主机*选择器](/manual/web_interface/frontend_sections/dashboards/widgets#覆盖主机)作为数据源。<br>`ABCDE._hostids` - 将一个 *标识符* 参数为 `ABCDE` 的[兼容性组件](/manual/web_interface/frontend_sections/dashboards/widgets#组件兼容性)作为数据源。<br><br>在[仪表盘模板](/manual/api/reference/templatedashboard/object)上配置组件时，这个参数不受支持。|
|*问题*|<|1|problem|问题[事件名称](/manual/config/triggers/trigger#配置) (不区分大小写，全名或部分名称)。|
|*严重性*|<|0|severities.0|0 - 未定义；<br>1 - 信息；<br>2 - 警告；<br>3 - 一般；<br>4 - 严重；<br>5 - 灾难。<br><br>默认值：空 (全部启用)。<br><br>注意：如果需要配置多个值，则需要给每个值创建一个仪表盘组件字段对象，参数名称 `statuses.0` 中的数字按照顺序进行递增。|
|*问题标签*|<|<|<|<|
|<|*评估类型*|0|evaltype|0 - *(默认)* And/Or；<br>2 - Or。|
|^|*标签名称*|1|tags.0.tag|任意字符串。<br><br>注意：参数名称 `tags.0.value` 中的数字与提供的参数列表需要一致，例如：总数为 3，则下标参数名称中的数字分别为：0、1、2。<br><br>[参数行为](/manual/api/reference_commentary#参数行为)：<br>- *必需的* (配置 *问题标签* 时)。|
|^|*操作*|0|tags.0.operator|0 - 包含；<br>1 - 相等；<br>2 - 不包含；<br>3 - 不相等；<br>4 - 存在；<br>5 - 不存在。<br><br>注意：参数名称 `tags.0.value` 中的数字与提供的参数列表需要一致，例如：总数为 3，则下标参数名称中的数字分别为：0、1、2。<br><br>[参数行为](/manual/api/reference_commentary#参数行为)：<br>- *必需的* (配置 *问题标签* 时)。|
|^|*标签值*|1|tags.0.value|任意字符串。<br><br>注意：参数名称 `tags.0.value` 中的数字与提供的参数列表需要一致，例如：总数为 3，则下标参数名称中的数字分别为：0、1、2。<br><br>[参数行为](/manual/api/reference_commentary#参数行为)：<br>- *必需的* (配置 *问题标签* 时)。|
|*显示被抑制的问题*|<|0|show_suppressed|0 - *(默认)* 禁用；<br>1 - 启用。|
|*隐藏无问题的主机组*|<|0|hide_empty_groups|0 - *(默认)* 禁用；<br>1 - 启用。<br><br>在[仪表盘模板](/manual/api/reference/templatedashboard/object)上配置组件时，这个参数不受支持。|
|*显示问题*|<|0|ext_ack|0 - *(默认)* 所有；<br>1 - 仅未确认；<br>2 - 分隔展示。|
|*标识符*|<|1|reference|任意 5 个英文字符组成的字符串(例如：`ABCDE` 或 `JBPNL`)。在这个组件所属的仪表盘中，这个值必须是唯一的。<br><br>[参数行为](/manual/api/reference_commentary#参数行为)：<br>- *必需的*。|

[comment]: # ({/4fdd85e3-e1337d2e})

[comment]: # ({bcd0ecfc-67b6ab01})
### 示例

以下示例仅用于介绍如何在仪表盘组件字段对象中配置 *问题主机* 组件
更多信息，请参考 [创建仪表盘](/manual/api/reference/dashboard/create)。

[comment]: # ({/bcd0ecfc-67b6ab01})

[comment]: # ({46ca138a-581163e0})
#### 配置一个*问题主机*组件

配置一个*问题主机*组件，用于展示主机组 "2" 和 "4" 中的问题主机。要求问题名称中包含 "CPU" 并且严重性级别在以下范围内："Warning"、"Average"、"High"、"Disaster"。

[请求](/manual/api#执行请求):

```json
{
    "jsonrpc": "2.0",
    "method": "dashboard.create",
    "params": {
        "name": "My dashboard",
        "display_period": 30,
        "auto_start": 1,
        "pages": [
            {
                "widgets": [
                    {
                        "type": "problemhosts",
                        "name": "Problem hosts",
                        "x": 0,
                        "y": 0,
                        "width": 36,
                        "height": 5,
                        "view_mode": 0,
                        "fields": [
                            {
                                "type": 2,
                                "name": "groupids.0",
                                "value": 2
                            },
                            {
                                "type": 2,
                                "name": "groupids.1",
                                "value": 4
                            },
                            {
                                "type": 1,
                                "name": "problem",
                                "value": "cpu"
                            },
                            {
                                "type": 0,
                                "name": "severities.0",
                                "value": 2
                            },
                            {
                                "type": 0,
                                "name": "severities.1",
                                "value": 3
                            },
                            {
                                "type": 0,
                                "name": "severities.2",
                                "value": 4
                            },
                            {
                                "type": 0,
                                "name": "severities.3",
                                "value": 5
                            }
                        ]
                    }
                ]
            }
        ],
        "userGroups": [
            {
                "usrgrpid": 7,
                "permission": 2
            }
        ],
        "users": [
            {
                "userid": 1,
                "permission": 3
            }
        ]
    },
    "id": 1
}
```

响应：

```json
{
    "jsonrpc": "2.0",
    "result": {
        "dashboardids": [
            "3"
        ]
    },
    "id": 1
}
```

[comment]: # ({/46ca138a-581163e0})

[comment]: # ({e9d30322-2c4b70f3})
### 参考

-   [仪表盘组件字段](/manual/api/reference/dashboard/object#仪表盘组件字段)
-   [创建仪表盘](/manual/api/reference/dashboard/create)
-   [更新仪表盘](/manual/api/reference/dashboard/update)

[comment]: # ({/e9d30322-2c4b70f3})
