2022 Zabbix中国峰会
2022 Zabbix中国峰会

15 监控项历史

说明

各个仪表盘组件字段对象中的这些参数和可用属性值允许在dashboard.createdashboard.update 方法中配置监控项历史组件。

在创建或更新仪表盘期间不会验证组件的 fields 属性。 这个方法允许用户修改内置组件和创建自定义组件,但也会导致存在错误创建或更新组件的风险。 为确保成功创建或更新监控项历史组件,请参阅下表中概述的参数行为。

参数

监控项历史组件支持以下参数:

参数 类型 参数名称 参数值或参数说明
刷新频率 0 rf_rate 0 - 不刷新;
10 - 10 秒;
30 - 30 秒;
60 - (默认) 1 分钟;
120 - 2 分钟;
600 - 10 分钟;
900 - 15 分钟。
布局 0 layout 0 - (默认) 水平;
1 - 垂直。
(请看)
显示行数 0 show_lines 可用值范围:1-100。

默认值:25。
覆盖主机 1 override_hostid._reference ABCDE._hostid - 将一个 标识符 参数为 ABCDE兼容性组件作为数据源;
DASHBOARD._hostid - 将主机选择器作为数据源。

仪表盘模板中定义组件时,此参数不可用。
高级配置 (请看高级配置)
标识符 1 reference 任意 5 个英文字符组成的字符串(例如:ABCDEJBPNL)。在这个组件所属的仪表盘中,这个值必须是唯一的。

参数行为
- 必需的

列有公共参数,也有由 监控项 参数配置确定的额外参数。

所有列相关的参数中的数字 (例如:columns.0.name) 依赖于配置在哪一列。示例中代表配置第一列。

所有列均支持以下参数:

参数 类型 参数名称 参数值或参数说明
名称 1 columns.0.name 任意字符串。

参数行为
- 必需的
监控项 4 columns.0.itemid 监控项 ID。

如果是在仪表盘模板上配置组件,则仅允许设置仪表盘模板上存在的监控项。

参数行为
- 必需的
颜色 1 columns.0.base_color 十六进制颜色代码(例如:FF0000)。

默认值:"" (空)。

监控项 是一个数值类型的监控项时,支持以下参数:

参数 类型 参数名称 参数值或参数说明
显示 0 columns.0.display 1 - (默认) 原样显示;
2 - 条形图;
3 - 指标。
最小值 1 columns.0.min 任意数值。

参数行为
- 支持 (如果 显示 配置为 "条形图" 或 "指标")。
最大值 1 columns.0.max 任意数值。

参数行为
- 支持 (如果 显示 配置为 "条形图" 或 "指标")。
阈值
颜色 1 columns.0.thresholds.0.color 十六进制颜色代码(例如:FF0000)。
阈值 1 columns.0.thresholds.0.threshold 任意数值。支持后缀(例如:"1d"、"2w"、"4K"、"8G")。
历史数据 0 columns.0.history 0 - (默认) 自动;
1 - 历史;
2 - 趋势。

监控项 是一个字符串类型、文本类型或日志类型的监控项时,支持以下参数:

参数 类型 参数名称 参数值或参数说明
高亮
高亮 1 columns.0.highlights.0.color 十六进制颜色代码(例如:FF0000)。
阈值 1 columns.0.highlights.0.pattern 任意正则表达式。
显示 0 columns.0.display 1 - (默认) 原样显示;
4 - HTML;
5 - 单线。
单线 0 columns.0.max_length 可用值范围: 1-500。

默认值:100。

参数行为
- 支持 (如果 显示 设置为 "单线")。
使用等宽字体 0 columns.0.monospace_font 0 - (默认) 使用默认字体;
1 - 使用等宽字体。
显示本地时间 0 columns.0.local_time 0 - (默认) 显示时间戳;
1 - 显示本地时间。

参数行为
- 支持 (如果 监控项 是一个日志类型监控项,且 显示时间戳 设置为 "启用")。

监控项 是一个二进制类型的监控项时,支持以下参数:

参数 类型 参数名称 参数值或参数说明
显示缩略图 1 columns.0.show_thumbnail 0 - (默认) 禁用;
1 - 启用。

高级配置

监控项历史 组件支持以下高级配置参数:

参数 类型 参数名称 参数值或参数说明
新值 0 sortorder 0 - (默认) 顶部;
1 - 底部。
显示时间戳 0 show_timestamp 0 - (默认) 禁用;
1 - 启用。
显示行头 0 show_column_header 0 - 关;
1 - 水平;
2 - (默认) 垂直。
时间期间 1 time_period._reference DASHBOARD._timeperiod - 将时间期间选择器选择器作为数据源;
ABCDE._timeperiod - 将一个 标识符 参数为 ABCDE兼容性组件作为数据源。

默认值: DASHBOARD._timeperiod

另外,你也可以仅仅通过 FromTo 参数指定时间周期。
From 1 time_period.from 绝对(YYYY-MM-DD hh:mm:ss)或相对(nownow/dnow/w-1w等)时间字符串。

参数行为
- 支持 (如果未设置 时间期间)。
To 1 time_period.to 绝对(YYYY-MM-DD hh:mm:ss)或相对(nownow/dnow/w-1w等)时间字符串。

参数行为
- 支持 (如果未设置 时间期间)。

示例

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

配置一个监控项历史 组件

配置一个监控项历史组件,用于展示两个数值类型的监控项 "42269" 和 "42270" 的最新值 此外,将列配置为垂直显示,列名配置为水平显示,限制仅展示 15 行数据,同时包括一个单独的时间戳列。

请求:

{
           "jsonrpc": "2.0",
           "method": "dashboard.create",
           "params": {
               "name": "My dashboard",
               "display_period": 30,
               "auto_start": 1,
               "pages": [
                   {
                       "widgets": [
                           {
                               "type": "itemhistory",
                               "name": "Item history",
                               "x": "0",
                               "y": "0",
                               "width": "18",
                               "height": "6",
                               "view_mode": "0",
                               "fields": [
                                   {
                                       "type": "0",
                                       "name": "layout",
                                       "value": "1"
                                   },
                                   {
                                       "type": "1",
                                       "name": "columns.0.name",
                                       "value": "CPU utilization"
                                   },
                                   {
                                       "type": "4",
                                       "name": "columns.0.itemid",
                                       "value": "42269"
                                   },
                                   {
                                       "type": "1",
                                       "name": "columns.1.name",
                                       "value": "Memory utilization"
                                   },
                                   {
                                       "type": "4",
                                       "name": "columns.1.itemid",
                                       "value": "42270"
                                   },
                                   {
                                       "type": "0",
                                       "name": "show_lines",
                                       "value": "15"
                                   },
                                   {
                                       "type": "0",
                                       "name": "show_timestamp",
                                       "value": "1"
                                   },
                                   {
                                       "type": "0",
                                       "name": "show_column_header",
                                       "value": "1"
                                   },
                                   {
                                       "type": "1",
                                       "name": "reference",
                                       "value": "KIVKD"
                                   }
                               ]
                           }
                       ]
                   }
               ],
               "userGroups": [
                   {
                       "usrgrpid": 7,
                       "permission": 2
                   }
               ],
               "users": [
                   {
                       "userid": 1,
                       "permission": 3
                   }
               ]
           },
           "id": 1
       }

响应:

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

参考