图表 9

描述

这些参数及对应仪表板部件字段objects的可选属性值,允许通过dashboard.createdashboard.update方法配置Graph部件。

仪表板创建或update过程中不会验证fields部件的属性。这使得用户可以修改built-in widgets和createcustom widgets,但也存在错误创建或更新部件的风险。为确保成功创建或update图形部件,请参考下文表格中列出的参数行为规范。

参数

图形小部件支持以下参数。

参数 仪表板小部件字段 名称
Refresh interval 0 rf_rate 0 - 无刷新;
10 - 10 秒;
30 - 30 秒;
60 - (默认) 1 分钟;
120 - 2 分钟;
600 - 10 分钟;
900 - 15 分钟。
Reference 1 reference 任何由 5 个字符组成的 string 值(例如 ABCDEJBPNL)。此值在该 widget 所属的仪表板内必须唯一。

参数行为
- 必填

数据集

为配置一个数据集,支持以下参数。

属性名称中的第一个数字(例如 ds.0.主机.0, ds.0.监控项.0)表示特定的数据集, 而第二个数字(如果存在)表示配置的主机或监控项。

参数 仪表板小部件字段 名称
Data set type 0 ds.0.dataset_type 0 - 监控项 列表;
1 - (默认) 监控项 模式。
监控项 4 ds.0.itemids.0 Item ID。

template dashboard上配置widget时,仅应设置模板上配置的监控项。

注意:要配置多个监控项,请为每个监控项使用递增的属性名编号,create一个仪表板widget字段object。

参数行为
- 如果数据集类型设置为"监控项 列表"且未设置监控项 (Widget),则为必填
监控项 (Widget) 1 ds.0.itemids.0._reference 代替Item ID:
ABCDE._itemid - 将一个部件兼容性(其引用参数设置为"ABCDE")设置为监控项的数据源。

注意:要配置多个小部件,请为每个widget使用递增的属性名编号,create一个仪表板widget字段object。

此参数自Zabbix 7.0.1起支持。

参数行为
- 如果数据集类型设置为"监控项 列表"且未设置监控项,则为必填
颜色 1 ds.0.color.0 十六进制颜色代码(例如 FF0000)。

参数行为
- 如果数据集类型设置为"监控项 列表",则为必填
主机 模式 1 ds.0.hosts.0 Host名称或模式(例如 "Zabbix*")。

参数行为
- 如果数据集类型设置为"监控项 模式",则为必填

template dashboard上配置widget时不支持此参数。
监控项 模式 1 ds.0.items.0 Item名称或模式(例如 "*: 每秒处理的*值数量")。

template dashboard上配置widget时,仅应设置模板上配置的监控项的模式。

参数行为
- 如果数据集类型设置为"监控项 模式",则为必填
颜色 1 ds.0.color 十六进制颜色代码(例如 FF0000)。

默认值:FF465C

参数行为
- 如果数据集类型设置为"监控项 模式",则为支持
Draw 0 ds.0.type 0 - (默认) 折线;
1 - 点;
2 - 阶梯;
3 - 柱状图。
Stacked 0 ds.0.stacked 0 - (默认) 禁用;
1 - 启用。

参数行为
- 如果绘制设置为"折线"、"阶梯"或"柱状图",则为支持
Width 0 ds.0.width 可能的值范围为1-10。

默认值:1。

参数行为
- 如果绘制设置为"折线"或"阶梯",则为支持
Point size 0 ds.0.pointsize 可能的值范围为1-10。

默认值:3。

参数行为
- 如果绘制设置为"点",则为支持
Transparency 0 ds.0.transparency 可能的值范围为1-10。

默认值:5。
Fill 0 ds.0.fill 可能的值范围为1-10。

默认值:3。

参数行为
- 如果绘制设置为"折线"或"阶梯",则为支持
Missing data 0 ds.0.missingdatafunc 0 - (默认) 无;
1 - 连接;
2 - 视为0;
3 - 最后已知。

参数行为
- 如果绘制设置为"折线"或"阶梯",则为支持
Y-axis 0 ds.0.axisy 0 - (默认) 左;
1 - 右。
Time shift 1 ds.0.timeshift 有效时间string(例如 36001h 等)。
您可以使用时间后缀。也允许负值。

