diff --git a/docs/sources/administration/_index.md b/docs/sources/administration/_index.md
index dfed44eb18e..51f6a755334 100644
--- a/docs/sources/administration/_index.md
+++ b/docs/sources/administration/_index.md
@@ -5,9 +5,15 @@ type = "docs"
[menu.docs]
name = "Administration"
identifier = "admin"
-weight = 2
+weight = 20
+++
# Administration
-This section provides resources for Grafana administrators and users performing administrative tasks.
+This section includes information for Grafana administrators, team administrators, and users performing administrative tasks:
+
+- [Change password]({{< relref "change-your-password" >}})
+- [Change Preferences]({{< relref "preferences" >}})
+- [Configuration]({{< relref "configuration" >}})
+- [Configure Docker image]({{< relref "configure-docker" >}})
+- [Security]({{< relref "security" >}})
diff --git a/docs/sources/administration/change-your-password.md b/docs/sources/administration/change-your-password.md
index 65357ad7e87..ba924370a49 100644
--- a/docs/sources/administration/change-your-password.md
+++ b/docs/sources/administration/change-your-password.md
@@ -4,6 +4,8 @@ description = "How to change your Grafana password"
keywords = ["grafana", "password", "change", "preferences"]
type = "docs"
[menu.docs]
+identifier = "change-your-password"
+parent = "administration"
weight = 100
+++
diff --git a/docs/sources/administration/configuration.md b/docs/sources/administration/configuration.md
index 7e5ec7650db..b5a9f3a915e 100644
--- a/docs/sources/administration/configuration.md
+++ b/docs/sources/administration/configuration.md
@@ -8,7 +8,7 @@ aliases = ["/docs/grafana/latest/installation/configuration/"]
name = "Configuration"
identifier = "config"
parent = "admin"
-weight = 1
+weight = 300
+++
# Configuration
@@ -31,7 +31,7 @@ If you installed Grafana using the `deb` or `rpm` packages, then your configurat
### Docker
-Refer to [Configure a Grafana Docker image]({{< relref "../installation/configure-docker.md" >}}) for information about environmental variables, persistent storage, and building custom Docker images.
+Refer to [Configure a Grafana Docker image]({{< relref "configure-docker.md" >}}) for information about environmental variables, persistent storage, and building custom Docker images.
### Windows
diff --git a/docs/sources/installation/configure-docker.md b/docs/sources/administration/configure-docker.md
similarity index 97%
rename from docs/sources/installation/configure-docker.md
rename to docs/sources/administration/configure-docker.md
index e68231c87e8..7f39d01d3f5 100644
--- a/docs/sources/installation/configure-docker.md
+++ b/docs/sources/administration/configure-docker.md
@@ -3,11 +3,12 @@ title = "Configure Grafana Docker image"
description = "Guide for configuring the Grafana Docker image"
keywords = ["grafana", "configuration", "documentation", "docker"]
type = "docs"
+aliases = ["/docs/grafana/latest/installation/configure-docker/"]
[menu.docs]
name = "Configure Grafana Docker image"
-identifier = "docker"
+identifier = "configure-docker"
parent = "administration"
-weight = 650
+weight = 400
+++
# Configure a Grafana Docker image
diff --git a/docs/sources/administration/preferences.md b/docs/sources/administration/preferences.md
index f71e7cca9f4..15c5a360b98 100644
--- a/docs/sources/administration/preferences.md
+++ b/docs/sources/administration/preferences.md
@@ -4,7 +4,9 @@ description = "How to change your Grafana preferences"
keywords = ["grafana", "profile", "change", "preferences"]
type = "docs"
[menu.docs]
-weight = 100
+identifier = "preferences"
+parent = "administration"
+weight = 200
+++
# Change your Grafana preferences
diff --git a/docs/sources/installation/security.md b/docs/sources/administration/security.md
similarity index 97%
rename from docs/sources/installation/security.md
rename to docs/sources/administration/security.md
index 505f245083e..445b2eb1506 100644
--- a/docs/sources/installation/security.md
+++ b/docs/sources/administration/security.md
@@ -3,11 +3,12 @@ title = "Security"
description = "Security Docs"
keywords = ["grafana", "security", "documentation"]
type = "docs"
+aliases = ["/docs/grafana/latest/installation/security/"]
[menu.docs]
name = "Security"
identifier = "security"
parent = "admin"
-weight = 2
+weight = 500
+++
# Security
diff --git a/docs/sources/alerting/_index.md b/docs/sources/alerting/_index.md
index 481fc9ad550..ef3b80713e0 100644
--- a/docs/sources/alerting/_index.md
+++ b/docs/sources/alerting/_index.md
@@ -4,7 +4,7 @@ type = "docs"
[menu.docs]
identifier = "alerting"
parent = "features"
-weight = 6
+weight = 100
+++
# Alerts overview
diff --git a/docs/sources/alerting/create-alerts.md b/docs/sources/alerting/create-alerts.md
index 3b0ea9a09ee..9cbfcbf4f4d 100644
--- a/docs/sources/alerting/create-alerts.md
+++ b/docs/sources/alerting/create-alerts.md
@@ -5,6 +5,7 @@ keywords = ["grafana", "alerting", "guide", "rules"]
type = "docs"
[menu.docs]
name = "Create alerts"
+identifier = "create-alerts"
parent = "alerting"
weight = 200
+++
diff --git a/docs/sources/alerting/notifications.md b/docs/sources/alerting/notifications.md
index ae44390154a..2dfc3cc54f7 100644
--- a/docs/sources/alerting/notifications.md
+++ b/docs/sources/alerting/notifications.md
@@ -5,8 +5,9 @@ keywords = ["Grafana", "alerting", "guide", "notifications"]
type = "docs"
[menu.docs]
name = "Notifications"
+identifier = "alert-notification"
parent = "alerting"
-weight = 200
+weight = 100
+++
# Alert notifications
diff --git a/docs/sources/alerting/pause-an-alert-rule.md b/docs/sources/alerting/pause-an-alert-rule.md
index dd0ec672e3e..395238171ac 100644
--- a/docs/sources/alerting/pause-an-alert-rule.md
+++ b/docs/sources/alerting/pause-an-alert-rule.md
@@ -4,6 +4,7 @@ description = "Pause an existing alert rule"
keywords = ["grafana", "alerting", "guide", "rules", "view"]
type = "docs"
[menu.docs]
+identifier = "pause-alerts"
parent = "alerting"
weight = 400
+++
diff --git a/docs/sources/alerting/troubleshoot-alerts.md b/docs/sources/alerting/troubleshoot-alerts.md
index 3e2a3cfac6c..dca120e9ebf 100644
--- a/docs/sources/alerting/troubleshoot-alerts.md
+++ b/docs/sources/alerting/troubleshoot-alerts.md
@@ -5,6 +5,7 @@ keywords = ["grafana", "alerting", "guide", "rules", "troubleshoot"]
type = "docs"
[menu.docs]
name = "Troubleshoot alerts"
+identifier = "troubleshoot-alerts"
parent = "alerting"
weight = 500
+++
diff --git a/docs/sources/alerting/view-alerts.md b/docs/sources/alerting/view-alerts.md
index edc1f35d73c..1bf9a07811f 100644
--- a/docs/sources/alerting/view-alerts.md
+++ b/docs/sources/alerting/view-alerts.md
@@ -5,6 +5,7 @@ keywords = ["grafana", "alerting", "guide", "rules", "view"]
type = "docs"
[menu.docs]
name = "View alerts"
+identifier = "view-alerts"
parent = "alerting"
weight = 400
+++
diff --git a/docs/sources/auth/_index.md b/docs/sources/auth/_index.md
index 7220f69406b..ed7d23fc6be 100644
--- a/docs/sources/auth/_index.md
+++ b/docs/sources/auth/_index.md
@@ -6,7 +6,7 @@ type = "docs"
name = "Authentication"
identifier = "authentication"
parent = "admin"
-weight = 3
+weight = 30
+++
# User Authentication Overview
@@ -15,6 +15,8 @@ Grafana provides many ways to authenticate users. Some authentication integratio
Here is a table showing all supported authentication providers and the features available for them. [Team sync]({{< relref "../enterprise/team-sync.md" >}}) and [active sync]({{< relref "../enterprise/enhanced_ldap.md#active-ldap-synchronization" >}}) are only available in Grafana Enterprise.
+See also, [Grafana Authentication]({{< relref "grafana.md" >}}).
+
Provider | Support | Role mapping | Team sync
*(Enterprise only)* | Active sync
*(Enterprise only)*
-------- | :-----: | :----------: | :-------: | :---------:
[Auth Proxy]({{< relref "auth-proxy.md" >}}) | v2.1+ | - | v6.3+ | -
@@ -26,118 +28,3 @@ Provider | Support | Role mapping | Team sync
*(Enterprise only)* | Active s
[LDAP]({{< relref "ldap.md" >}}) | v2.1+ | v2.1+ | v5.3+ | v6.3+
[Okta OAuth]({{< relref "okta.md" >}}) | v7.0+ | v7.0+ | v7.0+ | -
[SAML]({{< relref "../enterprise/saml.md" >}}) (Enterprise only) | v6.3+ | v7.0+ | v7.0+ | -
-
-## Grafana Auth
-
-Grafana of course has a built in user authentication system with password authentication enabled by default. You can
-disable authentication by enabling anonymous access. You can also hide login form and only allow login through an auth
-provider (listed above). There is also options for allowing self sign up.
-
-### Login and short-lived tokens
-
-> The following applies when using Grafana's built in user authentication, LDAP (without Auth proxy) or OAuth integration.
-
-Grafana are using short-lived tokens as a mechanism for verifying authenticated users.
-These short-lived tokens are rotated each `token_rotation_interval_minutes` for an active authenticated user.
-
-An active authenticated user that gets it token rotated will extend the `login_maximum_inactive_lifetime_days` time from "now" that Grafana will remember the user.
-This means that a user can close its browser and come back before `now + login_maximum_inactive_lifetime_days` and still being authenticated.
- This is true as long as the time since user login is less than `login_maximum_lifetime_days`.
-
-#### Remote logout
-
-You can logout from other devices by removing login sessions from the bottom of your profile page. If you are
-a Grafana admin user you can also do the same for any user from the Server Admin / Edit User view.
-
-## Settings
-
-Example:
-
-```bash
-[auth]
-
-# Login cookie name
-login_cookie_name = grafana_session
-
-# The lifetime (days) an authenticated user can be inactive before being required to login at next visit. Default is 7 days.
-login_maximum_inactive_lifetime_days = 7
-
-# The maximum lifetime (days) an authenticated user can be logged in since login time before being required to login. Default is 30 days.
-login_maximum_lifetime_days = 30
-
-# How often should auth tokens be rotated for authenticated users when being active. The default is each 10 minutes.
-token_rotation_interval_minutes = 10
-
-# The maximum lifetime (seconds) an api key can be used. If it is set all the api keys should have limited lifetime that is lower than this value.
-api_key_max_seconds_to_live = -1
-```
-
-### Anonymous authentication
-
-You can make Grafana accessible without any login required by enabling anonymous access in the configuration file.
-
-Example:
-
-```bash
-[auth.anonymous]
-enabled = true
-
-# Organization name that should be used for unauthenticated users
-org_name = Main Org.
-
-# Role for unauthenticated users, other valid values are `Editor` and `Admin`
-org_role = Viewer
-```
-
-If you change your organization name in the Grafana UI this setting needs to be updated to match the new name.
-
-### Basic authentication
-
-Basic auth is enabled by default and works with the built in Grafana user password authentication system and LDAP
-authentication integration.
-
-To disable basic auth:
-
-```bash
-[auth.basic]
-enabled = false
-```
-
-### Disable login form
-
-You can hide the Grafana login form using the below configuration settings.
-
-```bash
-[auth]
-disable_login_form = true
-```
-
-### Automatic OAuth login
-
-Set to true to attempt login with OAuth automatically, skipping the login screen.
-This setting is ignored if multiple OAuth providers are configured.
-Defaults to `false`.
-
-```bash
-[auth]
-oauth_auto_login = true
-```
-
-### Hide sign-out menu
-
-Set the option detailed below to true to hide sign-out menu link. Useful if you use an auth proxy.
-
-```bash
-[auth]
-disable_signout_menu = true
-```
-
-### URL redirect after signing out
-
-URL to redirect the user to after signing out from Grafana. This can for example be used to enable signout from oauth provider.
-
-```bash
-[auth]
-signout_redirect_url =
-```
-
diff --git a/docs/sources/auth/auth-proxy.md b/docs/sources/auth/auth-proxy.md
index fa8d7df79be..15effda51b1 100755
--- a/docs/sources/auth/auth-proxy.md
+++ b/docs/sources/auth/auth-proxy.md
@@ -8,7 +8,7 @@ aliases = ["/docs/grafana/latest/tutorials/authproxy/"]
name = "Auth Proxy"
identifier = "auth-proxy"
parent = "authentication"
-weight = 2
+weight = 200
+++
# Auth Proxy Authentication
diff --git a/docs/sources/auth/azuread.md b/docs/sources/auth/azuread.md
index 44fe974329f..198a0d50671 100644
--- a/docs/sources/auth/azuread.md
+++ b/docs/sources/auth/azuread.md
@@ -7,7 +7,7 @@ type = "docs"
name = "Azure AD"
identifier = "azuread_oauth2"
parent = "authentication"
-weight = 3
+weight = 700
+++
# Azure AD OAuth2 authentication
diff --git a/docs/sources/auth/enhanced_ldap.md b/docs/sources/auth/enhanced_ldap.md
index 2d710352780..f49ed647dd5 100755
--- a/docs/sources/auth/enhanced_ldap.md
+++ b/docs/sources/auth/enhanced_ldap.md
@@ -7,7 +7,7 @@ type = "docs"
name = "Enhanced LDAP"
identifier = "enhanced-ldap"
parent = "authentication"
-weight = 3
+weight = 400
+++
# Enhanced LDAP integration
diff --git a/docs/sources/auth/generic-oauth.md b/docs/sources/auth/generic-oauth.md
index 7822d5f9884..6b2387bd8ae 100755
--- a/docs/sources/auth/generic-oauth.md
+++ b/docs/sources/auth/generic-oauth.md
@@ -7,18 +7,19 @@ type = "docs"
name = "Generic OAuth"
identifier = "generic_oauth"
parent = "authentication"
-weight = 3
+weight = 500
+++
# Generic OAuth Authentication
You can configure many different OAuth2 authentication services with Grafana using the generic OAuth2 feature. Examples:
-- [Auth0](#set-up-oauth2-with-auth0)
-- [Azure AD]({{< relref "azuread.md" >}})
-- [BitBucket](#set-up-oauth2-with-bitbucket)
-- [Centrify](#set-up-oauth2-with-centrify)
-- [Okta]({{< relref "okta.md" >}})
-- [OneLogin](#set-up-oauth2-with-onelogin)
+- [Generic OAuth Authentication](#generic-oauth-authentication)
+ - [Set up OAuth2 with Auth0](#set-up-oauth2-with-auth0)
+ - [Set up OAuth2 with Bitbucket](#set-up-oauth2-with-bitbucket)
+ - [Set up OAuth2 with Centrify](#set-up-oauth2-with-centrify)
+ - [Set up OAuth2 with OneLogin](#set-up-oauth2-with-onelogin)
+ - [JMESPath examples](#jmespath-examples)
+ - [Role mapping](#role-mapping)
This callback URL must match the full HTTP address that you use in your browser to access Grafana, but with the prefix path of `/login/generic_oauth`.
diff --git a/docs/sources/auth/github.md b/docs/sources/auth/github.md
index b021bed0c78..a5dcf2b7803 100644
--- a/docs/sources/auth/github.md
+++ b/docs/sources/auth/github.md
@@ -7,7 +7,7 @@ type = "docs"
name = "GitHub"
identifier = "github_oauth2"
parent = "authentication"
-weight = 4
+weight = 800
+++
# GitHub OAuth2 Authentication
diff --git a/docs/sources/auth/gitlab.md b/docs/sources/auth/gitlab.md
index 3e14ae5977d..81271549776 100644
--- a/docs/sources/auth/gitlab.md
+++ b/docs/sources/auth/gitlab.md
@@ -7,7 +7,7 @@ type = "docs"
name = "GitLab"
identifier = "gitlab_oauth"
parent = "authentication"
-weight = 5
+weight = 900
+++
# GitLab OAuth2 Authentication
diff --git a/docs/sources/auth/google.md b/docs/sources/auth/google.md
index 1e7d5cbaddd..5e0a55cca47 100644
--- a/docs/sources/auth/google.md
+++ b/docs/sources/auth/google.md
@@ -7,7 +7,7 @@ type = "docs"
name = "Google"
identifier = "google_oauth2"
parent = "authentication"
-weight = 3
+weight = 600
+++
# Google OAuth2 Authentication
diff --git a/docs/sources/auth/grafana.md b/docs/sources/auth/grafana.md
new file mode 100644
index 00000000000..97f187ae0dd
--- /dev/null
+++ b/docs/sources/auth/grafana.md
@@ -0,0 +1,125 @@
++++
+title = "Grafana Authentication"
+description = "Grafana OAuthentication Guide "
+keywords = ["grafana", "configuration", "documentation", "oauth"]
+type = "docs"
+[menu.docs]
+name = "GitLab"
+identifier = "grafana-oauth"
+parent = "authentication"
+weight = 100
++++
+
+## Grafana Auth
+
+Grafana of course has a built in user authentication system with password authentication enabled by default. You can
+disable authentication by enabling anonymous access. You can also hide login form and only allow login through an auth
+provider (listed above). There is also options for allowing self sign up.
+
+### Login and short-lived tokens
+
+> The following applies when using Grafana's built in user authentication, LDAP (without Auth proxy) or OAuth integration.
+
+Grafana are using short-lived tokens as a mechanism for verifying authenticated users.
+These short-lived tokens are rotated each `token_rotation_interval_minutes` for an active authenticated user.
+
+An active authenticated user that gets it token rotated will extend the `login_maximum_inactive_lifetime_days` time from "now" that Grafana will remember the user.
+This means that a user can close its browser and come back before `now + login_maximum_inactive_lifetime_days` and still being authenticated.
+ This is true as long as the time since user login is less than `login_maximum_lifetime_days`.
+
+#### Remote logout
+
+You can logout from other devices by removing login sessions from the bottom of your profile page. If you are
+a Grafana admin user you can also do the same for any user from the Server Admin / Edit User view.
+
+## Settings
+
+Example:
+
+```bash
+[auth]
+
+# Login cookie name
+login_cookie_name = grafana_session
+
+# The lifetime (days) an authenticated user can be inactive before being required to login at next visit. Default is 7 days.
+login_maximum_inactive_lifetime_days = 7
+
+# The maximum lifetime (days) an authenticated user can be logged in since login time before being required to login. Default is 30 days.
+login_maximum_lifetime_days = 30
+
+# How often should auth tokens be rotated for authenticated users when being active. The default is each 10 minutes.
+token_rotation_interval_minutes = 10
+
+# The maximum lifetime (seconds) an api key can be used. If it is set all the api keys should have limited lifetime that is lower than this value.
+api_key_max_seconds_to_live = -1
+```
+
+### Anonymous authentication
+
+You can make Grafana accessible without any login required by enabling anonymous access in the configuration file.
+
+Example:
+
+```bash
+[auth.anonymous]
+enabled = true
+
+# Organization name that should be used for unauthenticated users
+org_name = Main Org.
+
+# Role for unauthenticated users, other valid values are `Editor` and `Admin`
+org_role = Viewer
+```
+
+If you change your organization name in the Grafana UI this setting needs to be updated to match the new name.
+
+### Basic authentication
+
+Basic auth is enabled by default and works with the built in Grafana user password authentication system and LDAP
+authentication integration.
+
+To disable basic auth:
+
+```bash
+[auth.basic]
+enabled = false
+```
+
+### Disable login form
+
+You can hide the Grafana login form using the below configuration settings.
+
+```bash
+[auth]
+disable_login_form = true
+```
+
+### Automatic OAuth login
+
+Set to true to attempt login with OAuth automatically, skipping the login screen.
+This setting is ignored if multiple OAuth providers are configured.
+Defaults to `false`.
+
+```bash
+[auth]
+oauth_auto_login = true
+```
+
+### Hide sign-out menu
+
+Set the option detailed below to true to hide sign-out menu link. Useful if you use an auth proxy.
+
+```bash
+[auth]
+disable_signout_menu = true
+```
+
+### URL redirect after signing out
+
+URL to redirect the user to after signing out from Grafana. This can for example be used to enable signout from oauth provider.
+
+```bash
+[auth]
+signout_redirect_url =
+```
diff --git a/docs/sources/auth/ldap.md b/docs/sources/auth/ldap.md
index 298894dd949..e6020745d6c 100644
--- a/docs/sources/auth/ldap.md
+++ b/docs/sources/auth/ldap.md
@@ -8,7 +8,7 @@ aliases = ["/docs/grafana/latest/installation/ldap/"]
name = "LDAP"
identifier = "ldap"
parent = "authentication"
-weight = 2
+weight = 300
+++
# LDAP Authentication
diff --git a/docs/sources/auth/okta.md b/docs/sources/auth/okta.md
index 1f200e5d809..d015ce92071 100644
--- a/docs/sources/auth/okta.md
+++ b/docs/sources/auth/okta.md
@@ -7,7 +7,7 @@ type = "docs"
name = "Okta"
identifier = "okta_oauth2"
parent = "authentication"
-weight = 3
+weight = 1000
+++
# Okta OAuth2 authentication
diff --git a/docs/sources/auth/saml.md b/docs/sources/auth/saml.md
index 32fc89f87cf..f5df611b0f0 100644
--- a/docs/sources/auth/saml.md
+++ b/docs/sources/auth/saml.md
@@ -7,7 +7,7 @@ type = "docs"
[menu.docs]
name = "SAML"
parent = "authentication"
-weight = 5
+weight = 1100
+++
# SAML authentication
diff --git a/docs/sources/auth/team-sync.md b/docs/sources/auth/team-sync.md
index 703516069a5..d8d88666b1b 100644
--- a/docs/sources/auth/team-sync.md
+++ b/docs/sources/auth/team-sync.md
@@ -7,7 +7,7 @@ type = "docs"
[menu.docs]
name = "Team Sync"
parent = "authentication"
-weight = 5
+weight = 1200
+++
# Team sync
diff --git a/docs/sources/best-practices/_index.md b/docs/sources/best-practices/_index.md
index 34d7a06456e..246e7c3233b 100644
--- a/docs/sources/best-practices/_index.md
+++ b/docs/sources/best-practices/_index.md
@@ -3,9 +3,16 @@ title = "Best practices"
description = "Best practices for working with Grafana"
type = "docs"
[menu.docs]
-weight = 200
+identifier = "best-practices"
+weight = 20
+++
# Best practices
-This section provides information about best practices for intermediate Grafana administrators and users.
+This section provides information about best practices for intermediate Grafana administrators and users. Click on each of the links before for more information.
+
+- [Best practices for creating dashboards]({{< relref "best-practices-for-creating-dashboards" >}})
+- [Best practices for managing dashboards]({{< relref "best-practices-for-managing-dashboards" >}})
+- [Common observability strategies]({{< relref "common-observability-strategies" >}})
+- [Dashboard management maturity model]({{< relref "dashboard-management-maturity-levels" >}})
+
\ No newline at end of file
diff --git a/docs/sources/best-practices/best-practices-for-creating-dashboards.md b/docs/sources/best-practices/best-practices-for-creating-dashboards.md
index da560d329b9..12afd234cc7 100644
--- a/docs/sources/best-practices/best-practices-for-creating-dashboards.md
+++ b/docs/sources/best-practices/best-practices-for-creating-dashboards.md
@@ -3,7 +3,9 @@ title = "Best practices for creating dashboards"
description = "Best practices for creating dashboards in Grafana"
type = "docs"
[menu.docs]
-weight = 200
+identifier = "best-practices-for-creating-dashboards"
+parent = "best-practices"
+weight = 100
+++
# Best practices for creating dashboards
@@ -51,5 +53,5 @@ Once you have a strategy or design guidelines, write them down to help maintain
- Add documentation to dashboards and panels.
- To add documentation to a dashboard, add a [Text panel visualization]({{< relref "../panels/visualizations/text-panel.md" >}}) to the dashboard. Record things like the purpose of the dashboard, useful resource links, and any instructions users might need to interact with the dashboard. Check out this [Wikimedia example](https://grafana.wikimedia.org/d/000000066/resourceloader?orgId=1).
- To add documentation to a panel, [edit the panel settings]({{< relref "../panels/add-a-panel.md#edit-panel-settings" >}}) and add a description. Any text you add will appear if you hover your cursor over the small `i` in the top left corner of the panel.
-- Reuse your dashboards and enforce consistency by using [templates and variables]({{< relref "../variables/templates-and-variables.md" >}}).
+- Reuse your dashboards and enforce consistency by using [templates and variables]({{< relref "../variables/_index.md" >}}).
- Be careful with stacking graph data. The visualizations can be misleading, and hide important data. We recommend turning it off in most cases.
diff --git a/docs/sources/best-practices/best-practices-for-managing-dashboards.md b/docs/sources/best-practices/best-practices-for-managing-dashboards.md
index 8e3d5b7ddf6..448eaf7513c 100644
--- a/docs/sources/best-practices/best-practices-for-managing-dashboards.md
+++ b/docs/sources/best-practices/best-practices-for-managing-dashboards.md
@@ -3,6 +3,8 @@ title = "Best practices for managing dashboards"
description = "Best practices for managing dashboards in Grafana"
type = "docs"
[menu.docs]
+identifier = "best-practices-for-managing-dashboards"
+parent = "best-practices"
weight = 200
+++
diff --git a/docs/sources/best-practices/common-observability-strategies.md b/docs/sources/best-practices/common-observability-strategies.md
index a3035865a53..f5ffd641e86 100644
--- a/docs/sources/best-practices/common-observability-strategies.md
+++ b/docs/sources/best-practices/common-observability-strategies.md
@@ -5,7 +5,9 @@ keywords = ["grafana", "intro", "guide", "concepts", "methods"]
aliases = ["/docs/grafana/latest/getting-started/strategies/"]
type = "docs"
[menu.docs]
-weight = 500
+identifier = "common-observability-strategies"
+parent = "best-practices"
+weight = 300
+++
# Common observability strategies
diff --git a/docs/sources/best-practices/dashboard-management-maturity-levels.md b/docs/sources/best-practices/dashboard-management-maturity-levels.md
index 39c50b89640..51c56cb0fd0 100644
--- a/docs/sources/best-practices/dashboard-management-maturity-levels.md
+++ b/docs/sources/best-practices/dashboard-management-maturity-levels.md
@@ -3,7 +3,9 @@ title = "Dashboard management maturity model"
description = "Explanation of dashboard management maturity model"
type = "docs"
[menu.docs]
-weight = 200
+identifier = "best-management-for-maturity-model"
+parent = "best-practices"
+weight = 400
+++
# Dashboard management maturity model
diff --git a/docs/sources/dashboards/_index.md b/docs/sources/dashboards/_index.md
index 83bad923220..d4c821e8681 100644
--- a/docs/sources/dashboards/_index.md
+++ b/docs/sources/dashboards/_index.md
@@ -41,7 +41,7 @@ The image above shows you the top header for a Dashboard.
The time period for the dashboard can be controlled by the [Time range controls]({{< relref "time-range-controls.md" >}}) in the upper right of the dashboard.
-Dashboards can use [templating]({{< relref "../variables/templates-and-variables.md" >}}) to make them more dynamic and interactive.
+Dashboards can use [templating]({{< relref "../variables/_index.md" >}}) to make them more dynamic and interactive.
Dashboards can use [annotations]({{< relref "annotations.md" >}}) to display event data across panels. This can help correlate the time series data in the panel with other events.
@@ -61,4 +61,4 @@ We use a unit abstraction so that Grafana looks great on all screen sizes.
Collapse a row by clicking on the row title. If you save a dashboard with a row collapsed, then it saves in that state and does not load those graphs until you expand the row.
-Use the [repeating rows]({{< relref "../variables/templates-and-variables.md#repeating-rows" >}}) functionality to dynamically create or remove entire rows, which can be filled with panels, based on the template variables selected.
+Use the [repeating rows]({{< relref "../variables/_index.md#repeating-rows" >}}) functionality to dynamically create or remove entire rows, which can be filled with panels, based on the template variables selected.
diff --git a/docs/sources/developers/plugins/add-support-for-variables.md b/docs/sources/developers/plugins/add-support-for-variables.md
index a59edd5c490..086eca4b0d9 100644
--- a/docs/sources/developers/plugins/add-support-for-variables.md
+++ b/docs/sources/developers/plugins/add-support-for-variables.md
@@ -5,7 +5,7 @@ type = "docs"
# Add support for variables in plugins
-Variables are placeholders for values, and can be used to create things like templated queries and dashboard or panel links. For more information on variables, refer to [Templates and variables]({{< relref "../../variables/templates-and-variables.md" >}}).
+Variables are placeholders for values, and can be used to create things like templated queries and dashboard or panel links. For more information on variables, refer to [Templates and variables]({{< relref "../../variables/_index.md" >}}).
This guide explains how to leverage template variables in your panel plugins and data source plugins.
diff --git a/docs/sources/explore/index.md b/docs/sources/explore/index.md
index 753a7d21aec..5db46b7b0fc 100644
--- a/docs/sources/explore/index.md
+++ b/docs/sources/explore/index.md
@@ -6,7 +6,7 @@ aliases = ["/docs/grafana/latest/features/explore/"]
[menu.docs]
name = "Explore"
identifier = "explore"
-weight = 900
+weight = 90
+++
# Explore
diff --git a/docs/sources/features/datasources/azuremonitor.md b/docs/sources/features/datasources/azuremonitor.md
index 5486b1a0c02..c8d244e6dc8 100755
--- a/docs/sources/features/datasources/azuremonitor.md
+++ b/docs/sources/features/datasources/azuremonitor.md
@@ -154,7 +154,7 @@ Examples:
{{< docs-imagebox img="/img/docs/v60/azuremonitor-service-variables.png" class="docs-image--no-shadow" caption="Nested Azure Monitor Template Variables" >}}
-Check out the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different
+Check out the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different
types of template variables.
### List of supported Azure Monitor metrics
@@ -208,7 +208,7 @@ Examples:
Use the one of the following queries in the `Query` field in the Variable edit view.
-Check out the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different
+Check out the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different
types of template variables.
| Name | Description |
@@ -317,13 +317,13 @@ To make writing queries easier there are several Grafana macros that can be used
There are also some Grafana variables that can be used in Azure Log Analytics queries:
-- `$__interval` - Grafana calculates the minimum time grain that can be used to group by time in queries. More details on how it works [here]({{< relref "../../variables/templates-and-variables.md#interval-variables" >}}). It returns a time grain like `5m` or `1h` that can be used in the bin function. E.g. `summarize count() by bin(TimeGenerated, $__interval)`
+- `$__interval` - Grafana calculates the minimum time grain that can be used to group by time in queries. More details on how it works [here]({{< relref "../../variables/variable-types/_index.md#interval-variables" >}}). It returns a time grain like `5m` or `1h` that can be used in the bin function. E.g. `summarize count() by bin(TimeGenerated, $__interval)`
### Templating with variables for Azure Log Analytics
Any Log Analytics query that returns a list of values can be used in the `Query` field in the Variable edit view. There is also one Grafana function for Log Analytics that returns a list of workspaces.
-Refer to the [Variables]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different
+Refer to the [Variables]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different
types of template variables.
| Name | Description |
diff --git a/docs/sources/features/datasources/cloudmonitoring.md b/docs/sources/features/datasources/cloudmonitoring.md
index 781b724a298..41a21ed75d0 100644
--- a/docs/sources/features/datasources/cloudmonitoring.md
+++ b/docs/sources/features/datasources/cloudmonitoring.md
@@ -232,7 +232,7 @@ Instead of hard-coding things like server, application and sensor name in your m
Variables are shown as dropdown select boxes at the top of the dashboard. These dropdowns make it easy to change the data
being displayed in your dashboard.
-Check out the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different
+Check out the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different
types of template variables.
### Query Variable
diff --git a/docs/sources/features/datasources/cloudwatch.md b/docs/sources/features/datasources/cloudwatch.md
index 31879b406f3..850d739968e 100755
--- a/docs/sources/features/datasources/cloudwatch.md
+++ b/docs/sources/features/datasources/cloudwatch.md
@@ -203,7 +203,7 @@ To the right of the query input field is a CloudWatch Logs Insights link that op
### Using template variables
As with several other data sources, the CloudWatch data source supports the use of template variables in queries.
-See the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different types of template variables.
+See the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different types of template variables.
### Deep linking from Grafana panels to the CloudWatch console
@@ -236,7 +236,7 @@ To import the pre-configured dashboards, go to the configuration page of your Cl
Instead of hard-coding things like server, application and sensor name in your metric queries you can use variables in their place. Variables are shown as dropdown select boxes at the top of the dashboard. These dropdowns make it easy to change the data being displayed in your dashboard.
-See the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different types of template variables.
+See the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different types of template variables.
### Query variable
diff --git a/docs/sources/features/datasources/data-sources.md b/docs/sources/features/datasources/data-sources.md
index 70d6aa793cc..1d2068ddf51 100644
--- a/docs/sources/features/datasources/data-sources.md
+++ b/docs/sources/features/datasources/data-sources.md
@@ -17,6 +17,6 @@ Each data source has a specific query editor that is customized for the features
Use the query editor to build one or more queries in your time series database. The panel instantly updates, allowing you to effectively explore your data in real time and build a perfect query for that particular panel.
-You can use [template variables]({{< relref "../../variables/templates-and-variables.md" >}}) in the query editor within the queries themselves. This provides a powerful way to explore data dynamically based on the templating variables selected on the dashboard.
+You can use [template variables]({{< relref "../../variables/_index.md" >}}) in the query editor within the queries themselves. This provides a powerful way to explore data dynamically based on the templating variables selected on the dashboard.
Grafana allows you to reference queries in the query editor by the row that they’re on. If you add a second query to graph, you can reference the first query by typing in #A. This provides an easy and convenient way to build compound queries.
\ No newline at end of file
diff --git a/docs/sources/features/datasources/elasticsearch.md b/docs/sources/features/datasources/elasticsearch.md
index aa8b992ae3b..a4bc65b6910 100644
--- a/docs/sources/features/datasources/elasticsearch.md
+++ b/docs/sources/features/datasources/elasticsearch.md
@@ -129,7 +129,7 @@ Instead of hard-coding things like server, application and sensor name in your m
Variables are shown as dropdown select boxes at the top of the dashboard. These dropdowns make it easy to change the data
being displayed in your dashboard.
-Check out the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different
+Check out the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different
types of template variables.
### Query variable
diff --git a/docs/sources/features/datasources/graphite.md b/docs/sources/features/datasources/graphite.md
index 8efa9e81bd3..0d66f01b1fa 100755
--- a/docs/sources/features/datasources/graphite.md
+++ b/docs/sources/features/datasources/graphite.md
@@ -125,7 +125,7 @@ Instead of hard-coding things like server, application, and sensor name in your
Variables are shown as drop-down select boxes at the top of the dashboard. These dropdowns make it easy to change the data
being displayed in your dashboard.
-For more information, refer to [Variables and templates]({{< relref "../../variables/templates-and-variables.md" >}}).
+For more information, refer to [Variables and templates]({{< relref "../../variables/_index.md" >}}).
Graphite 1.1 introduced tags and Grafana added support for Graphite queries with tags in version 5.0. To create a variable using tag values, use the Grafana functions `tags` and `tag_values`.
diff --git a/docs/sources/features/datasources/influxdb.md b/docs/sources/features/datasources/influxdb.md
index 71410de8fbf..4ca1692aa09 100755
--- a/docs/sources/features/datasources/influxdb.md
+++ b/docs/sources/features/datasources/influxdb.md
@@ -203,7 +203,7 @@ Instead of hard-coding things like server, application and sensor name in your m
Variables are shown as dropdown select boxes at the top of the dashboard. These dropdowns make it easy to change the data
being displayed in your dashboard.
-Check out the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different
+Check out the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different
types of template variables.
### Query variable
diff --git a/docs/sources/features/datasources/loki.md b/docs/sources/features/datasources/loki.md
index 05b640cdabd..08110b865e5 100755
--- a/docs/sources/features/datasources/loki.md
+++ b/docs/sources/features/datasources/loki.md
@@ -149,7 +149,7 @@ log message you're interested in.
Instead of hard-coding things like server, application and sensor name in your metric queries, you can use variables in their place. Variables are shown as drop-down select boxes at the top of the dashboard. These drop-down boxes make it easy to change the data being displayed in your dashboard.
-Check out the [Templating]({{< relref "../../variables/templates-and-variables" >}}) documentation for an introduction to the templating feature and the different types of template variables.
+Check out the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different types of template variables.
## Annotations
diff --git a/docs/sources/features/datasources/mssql.md b/docs/sources/features/datasources/mssql.md
index 341542096eb..5c2877ce48a 100644
--- a/docs/sources/features/datasources/mssql.md
+++ b/docs/sources/features/datasources/mssql.md
@@ -39,7 +39,7 @@ Name | Description
### Min time interval
-A lower limit for the [$__interval]({{< relref "../../variables/templates-and-variables/#the-interval-variable" >}}) and [$__interval_ms]({{< relref "../../variables/templates-and-variables/#the-interval-ms-variable" >}}) variables.
+A lower limit for the [$__interval]({{< relref "../../variables/variable-types/_index.md#the-interval-variable" >}}) and [$__interval_ms]({{< relref "../../variables/variable-types/_index.md#the-interval-ms-variable" >}}) variables.
Recommended to be set to write frequency, for example `1m` if your data is written every minute.
This option can also be overridden/configured in a dashboard panel under data source options. It's important to note that this value **needs** to be formatted as a
number followed by a valid time identifier, e.g. `1m` (1 minute) or `30s` (30 seconds). The following time identifiers are supported:
@@ -300,7 +300,7 @@ Any series lacking a value in a 3 minute window will have a value of zero which
Instead of hard-coding things like server, application and sensor name in your metric queries you can use variables in their place. Variables are shown as dropdown select boxes at the top of the dashboard. These dropdowns make it easy to change the data being displayed in your dashboard.
-Check out the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different types of template variables.
+Check out the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different types of template variables.
### Query Variable
@@ -370,7 +370,7 @@ Grafana automatically creates a quoted, comma-separated string for multi-value v
`${servers:csv}`
-Read more about variable formatting options in the [Variables]({{< relref "../../variables/templates-and-variables.md#advanced-formatting-options" >}}) documentation.
+Read more about variable formatting options in the [Variables]({{< relref "../../variables/variable-types/_index.md#advanced-formatting-options" >}}) documentation.
## Annotations
diff --git a/docs/sources/features/datasources/mysql.md b/docs/sources/features/datasources/mysql.md
index 4b5c892bc36..ddaa0d0a0b0 100755
--- a/docs/sources/features/datasources/mysql.md
+++ b/docs/sources/features/datasources/mysql.md
@@ -41,7 +41,7 @@ Name | Description
### Min time interval
-A lower limit for the [$__interval]({{< relref "../../variables/templates-and-variables/#the-interval-variable" >}}) and [$__interval_ms]({{< relref "../../variables/templates-and-variables/#the-interval-ms-variable" >}}) variables.
+A lower limit for the [$__interval]({{< relref "../../variables/variable-types/_index.md#the-interval-variable" >}}) and [$__interval_ms]({{< relref "../../variables/variable-types/_index.md#the-interval-ms-variable" >}}) variables.
Recommended to be set to write frequency, for example `1m` if your data is written every minute.
This option can also be overridden/configured in a dashboard panel under data source options. It's important to note that this value **needs** to be formatted as a
number followed by a valid time identifier, e.g. `1m` (1 minute) or `30s` (30 seconds). The following time identifiers are supported:
@@ -238,7 +238,7 @@ This feature is currently available in the nightly builds and will be included i
Instead of hard-coding things like server, application and sensor name in your metric queries you can use variables in their place. Variables are shown as dropdown select boxes at the top of the dashboard. These dropdowns make it easy to change the data being displayed in your dashboard.
-Check out the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different types of template variables.
+Check out the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different types of template variables.
### Query Variable
@@ -331,7 +331,7 @@ Grafana automatically creates a quoted, comma-separated string for multi-value v
`${servers:csv}`
-Read more about variable formatting options in the [Variables]({{< relref "../../variables/templates-and-variables.md#advanced-formatting-options" >}}) documentation.
+Read more about variable formatting options in the [Variables]({{< relref "../../variables/_index.md#advanced-formatting-options" >}}) documentation.
## Annotations
diff --git a/docs/sources/features/datasources/opentsdb.md b/docs/sources/features/datasources/opentsdb.md
index b5cf29f5f63..3f255a61715 100644
--- a/docs/sources/features/datasources/opentsdb.md
+++ b/docs/sources/features/datasources/opentsdb.md
@@ -53,7 +53,7 @@ Instead of hard-coding things like server, application and sensor name in your m
Variables are shown as dropdown select boxes at the top of the dashboard. These dropdowns make it easy to change the data
being displayed in your dashboard.
-Check out the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different
+Check out the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different
types of template variables.
### Query variable
diff --git a/docs/sources/features/datasources/postgres.md b/docs/sources/features/datasources/postgres.md
index cbcc8906011..02895ca36c2 100755
--- a/docs/sources/features/datasources/postgres.md
+++ b/docs/sources/features/datasources/postgres.md
@@ -39,7 +39,7 @@ Name | Description
### Min time interval
-A lower limit for the [$__interval]({{< relref "../../variables/templates-and-variables/#the-interval-variable" >}}) and [$__interval_ms]({{< relref "../../variables/templates-and-variables/#the-interval-ms-variable" >}}) variables.
+A lower limit for the [$__interval]({{< relref "../../variables/variable-types/_index.md#the-interval-variable" >}}) and [$__interval_ms]({{< relref "../../variables/variable-types/_index.md#the-interval-ms-variable" >}}) variables.
Recommended to be set to write frequency, for example `1m` if your data is written every minute.
This option can also be overridden/configured in a dashboard panel under data source options. It's important to note that this value **needs** to be formatted as a
number followed by a valid time identifier, e.g. `1m` (1 minute) or `30s` (30 seconds). The following time identifiers are supported:
@@ -240,7 +240,7 @@ ORDER BY time
Instead of hard-coding things like server, application and sensor name in your metric queries you can use variables in their place. Variables are shown as dropdown select boxes at the top of the dashboard. These dropdowns make it easy to change the data being displayed in your dashboard.
-Refer to [Templates and variables]({{< relref "../../variables/templates-and-variables.md" >}}) for an introduction to the templating feature and the different types of template variables.
+Refer to [Templates and variables]({{< relref "../../variables/_index.md" >}}) for an introduction to the templating feature and the different types of template variables.
### Query variable
@@ -331,7 +331,7 @@ Grafana automatically creates a quoted, comma-separated string for multi-value v
`${servers:csv}`
-Read more about variable formatting options in the [Variables]({{< relref "../../variables/templates-and-variables.md#advanced-formatting-options" >}}) documentation.
+Read more about variable formatting options in the [Variables]({{< relref "../../variables/_index.md#advanced-formatting-options" >}}) documentation.
## Annotations
diff --git a/docs/sources/features/datasources/prometheus.md b/docs/sources/features/datasources/prometheus.md
index 0b0188f34e1..3aeb22edcbd 100644
--- a/docs/sources/features/datasources/prometheus.md
+++ b/docs/sources/features/datasources/prometheus.md
@@ -80,7 +80,7 @@ Instead of hard-coding things like server, application and sensor name in your m
Variables are shown as dropdown select boxes at the top of the dashboard. These dropdowns make it easy to change the data
being displayed in your dashboard.
-Check out the [Templating]({{< relref "../../variables/templates-and-variables.md" >}}) documentation for an introduction to the templating feature and the different
+Check out the [Templating]({{< relref "../../variables/_index.md" >}}) documentation for an introduction to the templating feature and the different
types of template variables.
### Query variable
diff --git a/docs/sources/getting-started/what-is-grafana.md b/docs/sources/getting-started/what-is-grafana.md
index e94c605c9e8..11e44de14e2 100644
--- a/docs/sources/getting-started/what-is-grafana.md
+++ b/docs/sources/getting-started/what-is-grafana.md
@@ -45,7 +45,7 @@ Refer to [Annotations]({{< relref "../dashboards/annotations.md" >}}) for more i
## Dashboard variables
-[Template variables]({{< relref "../variables/templates-and-variables.md" >}}) allow you to create dashboards that can be reused for lots of different use cases. Values aren't hard-coded with these templates, so for instance, if you have a production server and a test server, you can use the same dashboard for both.
+[Template variables]({{< relref "../variables/_index.md" >}}) allow you to create dashboards that can be reused for lots of different use cases. Values aren't hard-coded with these templates, so for instance, if you have a production server and a test server, you can use the same dashboard for both.
Templating allows you to drill down into your data, say, from all data to North America data, down to Texas data, and beyond. You can also share these dashboards across teams within your organization—or if you create a great dashboard template for a popular data source, you can contribute it to the whole community to customize and use.
diff --git a/docs/sources/guides/whats-new-in-v7-1.md b/docs/sources/guides/whats-new-in-v7-1.md
index 2681776909d..95d26b4d777 100644
--- a/docs/sources/guides/whats-new-in-v7-1.md
+++ b/docs/sources/guides/whats-new-in-v7-1.md
@@ -58,7 +58,7 @@ The new table panel introduced in 7.0 was missing a few features that the old ta
## Ad hoc filtering in the new table panel
-[Ad hoc filtering]({{}}), a way to automatically add filters to queries without having to define template variables is now supported in the new Table panel.
+[Ad hoc filtering]({{}}), a way to automatically add filters to queries without having to define template variables is now supported in the new Table panel.
## Stat panel text mode
diff --git a/docs/sources/installation/_index.md b/docs/sources/installation/_index.md
index 27c63f7ec3e..4ab2e809dc9 100644
--- a/docs/sources/installation/_index.md
+++ b/docs/sources/installation/_index.md
@@ -7,10 +7,12 @@ aliases = ["/docs/grafana/latest/installation/installation/", "/docs/grafana/v2.
[menu.docs]
name = "Installation"
identifier = "installation"
-weight = 200
+weight = 30
+++
-## Install Grafana
+# Install Grafana
+
+This section discusses the hardware and software requirements as well as the process of installing Grafana on different operating systems. This section has the following topics:
- [Requirements]({{< relref "requirements" >}})
- [Install on Debian or Ubuntu]({{< relref "debian" >}})
@@ -18,4 +20,3 @@ weight = 200
- [Install on macOS]({{< relref "mac" >}})
- [Install on Windows]({{< relref "windows" >}})
- [Run Docker image]({{< relref "docker" >}})
-- [Nightly Builds](https://grafana.com/grafana/download)
diff --git a/docs/sources/installation/docker.md b/docs/sources/installation/docker.md
index 5e4310ceaf5..f23ebd51a75 100755
--- a/docs/sources/installation/docker.md
+++ b/docs/sources/installation/docker.md
@@ -221,7 +221,7 @@ Refer to the [Getting Started]({{< relref "../getting-started/getting-started/"
## Configure Docker image
-Refer to [Configure a Grafana Docker image]({{< relref "configure-docker.md" >}}) page for details on options for customizing your environment, logging, database, and so on.
+Refer to [Configure a Grafana Docker image]({{< relref "../administration/configure-docker.md" >}}) page for details on options for customizing your environment, logging, database, and so on.
## Configure Grafana
diff --git a/docs/sources/installation/upgrading.md b/docs/sources/installation/upgrading.md
index ee08f785898..85fff406839 100755
--- a/docs/sources/installation/upgrading.md
+++ b/docs/sources/installation/upgrading.md
@@ -7,7 +7,7 @@ type = "docs"
name = "Upgrade Grafana"
identifier = "upgrading"
parent = "installation"
-weight = 800
+weight = 700
+++
# Upgrade Grafana
diff --git a/docs/sources/linking/data-link-variables.md b/docs/sources/linking/data-link-variables.md
index b658067e25f..199f7d74b72 100644
--- a/docs/sources/linking/data-link-variables.md
+++ b/docs/sources/linking/data-link-variables.md
@@ -14,7 +14,7 @@ To see a list of available variables, type `$` in the data link **URL** field to
> **Note:** These variables changed in 6.4 so if you have an older version of Grafana, then use the version picker to select docs for an older version of Grafana.
-You can also use template variables in your data links URLs, refer to [Templates and variables]({{< relref "../variables/templates-and-variables.md" >}}) for more information on template variables.
+You can also use template variables in your data links URLs, refer to [Templates and variables]({{< relref "../variables/_index.md" >}}) for more information on template variables.
## Time range panel variables
diff --git a/docs/sources/manage-users/_index.md b/docs/sources/manage-users/_index.md
index d9fe7bcfb8d..a4b4208aea2 100644
--- a/docs/sources/manage-users/_index.md
+++ b/docs/sources/manage-users/_index.md
@@ -4,7 +4,7 @@ type = "docs"
[menu.docs]
name = "Manage users"
identifier = "manage-users"
-weight = 3
+weight = 40
+++
# Manage users
diff --git a/docs/sources/manage-users/add-or-remove-user-from-team.md b/docs/sources/manage-users/add-or-remove-user-from-team.md
index f99dc48e4dd..42d4114fbef 100644
--- a/docs/sources/manage-users/add-or-remove-user-from-team.md
+++ b/docs/sources/manage-users/add-or-remove-user-from-team.md
@@ -6,7 +6,7 @@ type = "docs"
[menu.docs]
identifier = "add-or-remove-user-from-team"
parent = "manage-users"
-weight = 10
+weight = 300
+++
# Add or remove a user from a team
diff --git a/docs/sources/manage-users/add-or-remove-user.md b/docs/sources/manage-users/add-or-remove-user.md
index fad9cdac2de..7c865c4604c 100644
--- a/docs/sources/manage-users/add-or-remove-user.md
+++ b/docs/sources/manage-users/add-or-remove-user.md
@@ -5,7 +5,7 @@ type = "docs"
[menu.docs]
identifier = "add-or-remove-user"
parent = "manage-users"
-weight = 10
+weight = 100
+++
# Add or remove a user
diff --git a/docs/sources/manage-users/create-or-remove-team.md b/docs/sources/manage-users/create-or-remove-team.md
index dcd2cd9aac1..b5dd8df6456 100644
--- a/docs/sources/manage-users/create-or-remove-team.md
+++ b/docs/sources/manage-users/create-or-remove-team.md
@@ -6,7 +6,7 @@ type = "docs"
[menu.docs]
identifier = "create-or-remove-team"
parent = "manage-users"
-weight = 10
+weight = 400
+++
# Create or remove a team
diff --git a/docs/sources/manage-users/enable-or-disable-user.md b/docs/sources/manage-users/enable-or-disable-user.md
index 2c1b1fd9e11..92c17cc9d7d 100644
--- a/docs/sources/manage-users/enable-or-disable-user.md
+++ b/docs/sources/manage-users/enable-or-disable-user.md
@@ -5,7 +5,7 @@ type = "docs"
[menu.docs]
identifier = "enable-or-disable-user"
parent = "manage-users"
-weight = 10
+weight = 200
+++
# Enable or disable a user
diff --git a/docs/sources/menu.yaml b/docs/sources/menu.yaml
index 2731e5263de..0716e5b95ef 100644
--- a/docs/sources/menu.yaml
+++ b/docs/sources/menu.yaml
@@ -29,6 +29,8 @@
- name: Installation
link: /installation/
children:
+ - name: Installation
+ link: /installation/installation/
- name: Requirements
link: /installation/requirements/
- name: Install on Ubuntu/Debian
@@ -46,6 +48,8 @@
- name: Administration
link: /administration/
children:
+ - name: Administration Tasks
+ link: /administration/admin/
- name: Change password
link: /administration/change-your-password/
- name: Change preferences
@@ -53,14 +57,16 @@
- name: Configuration
link: /administration/configuration/
- name: Configure Docker image
- link: /installation/configure-docker/
+ link: /administration/configure-docker/
- name: Security
- link: /installation/security/
+ link: /administration/security/
- name: Authentication
link: /auth/
children:
- link: /auth/overview/
name: Overview
+ - link: /auth/grafana/
+ name: Grafana Authentication
- link: /auth/auth-proxy/
name: Auth Proxy
- link: /auth/ldap/
@@ -291,8 +297,8 @@
- name: Templates and variables
link: /variables/
children:
- - link: /variables/templates-and-variables/
- name: Overview
+ - link: /variables/syntax/
+ name: Variables syntax
- link: /variables/variable-examples/
name: Variable examples
- name: Variable types
diff --git a/docs/sources/panels/add-a-panel.md b/docs/sources/panels/add-a-panel.md
index db121d399dd..a15ca014887 100644
--- a/docs/sources/panels/add-a-panel.md
+++ b/docs/sources/panels/add-a-panel.md
@@ -25,7 +25,7 @@ Grafana creates an empty graph panel with your default data source selected.
## 2. Edit panel settings
-While not required, we recommend that you add a helpful title and description to your panel. You can use [variables you have defined]({{< relref "../variables/templates-and-variables.md" >}}) in either field, but not [global variables]({{< relref "../variables/variable-types/global-variables.md" >}}).
+While not required, we recommend that you add a helpful title and description to your panel. You can use [variables you have defined]({{< relref "../variables/_index.md" >}}) in either field, but not [global variables]({{< relref "../variables/variable-types/global-variables.md" >}}).

@@ -62,4 +62,4 @@ Our Grafana Fundamentals tutorial is a great place to start, or you can learn mo
- [Configure]({{< relref "field-options/_index.md" >}}) how your results are displayed in the visualization.
- If you made a graph panel, set up an [alert]({{< relref "../alerting/alerts-overview.md" >}}).
-- Create [templates and variables]({{< relref "../variables/templates-and-variables.md" >}}).
+- Create [templates and variables]({{< relref "../variables/_index.md" >}}).
diff --git a/docs/sources/panels/field-options/standard-field-options.md b/docs/sources/panels/field-options/standard-field-options.md
index 4fdc3a9859b..7b657e38815 100644
--- a/docs/sources/panels/field-options/standard-field-options.md
+++ b/docs/sources/panels/field-options/standard-field-options.md
@@ -31,7 +31,7 @@ For more information and instructions, refer to [Data links]({{< relref "../../l
## Display name
-Lets you set the display title of all fields. You can use [variables]({{< relref "../../variables/templates-and-variables.md" >}}) in the field title.
+Lets you set the display title of all fields. You can use [variables]({{< relref "../../variables/_index.md" >}}) in the field title.
When multiple stats, fields, or series are shown, this field controls the title in each stat. You can use expressions like `${__field.name}` to use only the series name or the field name in title.
diff --git a/docs/sources/variables/_index.md b/docs/sources/variables/_index.md
index bdbe9fe4744..0f11f88de3b 100644
--- a/docs/sources/variables/_index.md
+++ b/docs/sources/variables/_index.md
@@ -3,7 +3,7 @@ title = "Templates and variables"
type = "docs"
[menu.docs]
identifier = "variables"
-weight = 500
+weight = 130
+++
# Templates and variables
@@ -13,4 +13,36 @@ the value, using the dropdown at the top of the dashboard, your panel's metric q
Variables allow you to create more interactive and dynamic dashboards. Instead of hard-coding things like server, application,
and sensor names in your metric queries, you can use variables in their place. Variables are displayed as dropdown lists at the top of
-the dashboard. These dropdowns make it easy to change the data being displayed in your dashboard.
\ No newline at end of file
+the dashboard. These dropdowns make it easy to change the data being displayed in your dashboard.
+{{< docs-imagebox img="/img/docs/v50/variables_dashboard.png" >}}
+
+These can be especially useful for administrators who want to allow Grafana viewers to quickly adjust visualizations but do not want to give them full editing permissions. Grafana Viewers can use variables.
+
+Variables and templates also allow you to single-source dashboards. If you have multiple identical data sources or servers, you can make one dashboard and use variables to change what you are viewing. This simplifies maintenance and upkeep enormously.
+
+## Templates
+
+A _template_ is any query that contains a variable.
+
+For example, if you were administering a dashboard to monitor several servers, you _could_ make a dashboard for each server. Or you could create one dashboard and use panels with template queries like this one:
+
+```
+wmi_system_threads{instance=~"$server"}
+```
+
+Variable values are always synced to the URL using the syntax `var-=value`.
+
+## Examples of templates and variables
+
+To see variable and template examples, go to any of the dashboards listed in [Variable examples]({{< relref "variable-examples.md" >}}).
+
+Variables are listed in drop-down lists across the top of the screen. Select different variables to see how the visualizations change.
+
+To see variable settings, navigate to **Dashboard Settings > Variables**. Click a variable in the list to see its settings.
+
+Variables can be used in titles, descriptions, text panels, and queries. Queries with text that starts with `$` are templates. Not all panels will have template queries.
+
+## Variable best practices
+
+- Variable drop-down lists are displayed in the order they are listed in the variable list in Dashboard settings.
+- Put the variables that you will change often at the top, so they will be shown first (far left on the dashboard).
diff --git a/docs/sources/variables/advanced-variable-format-options.md b/docs/sources/variables/advanced-variable-format-options.md
index 8c8d14f7d0e..218121cd58a 100644
--- a/docs/sources/variables/advanced-variable-format-options.md
+++ b/docs/sources/variables/advanced-variable-format-options.md
@@ -3,9 +3,9 @@ title = "Advanced variable format options"
keywords = ["grafana", "templating", "documentation", "guide", "template", "variable"]
type = "docs"
[menu.docs]
-name = "advanced-variable-format-options"
+identifier = "advanced-variables-formats"
parent = "variables"
-weight = 300
+weight = 600
+++
# Advanced variable format options
diff --git a/docs/sources/variables/filter-variables-with-regex.md b/docs/sources/variables/filter-variables-with-regex.md
index e1636fd4bca..4b7c992d8ab 100644
--- a/docs/sources/variables/filter-variables-with-regex.md
+++ b/docs/sources/variables/filter-variables-with-regex.md
@@ -1,3 +1,14 @@
++++
+title = "Filter variables with regex"
+keywords = ["grafana", "templating", "documentation", "guide", "template", "variable"]
+type = "docs"
+[menu.docs]
+identifier = "filter-variables-regex"
+parent = "variables"
+weight = 700
++++
+
+
# Filter variables with regex
Using the Regex Query option, you filter the list of options returned by the variable query or modify the options returned.
diff --git a/docs/sources/variables/formatting-multi-value-variables.md b/docs/sources/variables/formatting-multi-value-variables.md
index 633ddec0374..c1cce99948d 100644
--- a/docs/sources/variables/formatting-multi-value-variables.md
+++ b/docs/sources/variables/formatting-multi-value-variables.md
@@ -2,7 +2,9 @@
title = "Formatting multi-value variables"
type = "docs"
[menu.docs]
-weight = 500
+identifier = "format-multi-value-variables"
+parent = "variables"
+weight = 600
+++
# Formatting multi-value variables
diff --git a/docs/sources/variables/repeat-panels-or-rows.md b/docs/sources/variables/repeat-panels-or-rows.md
index 588d3372763..a222dbe1f0e 100644
--- a/docs/sources/variables/repeat-panels-or-rows.md
+++ b/docs/sources/variables/repeat-panels-or-rows.md
@@ -3,9 +3,9 @@ title = "Variables"
keywords = ["grafana", "templating", "documentation", "guide", "template", "variable", "repeat"]
type = "docs"
[menu.docs]
-name = "Repeat panels or rows"
+identifier = "repeat-panel-rows"
parent = "variables"
-weight = 400
+weight = 800
+++
# Repeat panels or rows
diff --git a/docs/sources/variables/syntax.md b/docs/sources/variables/syntax.md
new file mode 100644
index 00000000000..96ea16d54b5
--- /dev/null
+++ b/docs/sources/variables/syntax.md
@@ -0,0 +1,28 @@
++++
+title = "Variables syntax and types"
+keywords = ["grafana", "templating", "documentation", "guide", "template", "variable"]
+type = "docs"
+aliases = ["/docs/grafana/latest/reference/templating"]
+[menu.docs]
+identifier = "variables-syntax-types"
+parent = "variables"
+weight = 100
++++
+
+# Variable syntax
+
+Panel titles and metric queries can refer to variables using two different syntaxes:
+
+- `$varname`
+ This syntax is easy to read, but it does not allow you to use a variable in the middle of a word.
+ **Example:** apps.frontend.$server.requests.count
+- `${var_name}` Use this syntax when you want to interpolate a variable in the middle of an expression.
+- `${var_name:}` This format gives you more control over how Grafana interpolates values. Refer to [Advanced variable format options]({{< relref "advanced-variable-format-options.md" >}}) for more detail on all the formatting types.
+- `[[varname]]` Do not use. Deprecated old syntax, will be removed in a future release.
+
+Before queries are sent to your data source the query is _interpolated_, meaning the variable is replaced with its current value. During
+interpolation, the variable value might be _escaped_ in order to conform to the syntax of the query language and where it is used.
+For example, a variable used in a regex expression in an InfluxDB or Prometheus query will be regex escaped. Read the data source specific
+documentation topic for details on value escaping during interpolation.
+
+For advanced syntax to override data source default formatting, refer to [Advanced variable format options]({{< relref "advanced-variable-format-options.md" >}}).
diff --git a/docs/sources/variables/templates-and-variables.md b/docs/sources/variables/templates-and-variables.md
deleted file mode 100644
index c42101aaad6..00000000000
--- a/docs/sources/variables/templates-and-variables.md
+++ /dev/null
@@ -1,86 +0,0 @@
-+++
-title = "Variables"
-keywords = ["grafana", "templating", "documentation", "guide", "template", "variable"]
-type = "docs"
-aliases = ["/docs/grafana/latest/reference/templating"]
-[menu.docs]
-name = "Templates and variables"
-parent = "variables"
-weight = 100
-+++
-
-# Templates and variables
-
-A variable is a placeholder for a value. You can use variables in metric queries and in panel titles. So when you change
-the value, using the drop-down list at the top of the dashboard, your panel's metric queries will change to reflect the new value.
-
-Variables allow you to create more interactive and dynamic dashboards. Instead of hard-coding things like server, application,
-and sensor names in your metric queries, you can use variables in their place. Variables are displayed as drop-down lists at the top of
-the dashboard. These drop-downs make it easy to change the data being displayed in your dashboard.
-
-{{< docs-imagebox img="/img/docs/v50/variables_dashboard.png" >}}
-
-These can be especially useful for administrators who want to allow Grafana viewers to quickly adjust visualizations but do not want to give them full editing permissions. Grafana Viewers can use variables.
-
-Variables and templates also allow you to single-source dashboards. If you have multiple identical data sources or servers, you can make one dashboard and use variables to change what you are viewing. This simplifies maintenance and upkeep enormously.
-
-## Templates
-
-A _template_ is any query that contains a variable.
-
-For example, if you were administering a dashboard to monitor several servers, you _could_ make a dashboard for each server. Or you could create one dashboard and use panels with template queries like this one:
-
-```
-wmi_system_threads{instance=~"$server"}
-```
-
-Variable values are always synced to the URL using the syntax `var-=value`.
-
-## Examples of templates and variables
-
-To see variable and template examples, go to any of the dashboards listed in [Variable examples]({{< relref "variable-examples.md" >}}).
-
-Variables are listed in drop-down lists across the top of the screen. Select different variables to see how the visualizations change.
-
-To see variable settings, navigate to **Dashboard Settings > Variables**. Click a variable in the list to see its settings.
-
-Variables can be used in titles, descriptions, text panels, and queries. Queries with text that starts with `$` are templates. Not all panels will have template queries.
-
-## Variable syntax
-
-Panel titles and metric queries can refer to variables using two different syntaxes:
-
-- `$varname`
- This syntax is easy to read, but it does not allow you to use a variable in the middle of a word.
- **Example:** apps.frontend.$server.requests.count
-- `${var_name}` Use this syntax when you want to interpolate a variable in the middle of an expression.
-- `${var_name:}` This format gives you more control over how Grafana interpolates values. Refer to [Advanced variable format options]({{< relref "advanced-variable-format-options.md" >}}) for more detail on all the formatting types.
-- `[[varname]]` Do not use. Deprecated old syntax, will be removed in a future release.
-
-Before queries are sent to your data source the query is _interpolated_, meaning the variable is replaced with its current value. During
-interpolation, the variable value might be _escaped_ in order to conform to the syntax of the query language and where it is used.
-For example, a variable used in a regex expression in an InfluxDB or Prometheus query will be regex escaped. Read the data source specific
-documentation topic for details on value escaping during interpolation.
-
-For advanced syntax to override data source default formatting, refer to [Advanced variable format options]({{< relref "advanced-variable-format-options.md" >}}).
-
-## Variable types
-
-Grafana uses the following types of variables.
-
-| Variable type | Description |
-|:---|:---|
-| Query | Query-generated list of values such as metric names, server names, sensor IDs, data centers, and so on. [Add a query variable]({{< relref "variable-types/add-query-variable.md" >}}). |
-| Custom | Define the variable options manually using a comma-separated list. [Add a custom variable]({{< relref "variable-types/add-custom-variable.md" >}}). |
-| Text box | Display a free text input field with an optional default value. [Add a text box variable]({{< relref "variable-types/add-text-box-variable.md" >}}). |
-| Constant | Define a hidden constant. [Add a constant variable]({{< relref "variable-types/add-constant-variable.md" >}}). |
-| Data source | Quickly change the data source for an entire dashboard. [Add a data source variable]({{< relref "variable-types/add-data-source-variable.md" >}}). |
-| Interval | Interval variables represent time spans. [Add an interval variable]({{< relref "variable-types/add-interval-variable.md" >}}). |
-| Ad hoc filters | Key/value filters that are automatically added to all metric queries for a data source (InfluxDB, Prometheus, and Elasticsearch only). [Add ad hoc filters]({{< relref "variable-types/add-ad-hoc-filters.md" >}}). |
-| Global variables | Built-in variables that can be used in expressions in the query editor. Refer to [Global variables]({{< relref "variable-types/global-variables" >}}). |
-| Chained variables | Variable queries can contain other variables. Refer to [Chained variables]({{< relref "variable-types/chained-variables.md" >}}). |
-
-## Variable best practices
-
-- Variable drop-down lists are displayed in the order they are listed in the variable list in Dashboard settings.
-- Put the variables that you will change often at the top, so they will be shown first (far left on the dashboard).
diff --git a/docs/sources/variables/variable-examples.md b/docs/sources/variables/variable-examples.md
index cbf4587c331..95a3cb0e4e7 100644
--- a/docs/sources/variables/variable-examples.md
+++ b/docs/sources/variables/variable-examples.md
@@ -3,6 +3,8 @@ title = "Variable examples"
keywords = ["grafana", "templating", "documentation", "guide", "template", "variable"]
type = "docs"
[menu.docs]
+identifier = "variables-examples"
+parent = "variables"
weight = 200
+++
diff --git a/docs/sources/variables/variable-selection-options.md b/docs/sources/variables/variable-selection-options.md
index 4e3766b647c..a90a108251b 100644
--- a/docs/sources/variables/variable-selection-options.md
+++ b/docs/sources/variables/variable-selection-options.md
@@ -2,7 +2,9 @@
title = "Enter variable Selection Options"
type = "docs"
[menu.docs]
-weight = 800
+identifier = "variables-selection-options"
+parent = "variables"
+weight = 400
+++
# Enter variable selection options
@@ -25,4 +27,4 @@ Enter regex, globs, or lucene syntax in the **Custom all value** field to define
By default the `All` value includes all options in combined expression. This can become very long and can have performance problems. Sometimes it can be better to specify a custom all value, like a wildcard regex.
-In order to have custom regex, globs, or lucene syntax in the **Custom all value** option, it is never escaped so you will have to think about what is a valid value for your data source.
\ No newline at end of file
+In order to have custom regex, globs, or lucene syntax in the **Custom all value** option, it is never escaped so you will have to think about what is a valid value for your data source.
diff --git a/docs/sources/variables/variable-types/_index.md b/docs/sources/variables/variable-types/_index.md
index 0eaf747d553..ba250a378ce 100644
--- a/docs/sources/variables/variable-types/_index.md
+++ b/docs/sources/variables/variable-types/_index.md
@@ -2,7 +2,8 @@
title = "Variables types"
type = "docs"
[menu.docs]
-weight = 300
+identifier = "variable-types"
+weight = 140
+++
# Variables types
diff --git a/docs/sources/variables/variable-types/add-ad-hoc-filters.md b/docs/sources/variables/variable-types/add-ad-hoc-filters.md
index 35a45e45717..dfe1a09d81e 100644
--- a/docs/sources/variables/variable-types/add-ad-hoc-filters.md
+++ b/docs/sources/variables/variable-types/add-ad-hoc-filters.md
@@ -3,7 +3,9 @@ title = "Add ad hoc filters"
type = "docs"
aliases = ["/docs/grafana/latest/variables/add-ad-hoc-filters.md"]
[menu.docs]
-weight = 500
+identifier = "add-adhoc-filters"
+parent = "variable-types"
+weight = 700
+++
# Add ad hoc filters
diff --git a/docs/sources/variables/variable-types/add-constant-variable.md b/docs/sources/variables/variable-types/add-constant-variable.md
index 2a637d7b2be..cc0555fde9b 100644
--- a/docs/sources/variables/variable-types/add-constant-variable.md
+++ b/docs/sources/variables/variable-types/add-constant-variable.md
@@ -3,7 +3,9 @@ title = "Add a constant variable"
type = "docs"
aliases = ["/docs/grafana/latest/variables/add-constant-variable.md"]
[menu.docs]
-weight = 500
+identifier = "add-constant-variable"
+parent = "variable-types"
+weight = 400
+++
# Add a constant variable
diff --git a/docs/sources/variables/variable-types/add-custom-variable.md b/docs/sources/variables/variable-types/add-custom-variable.md
index c06902d3d7b..cd9d17e695a 100644
--- a/docs/sources/variables/variable-types/add-custom-variable.md
+++ b/docs/sources/variables/variable-types/add-custom-variable.md
@@ -3,7 +3,9 @@ title = "Add a custom variable"
type = "docs"
aliases = ["/docs/grafana/latest/variables/add-custom-variable.md"]
[menu.docs]
-weight = 500
+identifier = "add-custom-variable"
+parent = "variable-types"
+weight = 200
+++
# Add a custom variable
diff --git a/docs/sources/variables/variable-types/add-data-source-variable.md b/docs/sources/variables/variable-types/add-data-source-variable.md
index a208a9908ee..59945d6893f 100644
--- a/docs/sources/variables/variable-types/add-data-source-variable.md
+++ b/docs/sources/variables/variable-types/add-data-source-variable.md
@@ -3,6 +3,8 @@ title = "Add a data source variable"
type = "docs"
aliases = ["/docs/grafana/latest/variables/add-data-source-variable.md"]
[menu.docs]
+identifier = "add-datasource-variable"
+parent = "variable-types"
weight = 500
+++
diff --git a/docs/sources/variables/variable-types/add-interval-variable.md b/docs/sources/variables/variable-types/add-interval-variable.md
index 3209d97c201..5d12f66657b 100644
--- a/docs/sources/variables/variable-types/add-interval-variable.md
+++ b/docs/sources/variables/variable-types/add-interval-variable.md
@@ -3,7 +3,9 @@ title = "Add an interval variable"
type = "docs"
aliases = ["/docs/grafana/latest/variables/add-interval-variable.md"]
[menu.docs]
-weight = 500
+identifier = "add-interval-variable"
+parent = "variable-types"
+weight = 600
+++
# Add an interval variable
diff --git a/docs/sources/variables/variable-types/add-query-variable.md b/docs/sources/variables/variable-types/add-query-variable.md
index 287c546ea67..5448ead1149 100644
--- a/docs/sources/variables/variable-types/add-query-variable.md
+++ b/docs/sources/variables/variable-types/add-query-variable.md
@@ -3,7 +3,9 @@ title = "Add a query variable"
type = "docs"
aliases = ["/docs/grafana/latest/variables/add-query-variable.md"]
[menu.docs]
-weight = 500
+identifier = "add-query-variable"
+parent = "variable-types"
+weight = 100
+++
# Add a query variable
diff --git a/docs/sources/variables/variable-types/add-text-box-variable.md b/docs/sources/variables/variable-types/add-text-box-variable.md
index ad1f7d30a79..daaa7c176a0 100644
--- a/docs/sources/variables/variable-types/add-text-box-variable.md
+++ b/docs/sources/variables/variable-types/add-text-box-variable.md
@@ -3,7 +3,9 @@ title = "Add a text box variable"
type = "docs"
aliases = ["/docs/grafana/latest/variables/add-text-box-variable.md"]
[menu.docs]
-weight = 500
+identifier = "add-text-box-variable"
+parent = "variable-types"
+weight = 300
+++
# Add a text box variable
diff --git a/docs/sources/variables/variable-types/chained-variables.md b/docs/sources/variables/variable-types/chained-variables.md
index c797d2a71c8..19b6dea042a 100644
--- a/docs/sources/variables/variable-types/chained-variables.md
+++ b/docs/sources/variables/variable-types/chained-variables.md
@@ -4,7 +4,9 @@ keywords = ["grafana", "templating", "variable", "nested", "chained", "linked"]
type = "docs"
aliases = ["/docs/grafana/latest/variables/chained-variables.md"]
[menu.docs]
-weight = 600
+identifier = "chained-variable"
+parent = "variable-types"
+weight = 800
+++
# Chained variables
diff --git a/docs/sources/variables/variable-types/global-variables.md b/docs/sources/variables/variable-types/global-variables.md
index d9847e06cb6..e94bdec82e5 100644
--- a/docs/sources/variables/variable-types/global-variables.md
+++ b/docs/sources/variables/variable-types/global-variables.md
@@ -4,9 +4,9 @@ keywords = ["grafana", "templating", "documentation", "guide", "template", "vari
type = "docs"
aliases = ["/docs/grafana/latest/variables/global-variables.md"]
[menu.docs]
-name = "global-variables"
-parent = "variables"
-weight = 200
+identifier = "global-variable"
+parent = "variable-types"
+weight = 900
+++
# Global variables
diff --git a/docs/sources/variables/variable-value-tags.md b/docs/sources/variables/variable-value-tags.md
index 987843d5154..a564d5565bd 100644
--- a/docs/sources/variables/variable-value-tags.md
+++ b/docs/sources/variables/variable-value-tags.md
@@ -2,7 +2,9 @@
title = "Enter Value tags"
type = "docs"
[menu.docs]
-weight = 800
+identifier = "variables-value-groups"
+parent = "variables"
+weight = 500
+++
# Enter variable value groups/tags (experimental feature)