These parameters and the possible property values for the respective dashboard widget field objects allow to configure the Top hosts widget in dashboard.create
and dashboard.update
methods.
Widget fields
properties are not validated during the creation or update of a dashboard. This allows users to modify built-in widgets and create custom widgets, but also introduces the risk of creating or updating widgets incorrectly. To ensure the successful creation or update of the Top hosts widget, please refer to the parameter behavior outlined in the tables below.
The following parameters are supported for the Top hosts widget.
Parameter | type | name | value | |
---|---|---|---|---|
Refresh interval | 0 | rf_rate | 0 - No refresh; 10 - 10 seconds; 30 - 30 seconds; 60 - (default) 1 minute; 120 - 2 minutes; 600 - 10 minutes; 900 - 15 minutes. |
|
Host groups | 2 | groupids.0 | Host group ID. Note: To configure multiple host groups, create a dashboard widget field object for each host group with an incremented number in the property name. This parameter is not supported if configuring the widget on a template dashboard. |
|
Host groups (Widget) | 1 | groupids._reference | Instead of Host group ID:ABCDE._hostgroupids - set a compatible widget (with its Reference parameter set to "ABCDE ") as the data source for host groups.This parameter is not supported if configuring the widget on a template dashboard. |
|
Hosts | 3 | hostids.0 | Host ID. Note: To configure multiple hosts, create a dashboard widget field object for each host with an incremented number in the property name. For multiple hosts, the parameter Host groups must either be not configured at all or configured with at least one host group that the configured hosts belong to. This parameter is not supported if configuring the widget on a template dashboard. |
|
Hosts (Widget/Dashboard) | 1 | hostids._reference | Instead of Host ID:DASHBOARD.hostids - set the Host selector as the data source for hosts;ABCDE._hostids - set a compatible widget (with its Reference parameter set to "ABCDE ") as the data source for hosts.This parameter is not supported if configuring the widget on a template dashboard. |
|
Host tags | ||||
Evaluation type | 0 | evaltype | 0 - (default) And/Or; 2 - Or. This parameter is not supported if configuring the widget on a template dashboard. |
|
Tag name | 1 | tags.0.tag | Any string value. Note: The number in the property name references tag order in the tag evaluation list. Parameter behavior: - required if configuring Host tags This parameter is not supported if configuring the widget on a template dashboard. |
|
Operator | 0 | tags.0.operator | 0 - Contains; 1 - Equals; 2 - Does not contain; 3 - Does not equal; 4 - Exists; 5 - Does not exist. Note: The number in the property name references tag order in the tag evaluation list. Parameter behavior: - required if configuring Host tags This parameter is not supported if configuring the widget on a template dashboard. |
|
Tag value | 1 | tags.0.value | Any string value. Note: The number in the property name references tag order in the tag evaluation list. Parameter behavior: - required if configuring Host tags This parameter is not supported if configuring the widget on a template dashboard. |
|
Show hosts in maintenance | 0 | maintenance | 0 - (default) Disabled; 1 - Enabled. |
|
Columns (see below) | ||||
Order by | 0 | column | Column numeric value from the configured columns. | |
Order | 0 | order | 2 - (default) Top N; 3 - Bottom N. |
|
Host limit | 0 | show_lines | Possible values range from 1-100. Default: 10. This parameter is not supported if configuring the widget on a template dashboard. |
Columns have common parameters and additional parameters depending on the configuration of the parameter Data.
For all parameters related to columns the number in the property name (e.g. columns.0.name) references a column for which the parameter is configured.
The following parameters are supported for all columns.
Parameter | type | name | value |
---|---|---|---|
Name | 1 | columns.0.name | Any string value. Parameter behavior: - required |
Data | 0 | columns.0.data | 1 - Item value; 2 - Host name; 3 - Text. Parameter behavior: - required |
Base color | 1 | columns.0.base_color | Hexadecimal color code (e.g. FF0000 ).Parameter behavior: - required |
The following parameters are supported if Data is set to "Item value".
The first number in the Thresholds property name (e.g. columnsthresholds.0.color.0) references the column for which thresholds are configured, while the second number references threshold place in a list, sorted in ascending order. However, if thresholds are configured in a different order, the values will be sorted in ascending order after updating widget configuration in Zabbix frontend (e.g. "threshold.0.threshold":"5"
→ "threshold.0.threshold":"1"
; "threshold.1.threshold":"1"
→ "threshold.1.threshold": "5"
).
Parameter | type | name | value | |
---|---|---|---|---|
Item | 1 | columns.0.item | Valid item name. When configuring the widget on a template dashboard, only items configured on the template should be set. |
|
Display | 0 | columns.0.display | 1 - (default) As is; 2 - Bar; 3 - Indicators. |
|
Min | 1 | columns.0.min | Any numeric value. Parameter behavior: - supported if Display is set to "Bar" or "Indicators" |
|
Max | 1 | columns.0.max | Any numeric value. Parameter behavior: - supported if Display is set to "Bar" or "Indicators" |
|
Decimal places | 0 | columns.0.decimal_places | Possible values range from 0-10. Default: 2. |
|
Thresholds | ||||
Color | 1 | columnsthresholds.0.color.0 | Hexadecimal color code (e.g. FF0000 ).Default: "" (empty). |
|
Threshold | 1 | columnsthresholds.0.threshold.0 | Any string value. | |
Aggregation function | 0 | columns.0.aggregate_function | 0 - (default) not used; 1 - min; 2 - max; 3 - avg; 4 - count; 5 - sum; 6 - first; 7 - last. |
|
Time period | 1 | columns.0.time_period._reference | DASHBOARD._timeperiod - set the Time period selector as the data source;ABCDE._timeperiod - set a compatible widget (with its reference parameter equal to ABCDE ) as the data source.Default: DASHBOARD._timeperiod Alternatively, you can set the time period only in the From and To parameters. Parameter behavior: - supported if Aggregation function is set to "min", "max", "avg", "count", "sum", "first", "last" |
|
From | 1 | columns.0.time_period.from | Valid time string in absolute (YYYY-MM-DD hh:mm:ss ) or relative time syntax (now , now/d , now/w-1w , etc.).Parameter behavior: - supported if Time period is not set and Aggregation function is set to "min", "max", "avg", "count", "sum", "first", "last" |
|
To | 1 | columns.0.time_period.to | Valid time string in absolute (YYYY-MM-DD hh:mm:ss ) or relative time syntax (now , now/d , now/w-1w , etc.).Parameter behavior: - supported if Time period is not set and Aggregation function is set to "min", "max", "avg", "count", "sum", "first", "last" |
|
History data | 0 | columns.0.history | 0 - (default) Auto; 1 - History; 2 - Trends. |
|
Reference | 1 | reference | Any string value consisting of 5 characters (e.g., ABCDE or JBPNL ). This value must be unique within the dashboard to which the widget belongs.Parameter behavior: - required |
The following parameters are supported if Data is set to "Text".
Parameter | type | name | value |
---|---|---|---|
Text | 1 | columns.0.text | Any string value, including macros. Supported macros: {HOST.*}, {INVENTORY.*}. Parameter behavior: - required if Data is set to "Text" |
The following examples aim to only describe the configuration of the dashboard widget field objects for the Top hosts widget. For more information on configuring a dashboard, see dashboard.create
.
Configure a Top hosts widget that displays top hosts by CPU utilization in host group "4". In addition, configure the following custom columns: "Host name", "CPU utilization in %", "1m avg", "5m avg", "15m avg", "Processes".
{
"jsonrpc": "2.0",
"method": "dashboard.create",
"params": {
"name": "My dashboard",
"display_period": 30,
"auto_start": 1,
"pages": [
{
"widgets": [
{
"type": "tophosts",
"name": "Top hosts",
"x": 0,
"y": 0,
"width": 36,
"height": 5,
"view_mode": 0,
"fields": [
{
"type": 2,
"name": "groupids.0",
"value": 4
},
{
"type": 1,
"name": "columns.0.name",
"value": "Host"
},
{
"type": 0,
"name": "columns.0.data",
"value": 2
},
{
"type": 1,
"name": "columns.0.base_color",
"value": "FFFFFF"
},
{
"type": 1,
"name": "columns.1.name",
"value": "CPU utilization in %"
},
{
"type": 0,
"name": "columns.1.data",
"value": 1
},
{
"type": 1,
"name": "columns.1.base_color",
"value": "4CAF50"
},
{
"type": 1,
"name": "columns.1.item",
"value": "CPU utilization"
},
{
"type": 0,
"name": "columns.1.display",
"value": 3
},
{
"type": 1,
"name": "columns.1.min",
"value": "0"
},
{
"type": 1,
"name": "columns.1.max",
"value": "100"
},
{
"type": 1,
"name": "columnsthresholds.1.color.0",
"value": "FFFF00"
},
{
"type": 1,
"name": "columnsthresholds.1.threshold.0",
"value": "50"
},
{
"type": 1,
"name": "columnsthresholds.1.color.1",
"value": "FF8000"
},
{
"type": 1,
"name": "columnsthresholds.1.threshold.1",
"value": "80"
},
{
"type": 1,
"name": "columnsthresholds.1.color.2",
"value": "FF4000"
},
{
"type": 1,
"name": "columnsthresholds.1.threshold.2",
"value": "90"
},
{
"type": 1,
"name": "columns.2.name",
"value": "1m avg"
},
{
"type": 0,
"name": "columns.2.data",
"value": 1
},
{
"type": 1,
"name": "columns.2.base_color",
"value": "FFFFFF"
},
{
"type": 1,
"name": "columns.2.item",
"value": "Load average (1m avg)"
},
{
"type": 1,
"name": "columns.3.name",
"value": "5m avg"
},
{
"type": 0,
"name": "columns.3.data",
"value": 1
},
{
"type": 1,
"name": "columns.3.base_color",
"value": "FFFFFF"
},
{
"type": 1,
"name": "columns.3.item",
"value": "Load average (5m avg)"
},
{
"type": 1,
"name": "columns.4.name",
"value": "15m avg"
},
{
"type": 0,
"name": "columns.4.data",
"value": 1
},
{
"type": 1,
"name": "columns.4.base_color",
"value": "FFFFFF"
},
{
"type": 1,
"name": "columns.4.item",
"value": "Load average (15m avg)"
},
{
"type": 1,
"name": "columns.5.name",
"value": "Processes"
},
{
"type": 0,
"name": "columns.5.data",
"value": 1
},
{
"type": 1,
"name": "columns.5.base_color",
"value": "FFFFFF"
},
{
"type": 1,
"name": "columns.5.item",
"value": "Number of processes"
},
{
"type": 0,
"name": "columns.5.decimal_places",
"value": 0
},
{
"type": 0,
"name": "column",
"value": 1
}
]
}
]
}
],
"userGroups": [
{
"usrgrpid": 7,
"permission": 2
}
],
"users": [
{
"userid": 1,
"permission": 3
}
]
},
"id": 1
}
Response: