
* Use relative aliases for all non-current Grafana aliases Prevents non-latest documentation "stealing" the page away from latest and through permanent redirects for latest pages that no longer exist. The redirected pages are indexed by search engines but our robots.txt forbids them crawling the non-latest page. Signed-off-by: Jack Baldry <jack.baldry@grafana.com> * Remove aliases from shared pages Signed-off-by: Jack Baldry <jack.baldry@grafana.com> * Rewrite all current latest aliases to be next Signed-off-by: Jack Baldry <jack.baldry@grafana.com> * Fix typo in latest alias Signed-off-by: Jack Baldry <jack.baldry@grafana.com> * Remove all current page aliases find docs/sources -type f -name '*.md' -exec sed -z -i 's#\n *- /docs/grafana/next/[^\n]*\n#\n#' {} \; find docs/sources -type f -name '*.md' -exec sed -Ez -i 's#\n((aliases:\n *-)|aliases:\n)#\n\2#' {} \; Signed-off-by: Jack Baldry <jack.baldry@grafana.com> * Prettier Signed-off-by: Jack Baldry <jack.baldry@grafana.com> Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
3.5 KiB
aliases | description | keywords | menuTitle | title | weight | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Using template variables with Azure Monitor in Grafana |
|
Template variables | Azure Monitor template variables | 400 |
Azure Monitor template variables
Instead of hard-coding details such as resource group or resource name values in metric queries, you can use variables. This helps you create more interactive, dynamic, and reusable dashboards. Grafana refers to such variables as template variables.
For an introduction to templating and template variables, refer to the [Templating]({{< relref "../../../dashboards/variables" >}}) and [Add and manage variables]({{< relref "../../../dashboards/variables/add-template-variables" >}}) documentation.
Use query variables
You can specify these Azure Monitor data source queries in the Variable edit view's Query Type field.
Name | Description |
---|---|
Subscriptions | Returns subscriptions. |
Resource Groups | Returns resource groups for a specified subscription. |
Namespaces | Returns metric namespaces for the specified subscription and resource group. |
Resource Names | Returns a list of resource names for a specified subscription, resource group and namespace. |
Metric Names | Returns a list of metric names for a resource. |
Workspaces | Returns a list of workspaces for the specified subscription. |
Logs | Use a KQL query to return values. |
Resource Graph | Use an ARG query to return values. |
Any Log Analytics Kusto Query Language (KQL) query that returns a single list of values can also be used in the Query field. For example:
Query | List of values returned |
---|---|
workspace("myWorkspace").Heartbeat | distinct Computer |
Virtual machines |
workspace("$workspace").Heartbeat | distinct Computer |
Virtual machines with template variable |
workspace("$workspace").Perf | distinct ObjectName |
Objects from the Perf table |
workspace("$workspace").Perf | where ObjectName == "$object" | distinct CounterName |
Metric names from the Perf table |
Query variable example
This time series query uses query variables:
Perf
| where ObjectName == "$object" and CounterName == "$metric"
| where TimeGenerated >= $__timeFrom() and TimeGenerated <= $__timeTo()
| where $__contains(Computer, $computer)
| summarize avg(CounterValue) by bin(TimeGenerated, $__interval), Computer
| order by TimeGenerated asc