默认值:""(空)。
Aggregation function 0 ds.0.aggregate_function 0 - (默认) 未使用;
1 - 最小值;
2 - 最大值;
3 - 平均值;
4 - 计数;
5 - 总和;
6 - 首个;
7 - 最后一个。
Aggregation interval 1 ds.0.aggregate_interval 有效时间string(例如 36001h 等)。
您可以使用时间后缀

默认值:1h
Aggregate 0 ds.0.aggregate_grouping 0 - (默认) 每个监控项;
1 - 数据集。

参数行为
- 如果聚合函数设置为"最小值"、"最大值"、"平均值"、"计数"、"总和"、"首个"或"最后一个",则为支持
Approximation 0 ds.0.approximation 1 - 最小值;
2 - (默认) 平均值;
4 - 最大值;
7 - 所有。
Data set label 1 ds.0.data_set_label 任意string值。

默认值:""(空)。

显示选项

用于配置显示选项,支持以下参数。

参数 仪表板小部件字段 名称
History data selection 0 source 0 - (默认) 自动;
1 - 历史数据;
2 - 趋势数据。
Simple triggers 0 simple_triggers 0 - (默认) 禁用;
1 - 启用。
Working time 0 working_time 0 - (默认) 禁用;
1 - 启用。
Percentile line (left)
状态 0 percentile_left 0 - (默认) 禁用;
1 - 启用。

参数行为:
- 支持 如果 数据集 配置中的 Y轴 设置为 "左侧"
0 percentile_left_value 可能的值范围为 1-100。

参数行为:
- 支持 如果 数据集 配置中的 Y轴 设置为 "左侧"
Percentile line (right)
状态 0 percentile_right 0 - (默认) 禁用;
1 - 启用。

参数行为:
- 支持 如果 数据集 配置中的 Y轴 设置为 "右侧"
0 percentile_right_value 可能的值范围为 1-100。

参数行为:
- 支持 如果 数据集 配置中的 Y轴 设置为 "右侧"

时间段

支持以下参数用于配置时间段

参数 仪表板小部件字段 名称
Time period 1 time_period._reference DASHBOARD._timeperiod - 将Time period selector设置为数据源;
ABCDE._timeperiod - 将一个部件兼容性(将其Reference参数设置为"ABCDE")设置为数据源。

默认值: DASHBOARD._timeperiod

或者,您也可以仅在FromTo参数中设置时间段。
From 1 time_period.from 以绝对时间(YYYY-MM-DD hh:mm:ss)或relative时间语法(nownow/dnow/w-1w等)表示的有效时间string。

参数行为:
- 如果未设置时间段,则支持
To 1 time_period.to 以绝对时间(YYYY-MM-DD hh:mm:ss)或relative时间语法(nownow/dnow/w-1w等)表示的有效时间string。

参数行为:
- 如果未设置时间段,则支持

坐标轴

配置坐标轴时支持以下参数。

参数 仪表板小部件字段 名称
Left Y 0 lefty 0 - 已禁用;
1 - (默认) 已启用。

参数行为:
- 如果Y轴(在数据集配置中)设置为“左”则支持
Right Y 0 righty 0 - (默认) 已禁用;
1 - 已启用。

参数行为:
- 如果Y轴(在数据集配置中)设置为“右”则支持
Min 1 lefty_min 任意数值。

默认值: "" (空)。
righty_min
Max 1 lefty_max 任意数值。

默认值: "" (空)。
righty_max
Units (type) 0 lefty_units 0 - (默认) 自动;
1 - 静态。
righty_units
Units (value) 1 lefty_static_units 任意string值。

默认值: "" (空)。
righty_static_units
X-Axis 0 xaxis 0 - 已禁用;
1 - (默认) 已启用。

图例

配置图例支持以下参数。

参数 仪表板小部件字段 名称
Show legend 0 legend 0 - 已禁用;
1 - (默认) 已启用。

参数行为:
- 如果“显示图例”设置为“已启用”,则支持
Display min/avg/max 0 legend_statistic 0 - (默认) 已禁用;
1 - 已启用。

参数行为:
- 如果“显示图例”设置为“已启用”,则支持
Show aggregation function 0 legend_aggregation 0 - (默认) 已禁用;
1 - 已启用。

参数行为:
- 如果“显示图例”设置为“已启用”,则支持
Rows 0 legend_lines_mode 0 - (默认) 固定;
1 - 可变。

