Annotations: Support filtering the target panels (#66325)
Co-authored-by: Adela Almasan <adela.almasan@grafana.com> Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
This commit is contained in:
co-authored by
Adela Almasan
nmarrs
parent
a384194e15
commit
9452c0d718
@@ -13,32 +13,84 @@ title: Dashboard kind
|
||||
|
||||
A Grafana dashboard.
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|------------------------|-----------------------------------|----------|-----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `editable` | boolean | **Yes** | `true` | Whether a dashboard is editable or not. |
|
||||
| `graphTooltip` | integer | **Yes** | `0` | 0 for no shared crosshair or tooltip (default).<br/>1 for shared crosshair.<br/>2 for shared crosshair AND shared tooltip.<br/>Possible values are: `0`, `1`, `2`. |
|
||||
| `schemaVersion` | uint16 | **Yes** | `36` | Version of the JSON schema, incremented each time a Grafana update brings<br/>changes to said schema.<br/>TODO this is the existing schema numbering system. It will be replaced by Thema's themaVersion |
|
||||
| `style` | string | **Yes** | `dark` | Theme of dashboard.<br/>Possible values are: `dark`, `light`. |
|
||||
| `annotations` | [object](#annotations) | No | | TODO docs |
|
||||
| `description` | string | No | | Description of dashboard. |
|
||||
| `fiscalYearStartMonth` | integer | No | `0` | The month that the fiscal year starts on. 0 = January, 11 = December<br/>Constraint: `>=0 & <12`. |
|
||||
| `gnetId` | string | No | | For dashboards imported from the https://grafana.com/grafana/dashboards/ portal |
|
||||
| `id` | integer | No | | Unique numeric identifier for the dashboard.<br/>TODO must isolate or remove identifiers local to a Grafana instance...? |
|
||||
| `links` | [DashboardLink](#dashboardlink)[] | No | | TODO docs |
|
||||
| `liveNow` | boolean | No | | When set to true, the dashboard will redraw panels at an interval matching the pixel width.<br/>This will keep data "moving left" regardless of the query refresh rate. This setting helps<br/>avoid dashboards presenting stale live data |
|
||||
| `panels` | [object](#panels)[] | No | | |
|
||||
| `refresh` | | No | | Refresh rate of dashboard. Represented via interval string, e.g. "5s", "1m", "1h", "1d". |
|
||||
| `revision` | integer | No | | This property should only be used in dashboards defined by plugins. It is a quick check<br/>to see if the version has changed since the last time. Unclear why using the version property<br/>is insufficient. |
|
||||
| `snapshot` | [Snapshot](#snapshot) | No | | TODO docs |
|
||||
| `tags` | string[] | No | | Tags associated with dashboard. |
|
||||
| `templating` | [object](#templating) | No | | TODO docs |
|
||||
| `time` | [object](#time) | No | | Time range for dashboard, e.g. last 6 hours, last 7 days, etc |
|
||||
| `timepicker` | [object](#timepicker) | No | | TODO docs<br/>TODO this appears to be spread all over in the frontend. Concepts will likely need tidying in tandem with schema changes |
|
||||
| `timezone` | string | No | `browser` | Timezone of dashboard. Accepts IANA TZDB zone ID or "browser" or "utc". |
|
||||
| `title` | string | No | | Title of dashboard. |
|
||||
| `uid` | string | No | | Unique dashboard identifier that can be generated by anyone. string (8-40) |
|
||||
| `version` | uint32 | No | | Version of the dashboard, incremented each time the dashboard is updated. |
|
||||
| `weekStart` | string | No | | TODO docs |
|
||||
| Property | Type | Required | Default | Description |
|
||||
|------------------------|---------------------------------------------|----------|-----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `editable` | boolean | **Yes** | `true` | Whether a dashboard is editable or not. |
|
||||
| `graphTooltip` | integer | **Yes** | `0` | 0 for no shared crosshair or tooltip (default).<br/>1 for shared crosshair.<br/>2 for shared crosshair AND shared tooltip.<br/>Possible values are: `0`, `1`, `2`. |
|
||||
| `schemaVersion` | uint16 | **Yes** | `36` | Version of the JSON schema, incremented each time a Grafana update brings<br/>changes to said schema.<br/>TODO this is the existing schema numbering system. It will be replaced by Thema's themaVersion |
|
||||
| `style` | string | **Yes** | `dark` | Theme of dashboard.<br/>Possible values are: `dark`, `light`. |
|
||||
| `annotations` | [AnnotationContainer](#annotationcontainer) | No | | TODO -- should not be a public interface on its own, but required for Veneer |
|
||||
| `description` | string | No | | Description of dashboard. |
|
||||
| `fiscalYearStartMonth` | integer | No | `0` | The month that the fiscal year starts on. 0 = January, 11 = December<br/>Constraint: `>=0 & <12`. |
|
||||
| `gnetId` | string | No | | For dashboards imported from the https://grafana.com/grafana/dashboards/ portal |
|
||||
| `id` | integer | No | | Unique numeric identifier for the dashboard.<br/>TODO must isolate or remove identifiers local to a Grafana instance...? |
|
||||
| `links` | [DashboardLink](#dashboardlink)[] | No | | TODO docs |
|
||||
| `liveNow` | boolean | No | | When set to true, the dashboard will redraw panels at an interval matching the pixel width.<br/>This will keep data "moving left" regardless of the query refresh rate. This setting helps<br/>avoid dashboards presenting stale live data |
|
||||
| `panels` | [object](#panels)[] | No | | |
|
||||
| `refresh` | | No | | Refresh rate of dashboard. Represented via interval string, e.g. "5s", "1m", "1h", "1d". |
|
||||
| `revision` | integer | No | | This property should only be used in dashboards defined by plugins. It is a quick check<br/>to see if the version has changed since the last time. Unclear why using the version property<br/>is insufficient. |
|
||||
| `snapshot` | [Snapshot](#snapshot) | No | | TODO docs |
|
||||
| `tags` | string[] | No | | Tags associated with dashboard. |
|
||||
| `templating` | [object](#templating) | No | | TODO docs |
|
||||
| `time` | [object](#time) | No | | Time range for dashboard, e.g. last 6 hours, last 7 days, etc |
|
||||
| `timepicker` | [object](#timepicker) | No | | TODO docs<br/>TODO this appears to be spread all over in the frontend. Concepts will likely need tidying in tandem with schema changes |
|
||||
| `timezone` | string | No | `browser` | Timezone of dashboard. Accepts IANA TZDB zone ID or "browser" or "utc". |
|
||||
| `title` | string | No | | Title of dashboard. |
|
||||
| `uid` | string | No | | Unique dashboard identifier that can be generated by anyone. string (8-40) |
|
||||
| `version` | uint32 | No | | Version of the dashboard, incremented each time the dashboard is updated. |
|
||||
| `weekStart` | string | No | | TODO docs |
|
||||
|
||||
### AnnotationContainer
|
||||
|
||||
TODO -- should not be a public interface on its own, but required for Veneer
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|----------|---------------------------------------|----------|---------|-------------|
|
||||
| `list` | [AnnotationQuery](#annotationquery)[] | No | | |
|
||||
|
||||
### AnnotationQuery
|
||||
|
||||
TODO docs
|
||||
FROM: AnnotationQuery in grafana-data/src/types/annotations.ts
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|--------------|-------------------------------------------------|----------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `datasource` | [object](#datasource) | **Yes** | | TODO: Should be DataSourceRef |
|
||||
| `enable` | boolean | **Yes** | `true` | When enabled the annotation query is issued with every dashboard refresh |
|
||||
| `iconColor` | string | **Yes** | | Color to use for the annotation event markers |
|
||||
| `name` | string | **Yes** | | Name of annotation. |
|
||||
| `filter` | [AnnotationPanelFilter](#annotationpanelfilter) | No | | |
|
||||
| `hide` | boolean | No | `false` | Annotation queries can be toggled on or off at the top of the dashboard.<br/>When hide is true, the toggle is not shown in the dashboard. |
|
||||
| `target` | [AnnotationTarget](#annotationtarget) | No | | TODO: this should be a regular DataQuery that depends on the selected dashboard<br/>these match the properties of the "grafana" datasouce that is default in most dashboards |
|
||||
| `type` | string | No | | TODO -- this should not exist here, it is based on the --grafana-- datasource |
|
||||
|
||||
### AnnotationPanelFilter
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|-----------|-----------|----------|---------|-----------------------------------------------------|
|
||||
| `ids` | integer[] | **Yes** | | Panel IDs that should be included or excluded |
|
||||
| `exclude` | boolean | No | `false` | Should the specified panels be included or excluded |
|
||||
|
||||
### AnnotationTarget
|
||||
|
||||
TODO: this should be a regular DataQuery that depends on the selected dashboard
|
||||
these match the properties of the "grafana" datasouce that is default in most dashboards
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|------------|----------|----------|---------|-------------------------------------------------------------------------------------------------------------------|
|
||||
| `limit` | integer | **Yes** | | Only required/valid for the grafana datasource...<br/>but code+tests is already depending on it so hard to change |
|
||||
| `matchAny` | boolean | **Yes** | | Only required/valid for the grafana datasource...<br/>but code+tests is already depending on it so hard to change |
|
||||
| `tags` | string[] | **Yes** | | Only required/valid for the grafana datasource...<br/>but code+tests is already depending on it so hard to change |
|
||||
| `type` | string | **Yes** | | Only required/valid for the grafana datasource...<br/>but code+tests is already depending on it so hard to change |
|
||||
|
||||
### Datasource
|
||||
|
||||
TODO: Should be DataSourceRef
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|----------|--------|----------|---------|-------------|
|
||||
| `type` | string | No | | |
|
||||
| `uid` | string | No | | |
|
||||
|
||||
### DashboardLink
|
||||
|
||||
@@ -76,52 +128,6 @@ TODO docs
|
||||
| `userId` | uint32 | **Yes** | | TODO docs |
|
||||
| `url` | string | No | | TODO docs |
|
||||
|
||||
### Annotations
|
||||
|
||||
TODO docs
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|----------|---------------------------------------|----------|---------|-------------|
|
||||
| `list` | [AnnotationQuery](#annotationquery)[] | No | | |
|
||||
|
||||
### AnnotationQuery
|
||||
|
||||
TODO docs
|
||||
FROM: AnnotationQuery in grafana-data/src/types/annotations.ts
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|--------------|---------------------------------------|----------|-------------|-----------------------------------|
|
||||
| `builtIn` | uint8 | **Yes** | `0` | |
|
||||
| `datasource` | [object](#datasource) | **Yes** | | Datasource to use for annotation. |
|
||||
| `enable` | boolean | **Yes** | `true` | Whether annotation is enabled. |
|
||||
| `showIn` | uint8 | **Yes** | `0` | |
|
||||
| `type` | string | **Yes** | `dashboard` | |
|
||||
| `hide` | boolean | No | `false` | Whether to hide annotation. |
|
||||
| `iconColor` | string | No | | Annotation icon color. |
|
||||
| `name` | string | No | | Name of annotation. |
|
||||
| `rawQuery` | string | No | | Query for annotation data. |
|
||||
| `target` | [AnnotationTarget](#annotationtarget) | No | | TODO docs |
|
||||
|
||||
### AnnotationTarget
|
||||
|
||||
TODO docs
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|------------|----------|----------|---------|-------------|
|
||||
| `limit` | integer | **Yes** | | |
|
||||
| `matchAny` | boolean | **Yes** | | |
|
||||
| `tags` | string[] | **Yes** | | |
|
||||
| `type` | string | **Yes** | | |
|
||||
|
||||
### Datasource
|
||||
|
||||
Datasource to use for annotation.
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|----------|--------|----------|---------|-------------|
|
||||
| `type` | string | No | | |
|
||||
| `uid` | string | No | | |
|
||||
|
||||
### Panels
|
||||
|
||||
| Property | Type | Required | Default | Description |
|
||||
|
||||
Reference in New Issue
Block a user