8 图形

描述

这些参数以及相应仪表板小部件字段对象的可用属性值,可用于在 dashboard.createdashboard.update 方法中配置 图形 小部件。

在创建或更新仪表板期间,不会验证小部件 fields 属性。 这使用户能够修改内置小部件并创建自定义小部件,但也会带来错误创建或更新小部件的风险。 为确保成功创建或更新 图形 小部件,请参阅下表中列出的参数行为。

参数

图表组件支持以下参数:

参数 类型 参数名称 参数值或参数说明
刷新频率 0 rf_rate 0 - 不刷新;
10 - 10 秒;
30 - 30 秒;
60 - (默认) 1 分钟;
120 - 2 分钟;
600 - 10 分钟;
900 - 15 分钟。
标识符 1 reference 任意 5 个英文字符组成的字符串(例如:ABCDEJBPNL)。在这个组件所属的仪表盘中,这个值必须是唯一的。

参数行为
- 必需的

数据集

以下参数支持用于配置数据集

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

参数 类型 名称
数据集类型 0 ds.0.dataset_type 0 - 监控项列表;
1 - (默认) 监控项模式。
监控项 4 ds.0.itemids.0 监控项 ID。

模板仪表板上配置小组件时,只应设置模板上配置的监控项。

注意:要配置多个监控项,请为每个监控项创建一个仪表板小组件字段对象,并在属性名称中使用递增的数字。

参数行为
- 当数据集类型设置为“监控项列表”且未设置监控项(小组件)时为必需
监控项(小组件) 1 ds.0.itemids.0._reference 替代监控项 ID:
ABCDE._itemid - 将兼容的小组件(其引用参数设置为“ABCDE”)设置为监控项的数据源。

注意:要配置多个小组件,请为每个小组件创建一个仪表板小组件字段对象,并在属性名称中使用递增的数字。

参数行为
- 当数据集类型设置为“监控项列表”且未设置监控项时为必需
颜色 1 ds.0.color.0 十六进制颜色代码(例如 FF0000)。

参数行为
- 当数据集类型设置为“监控项列表”时为必需
主机模式 1 ds.0.hosts.0 主机名称或模式(例如“Zabbix*”)。

参数行为
- 当数据集类型设置为“监控项模式”时为必需

模板仪表板上配置小组件时,不支持此参数。
监控项模式 1 ds.0.items.0 监控项名称或模式(例如“*:每秒处理的*值数量”)。

模板仪表板上配置小组件时,只应设置模板上配置的监控项模式。

参数行为
- 当数据集类型设置为“监控项模式”时为必需
颜色 1 ds.0.color 十六进制颜色代码(例如 FF0000)。

参数行为
- 当数据集类型设置为“监控项模式”且未设置颜色调色板时为支持
颜色调色板 0 ds.0.color_palette 颜色调色板索引。

可能的值范围为 0 到 11。

默认值:0。

参数行为
- 当数据集类型设置为“监控项模式”且未设置颜色时为支持
绘制 0 ds.0.type 0 - (默认) 线条;
1 - 点;
2 - 阶梯;
3 - 柱状图。
堆叠 0 ds.0.stacked 0 - (默认) 已禁用;
1 - 已启用。

参数行为
- 当绘制设置为“线条”、“阶梯”或“柱状图”时为支持
宽度 0 ds.0.width 可能的值范围为 1 到 10。

默认值:1。

参数行为
- 当绘制设置为“线条”或“阶梯”时为支持
点大小 0 ds.0.pointsize 可能的值范围为 1 到 10。

默认值:3。

参数行为
- 当绘制设置为“点”时为支持
透明度 0 ds.0.transparency 可能的值范围为 1 到 10。

默认值:5。
填充 0 ds.0.fill 可能的值范围为 1 到 10。

默认值:3。

参数行为
- 当绘制设置为“线条”或“阶梯”时为支持
缺失数据 0 ds.0.missingdatafunc 0 - (默认) 无;
1 - 连接;
2 - 视为 0;
3 - 最后已知值。

参数行为
- 当绘制设置为“线条”或“阶梯”时为支持
覆盖主机 1 ds.0.override_hostid._reference ABCDE._hostid - 将兼容的小组件(其“引用”参数设置为“ABCDE”)设置为主机的数据源;
DASHBOARD._hostid - 将仪表板的主机选择器设置为主机的数据源。

模板仪表板上配置小组件时,不支持此参数。
Y 轴 0 ds.0.axisy 0 - (默认) 左;
1 - 右。
反转值 0 ds.0.invert_values 0 - (默认)已禁用;
1 - 已启用。
时间偏移 1 ds.0.timeshift 有效的时间字符串(例如 36001h 等)。
可以使用时间后缀。也允许使用负值。