参数行为:
- 如果“显示图例”设置为“已启用”,则支持
Number of rows/
Maximum number of rows
0 legend_lines 可能的值范围为 1-10。

默认值:1。

参数行为:
- 如果“显示图例”设置为“已启用”,则支持
Number of columns 0 legend_columns 可能的值范围为 1-4。

默认值:4。

参数行为:
- 如果“显示图例”设置为“已启用”,且“显示最小/平均/最大值”设置为“已禁用”,则支持

问题

用于配置 问题 的参数如下所示。

参数 仪表板小部件字段 名称
Show problems 0 show_problems 0 - (默认) 禁用;
1 - 启用。
Selected items only 0 graph_item_problems 0 - 禁用;
1 - (默认) 启用。
Problem hosts 1 problemhosts.0 Host 名称。

注意:属性名称中的数字引用了配置的 主机。
若要配置多个 主机,请为每个 主机 create 仪表板 widget 字段 object,并在属性名称中使用递增的数字。

如果在 template dashboard 上配置 widget,则不支持此参数。
Severity 0 severities.0 0 - 未分类;
1 - 信息;
2 - 警告;
3 - 一般;
4 - 严重;
5 - 灾难。

默认值:空(全部启用)。

注意:若要配置多个值,请为每个值 create 仪表板 widget 字段 object,并在属性名称中使用递增的数字。
Problem 1 problem_name 问题 配置(不区分大小写,可以是全名或部分名称)。
Problem tags
评估类型 0 evaltype 0 - (默认) 与/或;
2 - 或。
标签名称 1 tags.0.tag 任意 string 值。

注意:属性名称中的数字引用了标签评估列表中的标签顺序。

参数行为
- 若配置 问题标签,则为必填
运算符 0 tags.0.operator 0 - 包含;
1 - 等于;
2 - 不包含;
3 - 不等于;
4 - 存在;
5 - 不存在。

注意:属性名称中的数字引用了标签评估列表中的标签顺序。

参数行为
- 若配置 问题标签,则为必填
标签值 1 tags.0.value 任意 string 值。

注意:属性名称中的数字引用了标签评估列表中的标签顺序。

参数行为
- 若配置 问题标签,则为必填

覆盖规则

支持以下参数用于配置覆盖(Overrides)

属性名称中的第一个数字(例如 or.0.主机.0, or.0.监控项.0)表示特定的数据集, 而第二个数字(如果存在)表示配置的 主机 或 监控项。

参数 仪表板小部件字段 名称
Host patterns 1 or.0.hosts.0 Host 名称或模式(例如 Zabbix*)。

如果在 template dashboard 上配置 widget,则不支持此参数。

参数行为:
- 必填,如果配置 Overrides
Item patterns 1 or.0.items.0 Item 名称或模式(例如 *: Number of processed *values per second)。
template dashboard 上配置 widget 时,仅应设置模板上配置的 监控项 模式。

参数行为:
- 必填,如果配置 Overrides
Base color 1 or.0.color 十六进制颜色代码(例如 FF0000)。
Width 0 or.0.width 可能的取值范围为 1-10。
Draw 0 or.0.type 0 - 折线;
1 - 点;
2 - 阶梯;
3 - 条形。
Transparency 0 or.0.transparency 可能的取值范围为 1-10。
Fill 0 or.0.fill 可能的取值范围为 1-10。
Point size 0 or.0.pointsize 可能的取值范围为 1-10。
Missing data 0 or.0.missingdatafunc 0 - 无;
1 - 已连接;
2 - 视为 0;
3 - 最后已知值。
Y-axis 0 or.0.axisy 0 - 左;
1 - 右。
Time shift 1 or.0.timeshift 有效时间 string(例如 36001h 等)。
您可以使用 时间后缀。允许负值。

示例

以下示例仅用于描述为图表(Graph)小部件配置仪表板 widget 字段 objects 的过程。 有关配置仪表板的更多信息,请参见 dashboard.create

配置 图形 部件

以如下方式配置一个图表 widget:

  • 2 数据集,总共包含 9 监控项,位于 1 主机 上。
  • 第一个数据集类型为 "监控项 list",由 3 监控项 组成,这些指标通过不同颜色的线条表示,但具有相同的宽度、透明度和填充。
  • 第二个数据集类型为 "监控项 patterns",由 6 监控项 组成,配置了聚合方式,并通过自定义颜色、宽度、透明度和填充的线条表示。
  • 第二个数据集还配置了自定义的数据集标签。
  • 图表中显示的数据为最近 3 小时的时间段。
  • 图表中仅显示为配置的 监控项 的问题。
  • 图表有两个 Y 轴,其中右侧 Y 轴仅显示第二个数据集的值。
  • 图表图例以 4 行显示配置的 监控项,以及数据集的最小值、最大值和平均值。

执行请求:

{
           "jsonrpc": "2.0",
           "method": "dashboard.create",
           "params": {
               "name": "My dashboard",
               "display_period": 30,
               "auto_start": 1,
               "pages": [
                   {
                       "widgets": [
                           {
                               "type": "svggraph",
                               "name": "Graph",
                               "x": 0,
                               "y": 0,
                               "width": 36,
                               "height": 5,
                               "view_mode": 0,
                               "fields": [
                                   {
                                       "type": 0,
                                       "name": "ds.0.dataset_type",
                                       "value": 0
                                   },
                                   {
                                       "type": 4,
                                       "name": "ds.0.itemids.1",
                                       "value": 23264
                                   },
                                   {
                                       "type": 1,
                                       "name": "ds.0.color.1",
                                       "value": "FF0000"
                                   },
                                   {
                                       "type": 4,
                                       "name": "ds.0.itemids.2",
                                       "value": 23269
                                   },
                                   {
                                       "type": 1,
                                       "name": "ds.0.color.2",
                                       "value": "BF00FF"
                                   },
                                   {
                                       "type": 4,
                                       "name": "ds.0.itemids.3",
                                       "value": 23257
                                   },
                                   {
                                       "type": 1,
                                       "name": "ds.0.color.3",
                                       "value": "0040FF"
                                   },
                                   {
                                       "type": 0,
                                       "name": "ds.0.width",
                                       "value": 3
                                   },
                                   {
                                       "type": 0,
                                       "name": "ds.0.transparency",
                                       "value": 3
                                   },
                                   {
                                       "type": 0,
                                       "name": "ds.0.fill",
                                       "value": 1
                                   },
                                   {
                                       "type": 1,
                                       "name": "ds.1.hosts.0",
                                       "value": "Zabbix server"
                                   },
                                   {
                                       "type": 1,
                                       "name": "ds.1.items.0",
                                       "value": "*: Number of processed *values per second"
                                   },
                                   {
                                       "type": 1,
                                       "name": "ds.1.color",
                                       "value": "000000"
                                   },
                                   {
                                       "type": 0,
                                       "name": "ds.1.transparency",
                                       "value": 0
                                   },
                                   {
                                       "type": 0,
                                       "name": "ds.1.fill",
                                       "value": 0
                                   },
                                   {
                                       "type": 0,
                                       "name": "ds.1.axisy",
                                       "value": 1
                                   },
                                   {
                                       "type": 0,
                                       "name": "ds.1.aggregate_function",
                                       "value": 3
                                   },
                                   {
                                       "type": 1,
                                       "name": "ds.1.aggregate_interval",
                                       "value": "1m"
                                   },
                                   {
                                       "type": 0,
                                       "name": "ds.1.aggregate_grouping",
                                       "value": 1
                                   },
                                   {
                                       "type": 1,
                                       "name": "ds.1.data_set_label",
                                       "value": "Number of processed values per second"
                                   },
                                   {
                                       "type": 0,
                                       "name": "graph_time",
                                       "value": 1
                                   },
                                   {
                                       "type": 1,
                                       "name": "time_period.from",
                                       "value": "now-3h"
                                   },
                                   {
                                       "type": 0,
                                       "name": "legend_statistic",
                                       "value": 1
                                   },
                                   {
                                       "type": 0,
                                       "name": "legend_lines",
                                       "value": 4
                                   },
                                   {
                                       "type": 0,
                                       "name": "show_problems",
                                       "value": 1
                                   },
                                   {
                                       "type": 1,
                                       "name": "reference",
                                       "value": "YZABC"
                                   }
                               ]
                           }
                       ]
                   }
               ],
               "userGroups": [
                   {
                       "usrgrpid": 7,
                       "permission": 2
                   }
               ],
               "users": [
                   {
                       "userid": 1,
                       "permission": 3
                   }
               ]
           },
           "id": 1
       }

Response:

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

另请参阅