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 | Host group ID. Note: To configure multiple host groups, create a dashboard widget field object for each host group. |
|
Hosts | 3 | hostids | Host ID. Note: To configure multiple hosts, create a dashboard widget field object for each host. 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. |
|
Host Tags (the number in the property name (e.g. tags.tag.0) references tag order in the tag evaluation list) | ||||
Evaluation type | 0 | evaltype | 0 - (default) And/Or; 2 - Or. |
|
Tag name | 1 | tags.tag.0 | Any string value. Parameter behavior: - required if configuring Tags |
|
Operator | 0 | tags.operator.0 | 0 - Contains; 1 - Equals; 2 - Does not contain; 3 - Does not equal; 4 - Exists; 5 - Does not exist. Parameter behavior: - required if configuring Tags |
|
Tag value | 1 | tags.value.0 | Any string value. Parameter behavior: - required if configuring Tags |
|
Columns (see below) | ||||
Order | 0 | order | 2 - (default) Top N; 3 - Bottom N. |
|
Order column | 0 | column | Column numeric value from the configured columns. | |
Host count | 0 | count | Valid values range from 1-100. Default: 10. |
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.name.0) references a column for which the parameter is configured.
The following parameters are supported for all columns.
Parameter | type | name | value |
---|---|---|---|
Name | 1 | columns.name.0 | Any string value. |
Data | 0 | columns.data.0 | 1 - Item value; 2 - Host name; 3 - Text. Parameter behavior: - required |
Base color | 1 | columns.base_color.0 | 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.color.0.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.threshold.0":"5"
→ "threshold.threshold.0":"1"
; "threshold.threshold.1":"1"
→ "threshold.threshold.1": "5"
).
Parameter | type | name | value | |
---|---|---|---|---|
Item | 1 | columns.item.0 | Valid item name. | |
Time shift | 1 | columns.timeshift.0 | Valid numeric or time string value (e.g. 3600 or 1h ).You may use time suffixes. Negative values are allowed. Parameter behavior: - required |
|
Aggregation function | 0 | columns.aggregate_function.0 | 0 - (default) none; 1 - min; 2 - max; 3 - avg; 4 - count; 5 - sum; 6 - first; 7 - last. |
|
Aggregation interval | 1 | columns.aggregate_interval.0 | Valid time string (e.g. 3600 , 1h , etc.).You may use time suffixes. Parameter Aggregation interval not available if Aggregation function is set to none. Default: 1h . |
|
Display | 0 | columns.display.0 | 1 - (default) As is; 2 - Bar; 3 - Indicators. |
|
Min | 1 | columns.min.0 | Any numeric value. Parameter Min not available if Display is set to "As is". |
|
Max | 1 | columns.max.0 | Any numeric value. Parameter Max not available if Display is set to "As is". |
|
Decimal places | 0 | columns.decimal_places.0 | Valid values range from 0-10. Default: 2. |
|
History data | 0 | columns.history.0 | 1 - (default) Auto; 2 - History; 3 - Trends. |
|
Thresholds | ||||
Color | 1 | columnsthresholds.color.0.0 | Hexadecimal color code (e.g. FF0000 ).Default: "" (empty). |
|
Threshold | 1 | columnsthresholds.threshold.0.0 | Any string value. |
The following parameters are supported if Data is set to "Text".
Parameter | type | name | value |
---|---|---|---|
Text | 1 | columns.text.0 | 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": 12,
"height": 5,
"view_mode": 0,
"fields": [
{
"type": 2,
"name": "groupids",
"value": 4
},
{
"type": 1,
"name": "columns.name.0",
"value": ""
},
{
"type": 0,
"name": "columns.data.0",
"value": 2
},
{
"type": 1,
"name": "columns.base_color.0",
"value": "FFFFFF"
},
{
"type": 1,
"name": "columns.timeshift.0",
"value": ""
},
{
"type": 1,
"name": "columns.name.1",
"value": "CPU utilization in %"
},
{
"type": 0,
"name": "columns.data.1",
"value": 1
},
{
"type": 1,
"name": "columns.base_color.1",
"value": "4CAF50"
},
{
"type": 1,
"name": "columns.item.1",
"value": "CPU utilization"
},
{
"type": 1,
"name": "columns.timeshift.1",
"value": ""
},
{
"type": 0,
"name": "columns.display.1",
"value": 3
},
{
"type": 1,
"name": "columns.min.1",
"value": "0"
},
{
"type": 1,
"name": "columns.max.1",
"value": "100"
},
{
"type": 1,
"name": "columnsthresholds.color.1.0",
"value": "FFFF00"
},
{
"type": 1,
"name": "columnsthresholds.threshold.1.0",
"value": "50"
},
{
"type": 1,
"name": "columnsthresholds.color.1.1",
"value": "FF8000"
},
{
"type": 1,
"name": "columnsthresholds.threshold.1.1",
"value": "80"
},
{
"type": 1,
"name": "columnsthresholds.color.1.2",
"value": "FF4000"
},
{
"type": 1,
"name": "columnsthresholds.threshold.1.2",
"value": "90"
},
{
"type": 1,
"name": "columns.name.2",
"value": "1m avg"
},
{
"type": 0,
"name": "columns.data.2",
"value": 1
},
{
"type": 1,
"name": "columns.base_color.2",
"value": "FFFFFF"
},
{
"type": 1,
"name": "columns.item.2",
"value": "Load average (1m avg)"
},
{
"type": 1,
"name": "columns.timeshift.2",
"value": ""
},
{
"type": 1,
"name": "columns.name.3",
"value": "5m avg"
},
{
"type": 0,
"name": "columns.data.3",
"value": 1
},
{
"type": 1,
"name": "columns.base_color.3",
"value": "FFFFFF"
},
{
"type": 1,
"name": "columns.item.3",
"value": "Load average (5m avg)"
},
{
"type": 1,
"name": "columns.timeshift.3",
"value": ""
},
{
"type": 1,
"name": "columns.name.4",
"value": "15m avg"
},
{
"type": 0,
"name": "columns.data.4",
"value": 1
},
{
"type": 1,
"name": "columns.base_color.4",
"value": "FFFFFF"
},
{
"type": 1,
"name": "columns.item.4",
"value": "Load average (15m avg)"
},
{
"type": 1,
"name": "columns.timeshift.4",
"value": ""
},
{
"type": 1,
"name": "columns.name.5",
"value": "Processes"
},
{
"type": 0,
"name": "columns.data.5",
"value": 1
},
{
"type": 1,
"name": "columns.base_color.5",
"value": "FFFFFF"
},
{
"type": 1,
"name": "columns.item.5",
"value": "Number of processes"
},
{
"type": 1,
"name": "columns.timeshift.5",
"value": ""
},
{
"type": 0,
"name": "columns.decimal_places.5",
"value": 0
},
{
"type": 0,
"name": "column",
"value": 1
}
]
}
]
}
],
"userGroups": [
{
"usrgrpid": 7,
"permission": 2
}
],
"users": [
{
"userid": 1,
"permission": 3
}
]
},
"id": 1
}
Response: