Dashboard YAML structure
Full dashboards Examples Directory
dashboard
Required
Dict
type | description | default | required | |
---|---|---|---|---|
name | String | Dashboard name | True | |
description | String | Dashboard description | False | |
layout | Dict | The dashbaord layout structure | True | |
variables | List | CList of variables with optional CLI arguments | False | |
visualization | List | List of graphs to display on the defined layout boxes | True |
layout
Required
Dict
type | description | default | required | |
---|---|---|---|---|
splitMode | String | Split | “row” | False |
fullScreen | Boolean | Dashboard description | True | False |
header | Dict | Dashboard header options | False | |
body.boxes | Dict | Options of the 3 main screen splits | True |
left || middle || right
Optional
Dict
Example
left: enable: true size: 190 ratio: 1 split_mode: column split: left_a: size: 0 ratio: 1
type | description | default | required | |
---|---|---|---|---|
enable | Boolean | Whether to enable the screen split mode | False | False |
size | Integer | Layout Size | 0 | False |
ratio | Integer | Layout Ratio | 1 | False |
split_mode | Dict | Split option, Options: column , row | “row” | False |
split | Dict | Furthur split | True |
[left || middle || right].split
Optional
Dict
type | description | default | required | |
---|---|---|---|---|
SPLIT-NAME | Dict | User Input - | False | False |
size | Integer | Layout Size | 0 | False |
ratio | Integer | Layout Ratio | 1 | False |
Variables
Optional
List
Example
variables: - name: namespace default: .* cliArgument: enable: true short: -n required: false - name: pod default: .* cliArgument: enable: true short: -po required: false
type | description | default | required | |
---|---|---|---|---|
name | String | variable name ,, also used for the CLI argument name | True | |
default | String | devault value for the variable | True | |
cliArgument | Dict | CLI argument options for the variable | False |
cliArgument
Optional
Dict
type | description | default | required | |
---|---|---|---|---|
enable | Boolean | Enable CLI argument for the variable | True | |
short | String | short for the argument | True | |
required | Boolean | Wether the argument is required to run the command | False | False |
Visualization
Required
List
Example
visualization: - name: Pods Memory Usage enable: true box: right_a type: asciiGraph metricUnit: mb # Sorting is important if you expect lots of results asciiGraphMetric: > sort_desc(sum(container_memory_usage_bytes{namespace=~"$namespace", pod=~"$pod", pod!=""}) by (pod) / 1024 / 1024) custom_key: "🥕 " asciiGraphOptions: height: 0 width: 80 maxHeight: 17 maxWidth: 45 updateIntervalSeconds: 2
type | description | default | required | |
---|---|---|---|---|
name | String | Name of graph | True | |
enable | Boolean | Enable the display of the graph | True | False |
box | Boolean | The layout box to display the graph in, Example: right , right_a , left_b | True | |
type | Graph data type - Options: [asciiGraph , progressBarList , simpleTable , advancedTable ] | True | ||
metricUnit | String | the metirc value unit - Options: [None , byte , mb , gb , tb , seconds , percentage ] | ||
custom_key | String | custom key for the metric result key, | Metric default result key | |
asciiGraphOptions | Dict | Graph options with asciiGraph data type | False | |
progressBarListOptions | Dict | Graph options with progressBarList data type | False | |
simpleTableOptions | Dict | Graph options with simpleTable data type | False | |
advancedTableOptions | Dict | Graph options with advancedTable data type | False | |
simpleTableMetric | String | Required with simpleTable Data typeA single Prometheus Metric, where each result item is a row in the table and each label is a column. | True | |
advancedTableColumns | List | Required with advancedTable Data typeList of metrics, where each metric represent a column on the table | True | |
progressBarListMetrics | Dict | Required with progressBarList Data typeTwo Prometheus metrics, “usage” & “total” , to calculate and display the percentage of each result item and display as a progressBar | True | |
asciiGraphMetric | String | Required with asciiGraph Data typeA single Prometheus Metric, where each result item is a line on the graph | True |
asciiGraphOptions
Optional
Dict
type | description | default | required | |
---|---|---|---|---|
height | Integer | Graph height | 17 | False |
width | Integer | Graph width | 45 | False |
maxHeight | Integer | 20 | False | |
maxWidth | Integer | 50 | False | |
updateIntervalSeconds | Integer | Data update interval | 5 | False |
progressBarListOptions
Optional
Dict
type | description | default | required | |
---|---|---|---|---|
maxItemsCount | Integer | Maxumim number of items to visualize | 20 | False |
lineBreak | Boolean | Print lines between progressBars | True | False |
showBarPercentage | Boolean | show progress percentage for ProgressBars | True | False |
barWidth | Integer | ProgressBar width | 20 | False |
updateIntervalSeconds | Integer | Data update interval | 5 | False |
simpleTableOptions
Optional
Dict
type | description | default | required | |
---|---|---|---|---|
tableType | String | Table type - Allowed Options | plain | False |
showValue | Boolean | Show value column | True | False |
headersUppercase | Boolean | Show the table header in Upecase | True | False |
autoConvertValue | Boolean | Auto convert the metric value based on the metricUnit .. for example, if metric value is in byte, it would be converted to kb, mb, gb .. etc. | False | False |
showTableIndex | Boolean | Show table Index on the left | True | False |
updateIntervalSeconds | Integer | Data update interval | 5 | False |
advancedTableOptions
Optional
Dict
type | description | default | required | |
---|---|---|---|---|
tableType | String | Table type - Allowed Options | plain | False |
showValue | Boolean | Show value column | True | False |
headersUppercase | Boolean | Show the table header in Upecase | True | False |
autoConvertValue | Boolean | Auto convert the metric value based on the metricUnit .. for example, if metric value is in byte, it would be converted to kb, mb, gb .. etc. | False | False |
showTableIndex | Boolean | Show table Index on the left | True | False |
updateIntervalSeconds | Integer | Data update interval | 5 | False |
advancedTableColumns
Required
List
type | description | default | required | |
---|---|---|---|---|
COULMN NAME EX: - memory usage: | String | Column name (User Input name) | plain | True |
metric | String | Prometheus metric to qurey | True | |
metricUnit | String | metric result value unit Options: [ None , kb , byte , mb , gb , tb , seconds , percentage ] | byte | False |
autoConvertValue | Boolean | Auto convert the metric value based on the metricUnit .. for example, if metric value is in byte, it would be converted to kb, mb, gb .. etc. | False | False |
progressBarListMetrics
Required
Dict
type | description | default | required | |
---|---|---|---|---|
total_value_metric | String | Prometheus metric to qurey - to get total values | True | |
total_value_metric | String | Prometheus metric to qurey - to get usage values | True |