默认值:""(空)。
聚合函数 0 ds.0.aggregate_function 0 - (默认) 不使用;
1 - 最小值;
2 - 最大值;
3 - 平均值;
4 - 计数;
5 - 总和;
6 - 第一个;
7 - 最后一个。
聚合间隔 1 ds.0.aggregate_interval 有效的时间字符串(例如 36001h 等)。
可以使用时间后缀

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

参数行为
- 当聚合函数设置为“最小值”、“最大值”、“平均值”、“计数”、“总和”、“第一个”或“最后一个”时为支持
近似 0 ds.0.approximation 1 - 最小值;
2 - (默认) 平均值;
4 - 最大值;
7 - 全部。
数据集标签 1 ds.0.data_set_label 任意字符串值。

默认值:""(空)。
监控项标签
评估类型 0 ds.0.item_tags_evaltype 0 - (默认) 与/或;
2 - 或。
标签名称 1 ds.0.item_tags.0.tag 任意字符串值。

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

参数行为
- 配置监控项标签时为必需
运算符 0 ds.0.item_tags.0.operator 0 - 包含;
1 - 等于;
2 - 不包含;
3 - 不等于;
4 - 存在;
5 - 不存在。

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

参数行为
- 配置监控项标签时为必需
标签值 1 ds.0.item_tags.0.value 任意字符串值。

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

参数行为
- 配置监控项标签时为必需

显示选项

支持使用以下参数配置显示选项

参数 类型 名称
历史数据选择 0 source 0 - (默认) 自动;
1 - 历史记录;
2 - 趋势。
简单触发器 0 simple_triggers 0 - (默认) 禁用;
1 - 启用。
工作时间 0 working_time 0 - (默认) 禁用;
1 - 启用。
标签中的主机名称 0 show_hostnames 0 - (默认) 自动;
1 - 显示;
2 - 隐藏。

如果在模板仪表板上配置小组件,则不支持此参数。
百分位线(左)
状态 0 percentile_left 0 - (默认) 禁用;
1 - 启用。

参数行为
- 如果在数据集配置中将Y 轴设置为“左”,则支持
0 percentile_left_value 可能的值范围为 1 到 100。

参数行为
- 如果在数据集配置中将Y 轴设置为“左”,则支持
百分位线(右)
状态 0 percentile_right 0 - (默认) 禁用;
1 - 启用。

参数行为
- 如果在数据集配置中将Y 轴设置为“右”,则支持
0 percentile_right_value 可能的值范围为 1 到 100。

参数行为
- 如果在数据集配置中将Y 轴设置为“右”,则支持

时间段

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

参数 type name value
时间段 1 time_period._reference DASHBOARD._timeperiod - 将仪表板的时间段选择器设置为数据源;
ABCDE._timeperiod - 将兼容的小部件(其 Reference 参数设置为“ABCDE”)设置为数据源。

默认值:DASHBOARD._timeperiod

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

参数行为
- 如果未设置 时间段,则 supported
- 如果设置了 time_period.to,则 required
To 1 time_period.to 绝对(YYYY-MM-DD hh:mm:ss)或相对时间语法(nownow/dnow/w-1w 等)中的有效时间字符串。

参数行为
- 如果未设置 时间段,则 supported
- 如果设置了 time_period.from,则 required

坐标轴

以下参数支持用于配置 坐标轴

参数 type name value
左 Y 轴 0 lefty 0 - 禁用;
1 - (默认) 启用。

参数行为
- 如果 Y 轴(在 数据集 配置中)设置为“左侧”,则 supported
右 Y 轴 0 righty 0 - (默认) 禁用;
1 - 启用。

参数行为
- 如果 Y 轴(在 数据集 配置中)设置为“右侧”,则 supported
刻度 0 lefty_scale 0 - (默认) 线性;
1 - 对数。
righty_scale
最小值 1 lefty_min 任意数值。

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

默认值:""(空)。
righty_max
单位(类型) 0 lefty_units 0 - (默认) 自动;
1 - 静态。
righty_units
单位(值) 1 lefty_static_units 任意字符串值。

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

图例

以下参数支持用于配置图例

参数 类型 名称
显示图例 0 legend 0 - 已禁用;
1 - (默认) 已启用。
显示最小值/平均值/最大值 0 legend_statistic 0 - (默认) 已禁用;
1 - 已启用。

参数行为
- 当显示图例设置为“已启用”时支持
显示聚合函数 0 legend_aggregation 0 - (默认) 已禁用;
1 - 已启用。

参数行为
- 当显示图例设置为“已启用”时支持
0 legend_lines_mode 0 - (默认) 固定;
1 - 可变。

参数行为
- 当显示图例设置为“已启用”时支持
行数/
最大行数
0 legend_lines 可能值范围为 1 至 10。

默认值:1。

参数行为
- 当显示图例设置为“已启用”时支持
列数 0 legend_columns 可能值范围为 1 至 4。

默认值:4。

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

问题

配置 问题 时支持如下参数:

参数 类型 参数名称 参数值或参数说明
显示问题 0 show_problems 0 - (默认) 禁用;
1 - 启用。
仅选择的监控项 0 graph_item_problems 0 - 禁用;
1 - (默认) 启用。
问题主机 1 problemhosts.0 主机名。

注意:参数名称 problemhosts.0 中的数字与提供的主机列表需要一致,例如:总数为 3,则下标参数名称中的数字分别为:0、1、2。
如果需要配置多个主机,则需要给每个主机创建一个仪表盘组件字段对象,参数名称 problemhosts.0 中的数字按照顺序进行递增。

仪表盘模板上配置组件时,这个参数不受支持。
严重性 0 severities.0 0 - 未定义;
1 - 信息;
2 - 警告;
3 - 一般;
4 - 严重;
5 - 灾难。

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

注意:如果需要配置多个值,则需要给每个值创建一个仪表盘组件字段对象,参数名称 severities.0 中的数字按照顺序进行递增。
问题 1 problem_name 问题事件名称 (不区分大小写,全名或部分名称)。
问题标签
评估类型 0 evaltype 0 - (默认) And/Or;
2 - Or。
标签名称 1 tags.0.tag 任意字符串。

注意:参数名称 tags.0.tag 中的数字与提供的参数列表需要一致,例如:总数为 3,则下标参数名称中的数字分别为:0、1、2。

参数行为
- 必需的 (配置 问题标签 时)。
操作 0 tags.0.operator 0 - 包含;
1 - 相等;
2 - 不包含;
3 - 不相等;
4 - 存在;
5 - 不存在。

注意:参数名称 tags.0.operator 中的数字与提供的参数列表需要一致,例如:总数为 3,则下标参数名称中的数字分别为:0、1、2。

参数行为
- 必需的 (配置 问题标签 时)。
标签值 1 tags.0.value 任意字符串。

注意:参数名称 tags.0.value 中的数字与提供的参数列表需要一致,例如:总数为 3,则下标参数名称中的数字分别为:0、1、2。

参数行为
- 必需的 (配置 问题标签 时)。

覆盖

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

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

参数 类型 名称
主机模式 1 or.0.hosts.0 主机名称或模式(例如 Zabbix*)。

如果在模板仪表板上配置小组件,则不支持此参数。

参数行为
- 如果配置覆盖,则为必需
监控项模式 1 or.0.items.0 监控项名称或模式(例如 *: Number of processed *values per second)。
模板仪表板上配置小组件时,只应设置模板上已配置监控项的模式。

参数行为
- 如果配置覆盖,则为必需
基本颜色 1 or.0.color 十六进制颜色代码(例如 FF0000)。
宽度 0 or.0.width 可能的值范围为 1 到 10。
绘制方式 0 or.0.type 0 - 线条;
1 - 点;
2 - 阶梯;
3 - 柱状图。
透明度 0 or.0.transparency 可能的值范围为 1 到 10。
填充 0 or.0.fill 可能的值范围为 1 到 10。
点大小 0 or.0.pointsize 可能的值范围为 1 到 10。
缺失数据 0 or.0.missingdatafunc 0 - 无;
1 - 连接;
2 - 视为 0;
3 - 最后已知值。
Y 轴 0 or.0.axisy 0 - 左侧;
1 - 右侧。
反转值 0 or.0.invert_values 0 -(默认)禁用;
1 - 启用。
时间偏移 1 or.0.timeshift 有效的时间字符串(例如 36001h 等)。
可以使用时间后缀。允许使用负值。

示例

以下示例仅用于介绍如何在仪表盘组件字段对象中配置图表组件。 更多信息,请参考 创建仪表盘

配置 Graph 小部件

按以下方式配置 Graph 小部件:

  • 在 1 台主机上配置 2 个数据集,总计 9 个监控项。
  • 第一个数据集的类型为“监控项列表”,由 3 个监控项组成,这些监控项以不同颜色的线条表示,但线宽、透明度和填充相同。
  • 第二个数据集的类型为“监控项模式”,由 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.0",
                                "value": 23264
                            },
                            {
                                "type": 1,
                                "name": "ds.0.color.0",
                                "value": "FF0000"
                            },
                            {
                                "type": 4,
                                "name": "ds.0.itemids.1",
                                "value": 23269
                            },
                            {
                                "type": 1,
                                "name": "ds.0.color.1",
                                "value": "BF00FF"
                            },
                            {
                                "type": 4,
                                "name": "ds.0.itemids.2",
                                "value": 23257
                            },
                            {
                                "type": 1,
                                "name": "ds.0.color.2",
                                "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": 1,
                                "name": "time_period.to",
                                "value": "now"
                            },
                            {
                                "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
}

响应:

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

参考