Commit abee02db by Robby Milo Committed by GitHub

Docs: updates for file-based menu (#28500)

* initial

* cleanup

* remove bad aliases

* cleanup, fix links

* add docs-file-based-command

* update docs

* update readme

* fix broken links

* fix spelling

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
parent a7e092f2
......@@ -5,10 +5,10 @@ IMAGE = grafana/grafana-docs-dev:latest
docs:
docker pull $(IMAGE)
docker run -v $(shell pwd)/sources:/hugo/content/docs/grafana/latest -p 3002:3002 --rm -it $(IMAGE)
docs-no-pull:
docker run -v $(shell pwd)/sources:/hugo/content/docs/grafana/latest -p 3002:3002 --rm -it $(IMAGE)
docs-test:
docker pull $(IMAGE)
docker run -v $(shell pwd)/sources:/hugo/content/docs/grafana/latest --rm -it $(IMAGE) /bin/bash -c 'make prod'
docker run -v $(shell pwd)/sources:/hugo/content/docs/grafana/latest --rm -it $(IMAGE) /bin/bash -c 'make prod'
\ No newline at end of file
......@@ -24,7 +24,7 @@ Use the Hugo shortcode [relref](https://gohugo.io/content-management/cross-refer
### Edit the side menu
Edit [sources/menu.yaml](sources/menu.yaml) to make changes to the sidebar. Stop and rerun the `make docs` command for changes to take effect.
The side menu is automatically build from the file structure. Use the [weight](https://gohugo.io/templates/lists/#by-weight) front matter parameter to order pages.
### Add images
......
......@@ -2,7 +2,6 @@
title = "Grafana documentation"
description = "Guides, Installation and Feature Documentation"
keywords = ["grafana", "installation", "documentation"]
type = "docs"
aliases = ["/docs/grafana/v1.1", "/docs/grafana/latest/guides/reference/admin", "/docs/grafana/v3.1"]
+++
......
+++
title = "Administration"
description = "Administration"
type = "docs"
[menu.docs]
name = "Administration"
identifier = "admin"
weight = 20
weight = 40
+++
# Administration
......
......@@ -2,17 +2,12 @@
title = "Change the default home dashboard"
description = "How to replace the default home dashboard"
keywords = ["grafana", "configuration", "documentation", "home"]
type = "docs"
[menu.docs]
name = "Home Dashboard"
identifier = "change-home-dashboard"
parent = "admin"
weight = 100
+++
# Change the default home dashboard
You can change the default dashboard on the organization, team and user level. The home dashboard you set for the whole organization is the one all users will see by default. The team dashboard applies to all users assigned to the team in Grafana. The team dashboard overrides the organization dashboard settings. Personal dashboard settings override team dashboard settings.
You can change the default dashboard on the organization, team and user level. The home dashboard you set for the whole organization is the one all users will see by default. The team dashboard applies to all users assigned to the team in Grafana. The team dashboard overrides the organization dashboard settings. Personal dashboard settings override team dashboard settings.
## Set the home dashboard for your organization
......@@ -34,7 +29,7 @@ You can provide your own JSON file to change the home dashboard. No user will be
1. In the **Export** tab, click on **Save to file**.
#### Use a JSON file as the home dashboard
1. Save your JSON file somewhere that Grafana can access it, for example, in the Grafana `data` folder of Grafana.
1. Save your JSON file somewhere that Grafana can access it, for example, in the Grafana `data` folder of Grafana.
1. Update your configuration file to set the path to the JSON file. Read how to update this file in the [configuration]({{< relref "./configuration.md">}}) documentation.
```ini
[dashboards]
......@@ -45,14 +40,14 @@ default_home_dashboard_path = data/main-dashboard.json
## Set home dashboard for your team
1. Navigate to the dashboard you want to set as the home dashboard.
1. Star this dashboard by clicking on the star next to the dashboard title.
1. Star this dashboard by clicking on the star next to the dashboard title.
1. On the left menu, hover your cursor over the **Configuration** (gear) icon and then click **Teams**.
1. Click on the team you want to change the home dashboard for and then navigate to the **Settings** tab.
1. In the **Home Dashboard** field, select the dashboard you want to use for your home dashboard. Options include all starred dashboards.
1. In the **Home Dashboard** field, select the dashboard you want to use for your home dashboard. Options include all starred dashboards.
## Set your personal home dashboard
1. Navigate to the dashboard you want to set as the home dashboard.
1. Star this dashboard by clicking on the star next to the dashboard title.
1. Star this dashboard by clicking on the star next to the dashboard title.
1. On the left menu, hover your cursor over your avatar and then click **Preferences**.
1. In the **Home Dashboard** field, select the dashboard you want to use for your home dashboard. Options include all starred dashboards.
1. In the **Home Dashboard** field, select the dashboard you want to use for your home dashboard. Options include all starred dashboards.
......@@ -2,10 +2,6 @@
title = "Change your password"
description = "How to change your Grafana password"
keywords = ["grafana", "password", "change", "preferences"]
type = "docs"
[menu.docs]
identifier = "change-your-password"
parent = "administration"
weight = 100
+++
......
......@@ -2,9 +2,6 @@
title = "Grafana CLI"
description = "Guide to using grafana-cli"
keywords = ["grafana", "cli", "grafana-cli", "command line interface"]
type = "docs"
[menu.docs]
parent = "admin"
weight = 8
+++
......
......@@ -2,12 +2,7 @@
title = "Configuration"
description = "Configuration documentation"
keywords = ["grafana", "configuration", "documentation"]
type = "docs"
aliases = ["/docs/grafana/latest/installation/configuration/"]
[menu.docs]
name = "Configuration"
identifier = "config"
parent = "admin"
weight = 300
+++
......
......@@ -2,12 +2,7 @@
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 = "configure-docker"
parent = "administration"
weight = 400
+++
......
......@@ -2,9 +2,6 @@
title = "Image rendering"
description = ""
keywords = ["grafana", "image", "rendering", "plugin"]
type = "docs"
[menu.docs]
parent = "features"
weight = 8
+++
......
......@@ -2,9 +2,6 @@
title = "Jaeger instrumentation"
description = "Jaeger traces emitted and propagation by Grafana"
keywords = ["grafana", "jaeger", "tracing"]
type = "docs"
[menu.docs]
parent = "admin"
weight = 9
+++
......
......@@ -2,9 +2,6 @@
title = "Internal Grafana metrics"
description = "Internal metrics exposed by Grafana"
keywords = ["grafana", "metrics", "internal metrics"]
type = "docs"
[menu.docs]
parent = "admin"
weight = 8
+++
......@@ -29,7 +26,7 @@ When enabled, Grafana exposes a number of metrics, including:
These instructions assume you have already added Prometheus as a data source in Grafana.
1. Enable Prometheus to scrape metrics from Grafana. In your configuration file (`grafana.ini` or `custom.ini` depending on your operating system) remove the semicolon to enable the following configuration options:
1. Enable Prometheus to scrape metrics from Grafana. In your configuration file (`grafana.ini` or `custom.ini` depending on your operating system) remove the semicolon to enable the following configuration options:
```
# Metrics available at HTTP API Url /metrics
......@@ -57,7 +54,7 @@ These instructions assume you have already added Prometheus as a data source in
scrape_interval: 15s
scrape_timeout: 5s
static_configs:
- targets: ['localhost:3000']
```
......@@ -70,7 +67,7 @@ These instructions assume you have already added Prometheus as a data source in
These instructions assume you have already added Graphite as a data source in Grafana.
1. Enable sending metrics to Graphite. In your configuration file (`grafana.ini` or `custom.ini` depending on your operating system) remove the semicolon to enable the following configuration options:
1. Enable sending metrics to Graphite. In your configuration file (`grafana.ini` or `custom.ini` depending on your operating system) remove the semicolon to enable the following configuration options:
```
# Metrics available at HTTP API Url /metrics
......
......@@ -2,10 +2,6 @@
title = "Change your preferences"
description = "How to change your Grafana preferences"
keywords = ["grafana", "profile", "change", "preferences"]
type = "docs"
[menu.docs]
identifier = "preferences"
parent = "administration"
weight = 200
+++
......
......@@ -2,10 +2,7 @@
title = "Provisioning"
description = ""
keywords = ["grafana", "provisioning"]
type = "docs"
aliases = ["/docs/grafana/latest/installation/provisioning"]
[menu.docs]
parent = "admin"
weight = 8
+++
......
......@@ -2,12 +2,7 @@
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 = 500
+++
......@@ -23,7 +18,7 @@ You can configure Grafana to only allow certain IP addresses or hostnames to be
## Firewall rules
Configure a firewall to restrict Grafana from making network requests to sensitive internal web services.
Configure a firewall to restrict Grafana from making network requests to sensitive internal web services.
There are many firewall tools available, refer to the documentation for your specific security tool. For example, Linux users can use [iptables](https://en.wikipedia.org/wiki/Iptables).
......
+++
title = "Set up Grafana for high availability"
type = "docs"
keywords = ["grafana", "tutorials", "HA", "high availability"]
aliases = ["/docs/grafana/latest/tutorials/ha_setup/"]
[menu.docs]
weight = 1200
+++
......
......@@ -2,11 +2,6 @@
title = "View server settings"
description = "How to view server settings in the Grafana UI"
keywords = ["grafana", "configuration", "server", "settings"]
type = "docs"
[menu.docs]
name = "Configuration"
identifier = "config"
parent = "admin"
weight = 350
+++
......
+++
title = "View server stats"
type = "docs"
keywords = ["grafana", "server", "statistics"]
[menu.docs]
weight = 1150
+++
......
+++
title = "Alerting"
type = "docs"
[menu.docs]
identifier = "alerting"
parent = "features"
weight = 100
+++
......
+++
title = "Alerts overview"
type = "docs"
[menu.docs]
identifier = "alerting"
parent = "Alerting"
aliases = ["/docs/grafana/latest/alerting/rules/", "/docs/grafana/latest/alerting/metrics/", "/docs/grafana/latest/alerting/rules/#query-condition-example", "/docs/grafana/latest/alerting/rules/#for", "/docs/grafana/latest/alerting/rules/#rule-config"]
aliases = ["/docs/grafana/latest/alerting/rules/", "/docs/grafana/latest/alerting/metrics/"]
weight = 100
+++
......
......@@ -2,11 +2,6 @@
title = "Create alerts"
description = "Configure alert rules"
keywords = ["grafana", "alerting", "guide", "rules"]
type = "docs"
[menu.docs]
name = "Create alerts"
identifier = "create-alerts"
parent = "alerting"
weight = 200
+++
......
......@@ -2,11 +2,6 @@
title = "Alert notifications"
description = "Alerting notifications guide"
keywords = ["Grafana", "alerting", "guide", "notifications"]
type = "docs"
[menu.docs]
name = "Notifications"
identifier = "alert-notification"
parent = "alerting"
weight = 100
+++
......
......@@ -2,10 +2,6 @@
title = "Pause alert rule"
description = "Pause an existing alert rule"
keywords = ["grafana", "alerting", "guide", "rules", "view"]
type = "docs"
[menu.docs]
identifier = "pause-alerts"
parent = "alerting"
weight = 400
+++
......
......@@ -2,11 +2,6 @@
title = "Troubleshoot alerts"
description = "Troubleshoot alert rules"
keywords = ["grafana", "alerting", "guide", "rules", "troubleshoot"]
type = "docs"
[menu.docs]
name = "Troubleshoot alerts"
identifier = "troubleshoot-alerts"
parent = "alerting"
weight = 500
+++
......
......@@ -2,11 +2,6 @@
title = "View alerts"
description = "View existing alert rules"
keywords = ["grafana", "alerting", "guide", "rules", "view"]
type = "docs"
[menu.docs]
name = "View alerts"
identifier = "view-alerts"
parent = "alerting"
weight = 400
+++
......
+++
title = "Authentication"
description = "Authentication"
type = "docs"
[menu.docs]
name = "Authentication"
identifier = "authentication"
parent = "admin"
weight = 30
+++
......@@ -18,13 +13,13 @@ Here is a table showing all supported authentication providers and the features
See also, [Grafana Authentication]({{< relref "grafana.md" >}}).
Provider | Support | Role mapping | Team sync<br> *(Enterprise only)* | Active sync<br> *(Enterprise only)*
-------- | :-----: | :----------: | :-------: | :---------:
[Auth Proxy]({{< relref "auth-proxy.md" >}}) | v2.1+ | - | v6.3+ | -
[Azure AD OAuth]({{< relref "azuread.md" >}}) | v6.7+ | v6.7+ | v6.7+ | -
[Generic OAuth]({{< relref "generic-oauth.md" >}}) | v4.0+ | v6.5+ | - | -
-------- | :-----: | :----------: | :-------: | :---------:
[Auth Proxy]({{< relref "auth-proxy.md" >}}) | v2.1+ | - | v6.3+ | -
[Azure AD OAuth]({{< relref "azuread.md" >}}) | v6.7+ | v6.7+ | v6.7+ | -
[Generic OAuth]({{< relref "generic-oauth.md" >}}) | v4.0+ | v6.5+ | - | -
[GitHub OAuth]({{< relref "github.md" >}}) | v2.0+ | - | v6.3+ | -
[GitLab OAuth]({{< relref "gitlab.md" >}}) | v5.3+ | - | v6.4+ | -
[Google OAuth]({{< relref "google.md" >}}) | v2.0+ | - | - | -
[Google OAuth]({{< relref "google.md" >}}) | v2.0+ | - | - | -
[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+ | -
[Okta OAuth]({{< relref "okta.md" >}}) | v7.0+ | v7.0+ | v7.0+ | -
[SAML]({{< relref "../enterprise/saml.md" >}}) (Enterprise only) | v6.3+ | v7.0+ | v7.0+ | -
......@@ -2,12 +2,7 @@
title = "Auth Proxy"
description = "Grafana Auth Proxy Guide "
keywords = ["grafana", "configuration", "documentation", "proxy"]
type = "docs"
aliases = ["/docs/grafana/latest/tutorials/authproxy/"]
[menu.docs]
name = "Auth Proxy"
identifier = "auth-proxy"
parent = "authentication"
weight = 200
+++
......
......@@ -2,11 +2,6 @@
title = "Azure AD OAuth2 authentication"
description = "Grafana Azure AD OAuth Guide "
keywords = ["grafana", "configuration", "documentation", "oauth"]
type = "docs"
[menu.docs]
name = "Azure AD"
identifier = "azuread_oauth2"
parent = "authentication"
weight = 700
+++
......@@ -24,7 +19,7 @@ To enable the Azure AD OAuth2 you must register your application with Azure AD.
1. Under **Manage** in the side menu, click **App Registrations** and then **New Registration**. Provide a fitting name.
1. Under **Redirect URI**, select **Web** as the app type.
1. Under **Redirect URI**, select **Web** as the app type.
1. Add the redirect URL `https://<grafana domain>/login/azuread`, then click **Register**.
......@@ -88,7 +83,7 @@ To enable the Azure AD OAuth2 you must register your application with Azure AD.
1. Go to **Azure Active Directory** and then to **Enterprise Applications**. Search for your application and click on it.
1. Click on **Users and Groups** and add Users/Groups to the Grafana roles by using **Add User**.
1. Click on **Users and Groups** and add Users/Groups to the Grafana roles by using **Add User**.
## Enable Azure AD OAuth in Grafana
......
......@@ -2,11 +2,6 @@
title = "Enhanced LDAP Integration"
description = "Grafana Enhanced LDAP Integration Guide "
keywords = ["grafana", "configuration", "documentation", "ldap", "active directory", "enterprise"]
type = "docs"
[menu.docs]
name = "Enhanced LDAP"
identifier = "enhanced-ldap"
parent = "authentication"
weight = 400
+++
......
......@@ -2,11 +2,6 @@
title = "OAuth authentication"
description = "Grafana OAuthentication Guide "
keywords = ["grafana", "configuration", "documentation", "oauth"]
type = "docs"
[menu.docs]
name = "Generic OAuth"
identifier = "generic_oauth"
parent = "authentication"
weight = 500
+++
......@@ -47,8 +42,8 @@ tls_client_ca =
Set `api_url` to the resource that returns [OpenID UserInfo](https://connect2id.com/products/server/docs/api/userinfo) compatible information.
You can also specify the SSL/TLS configuration used by the client.
- Set `tls_client_cert` to the path of the certificate.
You can also specify the SSL/TLS configuration used by the client.
- Set `tls_client_cert` to the path of the certificate.
- Set `tls_client_key` to the path containing the key.
- Set `tls_client_ca` to the path containing a trusted certificate authority list.
......@@ -75,7 +70,7 @@ See [JMESPath examples](#jmespath-examples) for more information.
Customize user login using `login_attribute_path` configuration option. Order of operations is as follows:
1. Grafana evaluates the `login_attribute_path` JMESPath expression against the ID token.
1. Grafana evaluates the `login_attribute_path` JMESPath expression against the ID token.
1. If Grafana finds no value, then Grafana evaluates expression against the JSON data obtained from UserInfo endpoint. The UserInfo endpoint URL is specified in the `api_url` configuration option.
You can customize the attribute name used to extract the ID token from the returned OAuth token with the `id_token_attribute_name` option.
......
......@@ -2,11 +2,6 @@
title = "GitHub OAuth2 Authentication"
description = "Grafana OAuthentication Guide "
keywords = ["grafana", "configuration", "documentation", "oauth"]
type = "docs"
[menu.docs]
name = "GitHub"
identifier = "github_oauth2"
parent = "authentication"
weight = 800
+++
......@@ -46,7 +41,7 @@ team_ids =
allowed_organizations =
```
You may have to set the `root_url` option of `[server]` for the callback URL to be
You may have to set the `root_url` option of `[server]` for the callback URL to be
correct. For example in case you are serving Grafana behind a proxy.
Restart the Grafana back-end. You should now see a GitHub login button
......@@ -104,7 +99,7 @@ allowed_organizations = github google
> Only available in Grafana Enterprise v6.3+
With Team Sync you can map your GitHub org teams to teams in Grafana so that your users will automatically be added to
the correct teams.
the correct teams.
Your GitHub teams can be referenced in two ways:
......
......@@ -2,11 +2,6 @@
title = "GitLab OAuth2 Authentication"
description = "Grafana OAuthentication Guide "
keywords = ["grafana", "configuration", "documentation", "oauth"]
type = "docs"
[menu.docs]
name = "GitLab"
identifier = "gitlab_oauth"
parent = "authentication"
weight = 900
+++
......@@ -58,7 +53,7 @@ api_url = https://gitlab.com/api/v4
allowed_groups =
```
You may have to set the `root_url` option of `[server]` for the callback URL to be
You may have to set the `root_url` option of `[server]` for the callback URL to be
correct. For example in case you are serving Grafana behind a proxy.
Restart the Grafana backend for your changes to take effect.
......@@ -121,7 +116,7 @@ allowed_groups = example, foo/bar
> Only available in Grafana Enterprise v6.4+
With Team Sync you can map your GitLab groups to teams in Grafana so that your users will automatically be added to
the correct teams.
the correct teams.
Your GitLab groups can be referenced in the same way as `allowed_groups`, like `example` or `foo/bar`.
......
......@@ -2,11 +2,6 @@
title = "Google OAuth2 Authentication"
description = "Grafana OAuthentication Guide "
keywords = ["grafana", "configuration", "documentation", "oauth"]
type = "docs"
[menu.docs]
name = "Google"
identifier = "google_oauth2"
parent = "authentication"
weight = 600
+++
......@@ -45,7 +40,7 @@ allowed_domains = mycompany.com mycompany.org
allow_sign_up = true
```
You may have to set the `root_url` option of `[server]` for the callback URL to be
You may have to set the `root_url` option of `[server]` for the callback URL to be
correct. For example in case you are serving Grafana behind a proxy.
Restart the Grafana back-end. You should now see a Google login button
......
......@@ -2,11 +2,6 @@
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
+++
......
......@@ -2,12 +2,7 @@
title = "LDAP Authentication"
description = "Grafana LDAP Authentication Guide "
keywords = ["grafana", "configuration", "documentation", "ldap", "active directory"]
type = "docs"
aliases = ["/docs/grafana/latest/installation/ldap/"]
[menu.docs]
name = "LDAP"
identifier = "ldap"
parent = "authentication"
weight = 300
+++
......@@ -85,9 +80,6 @@ search_base_dns = ["dc=grafana,dc=org"]
# Specify names of the LDAP attributes your LDAP uses
[servers.attributes]
name = "givenName"
surname = "sn"
username = "cn"
member_of = "memberOf"
email = "email"
```
......@@ -105,7 +97,7 @@ bind_password = "${LDAP_ADMIN_PASSWORD}"
> Only available in Grafana v6.4+
Grafana has an LDAP debug view built-in which allows you to test your LDAP configuration directly within Grafana. At the moment of writing, only Grafana admins can use the LDAP debug view.
Within this view, you'll be able to see which LDAP servers are currently reachable and test your current configuration.
{{< docs-imagebox img="/img/docs/ldap_debug.png" class="docs-image--no-shadow" max-width="600px" >}}
......@@ -243,9 +235,6 @@ search_filter = "(cn=%s)"
search_base_dns = ["dc=grafana,dc=org"]
[servers.attributes]
name = "givenName"
surname = "sn"
username = "cn"
member_of = "memberOf"
email = "email"
......@@ -272,9 +261,6 @@ search_filter = "(cn=%s)"
search_base_dns = ["ou=users,dc=grafana,dc=org"]
[servers.attributes]
name = "givenName"
surname = "sn"
username = "cn"
member_of = "memberOf"
email = "email"
......@@ -298,9 +284,6 @@ search_filter = "(cn=%s)"
search_base_dns = ["ou=users,dc=grafana,dc=org"]
[servers.attributes]
name = "givenName"
surname = "sn"
username = "cn"
member_of = "memberOf"
email = "email"
......@@ -336,9 +319,6 @@ search_filter = "(sAMAccountName=%s)"
search_base_dns = ["dc=corp,dc=local"]
[servers.attributes]
name = "givenName"
surname = "sn"
username = "sAMAccountName"
member_of = "memberOf"
email = "mail"
......
......@@ -2,11 +2,6 @@
title = "Okta OAuth2 authentication"
description = "Grafana Okta OAuth Guide "
keywords = ["grafana", "configuration", "documentation", "oauth"]
type = "docs"
[menu.docs]
name = "Okta"
identifier = "okta_oauth2"
parent = "authentication"
weight = 1000
+++
......
+++
title = "Overview"
description = "Overview for auth"
type = "docs"
[menu.docs]
name = "Overview"
identifier = "overview-auth"
parent = "authentication"
weight = 1
+++
......@@ -16,16 +11,16 @@ 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.
Provider | Support | Role mapping | Team sync<br> *(Enterprise only)* | Active sync<br> *(Enterprise only)*
-------- | :-----: | :----------: | :-------: | :---------:
[Auth Proxy]({{< relref "auth-proxy.md" >}}) | v2.1+ | - | v6.3+ | -
[Azure AD OAuth]({{< relref "azuread.md" >}}) | v6.7+ | v6.7+ | v6.7+ | -
[Generic OAuth]({{< relref "generic-oauth.md" >}}) | v4.0+ | v6.5+ | - | -
-------- | :-----: | :----------: | :-------: | :---------:
[Auth Proxy]({{< relref "auth-proxy.md" >}}) | v2.1+ | - | v6.3+ | -
[Azure AD OAuth]({{< relref "azuread.md" >}}) | v6.7+ | v6.7+ | v6.7+ | -
[Generic OAuth]({{< relref "generic-oauth.md" >}}) | v4.0+ | v6.5+ | - | -
[GitHub OAuth]({{< relref "github.md" >}}) | v2.0+ | - | v6.3+ | -
[GitLab OAuth]({{< relref "gitlab.md" >}}) | v5.3+ | - | v6.4+ | -
[Google OAuth]({{< relref "google.md" >}}) | v2.0+ | - | - | -
[Google OAuth]({{< relref "google.md" >}}) | v2.0+ | - | - | -
[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+ | -
[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
......@@ -61,11 +56,11 @@ login_cookie_name = grafana_session
# The maximum lifetime (duration) an authenticated user can be inactive before being required to login at next visit. Default is 7 days (7d). This setting should be expressed as a duration, e.g. 5m (minutes), 6h (hours), 10d (days), 2w (weeks), 1M (month). The lifetime resets at each successful token rotation (token_rotation_interval_minutes).
login_maximum_inactive_lifetime_duration =
login_maximum_inactive_lifetime_duration =
# The maximum lifetime (duration) an authenticated user can be logged in since login time before being required to login. Default is 30 days (30d). This setting should be expressed as a duration, e.g. 5m (minutes), 6h (hours), 10d (days), 2w (weeks), 1M (month).
login_maximum_lifetime_duration =
login_maximum_lifetime_duration =
# How often should auth tokens be rotated for authenticated users when being active. The default is each 10 minutes.
token_rotation_interval_minutes = 10
......
......@@ -3,10 +3,6 @@ title = "SAML Authentication"
description = "Grafana SAML Authentication"
keywords = ["grafana", "saml", "documentation", "saml-auth"]
aliases = ["/docs/grafana/latest/auth/saml/"]
type = "docs"
[menu.docs]
name = "SAML"
parent = "authentication"
weight = 1100
+++
......
......@@ -3,10 +3,6 @@ title = "Team Sync"
description = "Grafana Team Sync"
keywords = ["grafana", "auth", "documentation"]
aliases = ["/docs/grafana/latest/auth/saml/"]
type = "docs"
[menu.docs]
name = "Team Sync"
parent = "authentication"
weight = 1200
+++
......
+++
title = "Best practices"
description = "Best practices for working with Grafana"
type = "docs"
[menu.docs]
identifier = "best-practices"
weight = 20
+++
......@@ -15,5 +12,5 @@ This section provides information about best practices for intermediate Grafana
- [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" >}})
<!-- BEGIN Optimal Workshop Intercept Snippet --><div id='owInviteSnippet' style='position:fixed;right:20px;bottom:20px;width:280px;padding:20px;margin:0;border-radius:6px;background:#1857B8;color:#F7F8FA;text-align:left;z-index:2200000000;opacity:0;transition:opacity 500ms;-webkit-transition:opacity 500ms;display:none;'><div id='owInviteMessage' style='padding:0;margin:0 0 20px 0;font-size:16px;'>Got a spare two and a half minutes to help us improve the docs?</div><a id='owInviteOk' href='https://Grafana.optimalworkshop.com/questions/grafana-docs?tag=docs&utm_medium=intercept' onclick='this.parentNode.style.display="none";' target='_blank' style='color:#F7FAFF;font-size:16px;font-weight:bold;text-decoration:underline;'>Yes, I&#x27;ll help</a><a id='owInviteCancel' href='javascript:void(0)' onclick='this.parentNode.style.display="none";' style='color:#F7F8FA;font-size:14px;text-decoration:underline;float:right;'>Close</a></div><script>var owOnload=function(){if(-1==document.cookie.indexOf('ow-intercept-quiz-4ior230e')){var o=new XMLHttpRequest;o.onloadend=function(){try{var o=document.getElementById('owInviteSnippet');var date=new Date();date.setMonth(date.getMonth()+1);this.response&&JSON.parse(this.response).active===!0&&(document.cookie='ow-intercept-quiz-4ior230e=Done;path=/;expires='+date.toUTCString()+';',setTimeout(function(){o.style.display='block',o.style.opacity=1},2e3))}catch(e){}},o.open('POST','https://app.optimalworkshop.com/survey_status/questions/4ior230e/active'),o.send()}};if(window.addEventListener){window.addEventListener('load',function(){owOnload();});}else if(window.attachEvent){window.attachEvent('onload',function(){owOnload();});}</script><!-- END Optimal Workshop snippet -->
\ No newline at end of file
+++
title = "Best practices for creating dashboards"
description = "Best practices for creating dashboards in Grafana"
type = "docs"
[menu.docs]
identifier = "best-practices-for-creating-dashboards"
parent = "best-practices"
weight = 100
+++
......@@ -49,7 +45,7 @@ Once you have a strategy or design guidelines, write them down to help maintain
- If you create many related dashboards, think about how to cross-reference them for easy navigation. Refer to [Best practices for managing dashboards]({{< relref "best-practices-for-managing-dashboards.md" >}}) for more information.
- Grafana retrieves data from a data source. A basic understanding of [data sources]({{< relref "../datasources/_index.md" >}}) in general and your specific is important.
- Avoid unnecessary dashboard refreshing to reduce the load on the network or backend. For example, if your data changes every hour, then you don't need to set the dashboard refresh rate to 30 seconds.
- Use the left and right Y-axes when displaying time series with different units or ranges.
- Use the left and right Y-axes when displaying time series with different units or ranges.
- 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.
......
+++
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
+++
......@@ -18,7 +14,7 @@ Here are some principles to consider before you start managing dashboards.
### Strategic observability
There are several [common observability strategies]({{< relref "common-observability-strategies.md" >}}). You should research them and decide whether one of them works for you or if you want to come up with your own. Either way, have a plan, write it down, and stick to it.
There are several [common observability strategies]({{< relref "common-observability-strategies.md" >}}). You should research them and decide whether one of them works for you or if you want to come up with your own. Either way, have a plan, write it down, and stick to it.
Adapt your strategy to changing needs as necessary.
......
......@@ -3,10 +3,6 @@ title = "Common observability strategies"
description = "Common observability strategies"
keywords = ["grafana", "intro", "guide", "concepts", "methods"]
aliases = ["/docs/grafana/latest/getting-started/strategies/"]
type = "docs"
[menu.docs]
identifier = "common-observability-strategies"
parent = "best-practices"
weight = 300
+++
......@@ -19,7 +15,7 @@ A logical strategy allows you to make uniform dashboards and scale your observab
## Guidelines for usage
- The USE method tells you how happy your machines are, the RED method tells you how happy your users are.
- USE reports on causes of issues.
- USE reports on causes of issues.
- RED reports on user experience and is more likely to report symptoms of problems.
- The best practice of alerting is to alert on symptoms rather than causes, so alerting should be done on RED dashboards.
......
+++
title = "Dashboard management maturity model"
description = "Explanation of dashboard management maturity model"
type = "docs"
[menu.docs]
identifier = "best-management-for-maturity-model"
parent = "best-practices"
weight = 400
+++
......@@ -35,8 +31,8 @@ At this stage, you are starting to manage your dashboard use with methodical das
How can you tell you are here?
- Prevent sprawl by using template variables. For example, you don't need a separate dashboard for each node, you can use query variables. Even better, you can make the data source a template variable too, so you can reuse the same dashboard across different clusters and monitoring backends.
- Prevent sprawl by using template variables. For example, you don't need a separate dashboard for each node, you can use query variables. Even better, you can make the data source a template variable too, so you can reuse the same dashboard across different clusters and monitoring backends.
Refer to the list of [Variable examples]({{< relref "../variables/variable-examples.md" >}}) if you want some ideas.
- Methodical dashboards according to an [observability strategy]({{< relref "common-observability-strategies.md" >}}).
......@@ -49,7 +45,7 @@ How can you tell you are here?
{{< imgbox max-width="100%" img="/img/docs/best-practices/service-hierarchy-example.png" caption="Example of a service hierarchy" >}}
- Compare like to like: split service dashboards when the magnitude differs. Make sure aggregated metrics don't drown out important information.
- Expressive charts with meaningful use of color and normalizing axes where you can.
- Expressive charts with meaningful use of color and normalizing axes where you can.
- Example of meaningful color: Blue means it's good, red means it's bad. [Thresholds]({{< relref "../panels/thresholds.md" >}}) can help with that.
- Example of normalizing axes: When comparing CPU usage, measure by percentage rather than raw number, because machines can have a different number of cores. Normalizing CPU usage by the number of cores reduces cognitive load because the viewer can trust that at 100% all cores are being used, without having to know the number of CPUs.
- Directed browsing cuts down on "guessing."
......
+++
title = "Dashboard overview"
type = "docs"
title = "Dashboards"
aliases = ["/docs/grafana/latest/features/dashboard/dashboards/"]
[menu.docs]
identifier = "dashboards"
weight = 100
weight = 80
+++
# Dashboard overview
......
+++
title = "Annotations"
keywords = ["grafana", "annotations", "documentation", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/reference/annotations/"]
[menu.docs]
name = "Annotations"
parent = "dashboard_features"
weight = 2
+++
......
+++
title = "Dashboard Folders"
keywords = ["grafana", "dashboard", "dashboard folders", "folder", "folders", "documentation", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/reference/dashboard_folders/"]
[menu.docs]
name = "Folders"
parent = "dashboard_features"
weight = 3
+++
......
+++
title = "Dashboard Version History"
keywords = ["grafana", "dashboard", "documentation", "version", "history"]
type = "docs"
aliases = ["/docs/grafana/latest/reference/dashboard_history/"]
[menu.docs]
name = "Dashboard Version History"
parent = "dashboard_features"
weight = 100
+++
......
+++
title = "Export and import"
keywords = ["grafana", "dashboard", "documentation", "export", "import"]
type = "docs"
aliases = ["/docs/grafana/latest/reference/export_import/"]
[menu.docs]
parent = "dashboard_features"
weight = 800
+++
......@@ -30,7 +27,7 @@ the dashboard, and will also be added as a required input when the dashboard is
## Importing a dashboard
To import a dashboard click the + icon in the side menu, and then click **Import**.
To import a dashboard click the + icon in the side menu, and then click **Import**.
{{< docs-imagebox img="/img/docs/v70/import_step1.png" max-width="700px" >}}
......
+++
title = "JSON model"
keywords = ["grafana", "dashboard", "documentation", "json", "model"]
type = "docs"
aliases = ["/docs/grafana/latest/reference/dashboard/"]
[menu.docs]
name = "JSON Model"
parent = "dashboard_features"
weight = 1200
+++
......
+++
title = "Playlist"
keywords = ["grafana", "dashboard", "documentation", "playlist"]
type = "docs"
aliases = ["/docs/grafana/latest/reference/playlist/"]
[menu.docs]
parent = "dashboard_features"
identifier = "feature_playlist"
weight = 4
+++
......@@ -22,7 +18,7 @@ You can access the Playlist feature from Grafana's side menu, in the Dashboards
## Create a playlist
You create a playlist to present dashboards in a sequence, with a set order and time interval between dashboards.
You create a playlist to present dashboards in a sequence, with a set order and time interval between dashboards.
1. To access the Playlist feature, hover your cursor over Grafana's side menu.
1. Click **Playlists**.
......@@ -32,7 +28,7 @@ You create a playlist to present dashboards in a sequence, with a set order and
The time interval is the amount of time for Grafana to stay on a particular dashboard before advancing to the next one on the playlist.
1. Next to the dashboard(s) you want to add to your playlist, click **Add to playlist**.
1. Next to the dashboard(s) you want to add to your playlist, click **Add to playlist**.
1. Click **Create**.
## Edit a playlist
......@@ -46,7 +42,7 @@ You can edit playlists while creating them or after saving them.
### Edit the Name of a playlist
1. Double-click within the **Name** text box.
1. Enter a name.
1. Enter a name.
1. Click **Save** to save your changes.
### Edit the Interval of a playlist
......@@ -62,9 +58,9 @@ You can edit playlists while creating them or after saving them.
### Search for a dashboard to add
1. Click the **Search dashboards by name** text box.
1. Search for the playlist by name or regular expression.
1. If needed, filter your results by starred status or tags.
1. Click the **Search dashboards by name** text box.
1. Search for the playlist by name or regular expression.
1. If needed, filter your results by starred status or tags.
By default, your starred dashboards will appear as options to add to the Playlist.
1. Click **Save** to save your changes.
......@@ -85,18 +81,18 @@ You can edit playlists while creating them or after saving them.
## Save a playlist
You can save a playlist to add it to your **Playlists** page, where you can start it. Be sure that all the dashboards you want to appear in your playlist are added when creating or editing the playlist before saving it.
You can save a playlist to add it to your **Playlists** page, where you can start it. Be sure that all the dashboards you want to appear in your playlist are added when creating or editing the playlist before saving it.
1. To access the Playlist feature, hover your cursor over Grafana's side menu.
1. Click **Playlists**.
1. Click on the playlist.
1. Edit the playlist.
* Ensure that your playlist has a **Name**, **Interval**, and at least one **Dashboard** added to it.
1. Click **Save**.
1. Click **Save**.
## Start a playlist
You can start a playlist in five different view modes, which determine how the menus and navigation bar are displayed on the dashboards.
You can start a playlist in five different view modes, which determine how the menus and navigation bar are displayed on the dashboards.
By default, each dashboard is displayed for the amount of time entered in the Interval field, which can be set while creating or editing a playlist. Once a playlist is started, it can be controlled using the navbar at the top of your screen.
......@@ -104,24 +100,24 @@ By default, each dashboard is displayed for the amount of time entered in the In
1. Next to the playlist you want to start, click **Start playlist**.
1. In the dropdown, select the mode you want the playlist to display in.
- **Normal mode:**
- The side menu remains visible.
- The side menu remains visible.
- The navbar, row and panel controls appear at the top of the screen.
- **TV mode:**
- The side menu is hidden/removed.
- The side menu is hidden/removed.
- The navbar, row and panel controls appear at the top of the screen.
- Enabled automatically after one minute of user inactivity.
- You can enable it manually using the `d v` sequence shortcut, or by appending the parameter `?inactive` to the dashboard URL.
- You can disable it with any mouse movement or keyboard action.
- **TV mode (with auto fit panels):**
- The side menu is hidden/removed.
- You can enable it manually using the `d v` sequence shortcut, or by appending the parameter `?inactive` to the dashboard URL.
- You can disable it with any mouse movement or keyboard action.
- **TV mode (with auto fit panels):**
- The side menu is hidden/removed.
- The navbar, row and panel controls appear at the top of the screen.
- Dashboard panels automatically adjust to optimize space on screen.
- **Kiosk mode:**
- The side menu, navbar, row and panel controls are completely hidden/removed from view.
- **Kiosk mode:**
- The side menu, navbar, row and panel controls are completely hidden/removed from view.
- You can enable it manually using the `d v` sequence shortcut after the playlist has started.
- You can disable it manually with the same shortcut.
- **Kiosk mode (with auto fit panels):**
- The side menu, navbar, row and panel controls are completely hidden/removed from view.
- **Kiosk mode (with auto fit panels):**
- The side menu, navbar, row and panel controls are completely hidden/removed from view.
- Dashboard panels automatically adjust to optimize space on screen.
## Control a playlist
......@@ -141,12 +137,12 @@ You can control a playlist in **Normal** or **TV** mode after it's started, usin
## Share a playlist in a view mode
You can share a playlist by copying the link address on the view mode you prefer, and pasting the URL to your destination.
You can share a playlist by copying the link address on the view mode you prefer, and pasting the URL to your destination.
1. From the Dashboards submenu, click **Playlists**.
1. Next to the playlist you want to share, click **Start playlist**.
1. In the dropdown, right click the view mode you prefer.
1. Click **Copy Link Address** to copy the URL to your clipboard.
1. Click **Copy Link Address** to copy the URL to your clipboard.
Example: The URL for the first playlist on the Grafana Play site in Kiosk mode will look like this:
[https://play.grafana.org/playlists/play/1?kiosk](https://play.grafana.org/playlists/play/1?kiosk).
......
......@@ -2,10 +2,7 @@
title = "Reporting"
description = ""
keywords = ["grafana", "reporting"]
type = "docs"
aliases = ["/docs/grafana/latest/administration/reports"]
[menu.docs]
parent = "features"
weight = 8
+++
......
+++
title = "Scripted dashboards"
keywords = ["grafana", "dashboard", "documentation", "scripted"]
type = "docs"
aliases = ["/docs/grafana/latest/reference/scripting/"]
[menu.docs]
parent = "dashboard_features"
weight = 1500
+++
......
+++
title = "Search"
keywords = ["grafana", "dashboard", "documentation", "search"]
type = "docs"
aliases =["/docs/grafana/latest/reference/search/"]
[menu.docs]
parent = "dashboard_features"
weight = 5
+++
......
+++
title = "Share dashboard"
keywords = ["grafana", "dashboard", "documentation", "sharing"]
type = "docs"
aliases = ["/docs/grafana/latest/reference/share_dashboard/"]
[menu.docs]
parent = "dashboard_features"
weight = 500
+++
......
+++
title = "Share panel"
keywords = ["grafana", "dashboard", "documentation", "sharing"]
type = "docs"
aliases = ["/docs/grafana/latest/reference/share_panel/"]
[menu.docs]
parent = "dashboard_features"
weight = 600
+++
......
+++
title = "Keyboard shortcuts"
type = "docs"
[menu.docs]
parent = "features"
weight = 7
+++
......
......@@ -2,10 +2,6 @@
title = "Time range controls"
keywords = ["grafana", "dashboard", "documentation", "time range"]
aliases = ["/docs/grafana/latest/reference/timerange/"]
type = "docs"
[menu.docs]
name = "Time range controls"
parent = "dashboards"
weight = 7
+++
......
+++
title = "Data sources"
type = "docs"
aliases = ["/docs/grafana/latest/datasources/overview/"]
[menu.docs]
name = "Data sources"
identifier = "datasources"
parent = "features"
weight = 50
weight = 60
+++
# Data sources
......
+++
title = "Add data source"
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/add-a-data-source/"]
[menu.docs]
name = "Add a data source"
identifier = "add_data_source"
parent = "features"
weight = 100
+++
......@@ -23,7 +18,7 @@ Before you create your first dashboard, you need to add your data source. Follow
{{< docs-imagebox img="/img/docs/v52/add-datasource.png" max-width="700px" class="docs-image--no-shadow">}}
1. In the **Name** box, enter a name for this data source.
1. In the **Name** box, enter a name for this data source.
{{< docs-imagebox img="/img/docs/v52/datasource-settings.png" max-width="700px" class="docs-image--no-shadow">}}
......
......@@ -2,11 +2,7 @@
title = "Azure Monitor"
description = "Guide for using Azure Monitor in Grafana"
keywords = ["grafana", "microsoft", "azure", "monitor", "application", "insights", "log", "analytics", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/azuremonitor"]
[menu.docs]
name = "Azure Monitor"
parent = "datasources"
weight = 300
+++
......
......@@ -2,11 +2,7 @@
title = "Cloud Monitoring"
description = "Guide for using Google Cloud Monitoring in Grafana"
keywords = ["grafana", "stackdriver", "google", "guide", "cloud", "monitoring"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/stackdriver", "/docs/grafana/latest/features/datasources/cloudmonitoring/"]
[menu.docs]
name = "Google Cloud Monitoring"
parent = "datasources"
weight = 200
+++
......
......@@ -2,12 +2,7 @@
title = "AWS CloudWatch"
description = "Guide for using CloudWatch in Grafana"
keywords = ["grafana", "cloudwatch", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/datasources/cloudwatch"]
[menu.docs]
name = "AWS Cloudwatch"
identifier = "cloudwatch"
parent = "datasources"
weight = 200
+++
......
......@@ -2,11 +2,7 @@
title = "Elasticsearch"
description = "Guide for using Elasticsearch in Grafana"
keywords = ["grafana", "elasticsearch", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/elasticsearch"]
[menu.docs]
name = "Elasticsearch"
parent = "datasources"
weight = 400
+++
......@@ -95,7 +91,7 @@ For example, if you're using a default setup of Filebeat for shipping logs to El
Data links create a link from a specified field that can be accessed in logs view in Explore.
Each data link configuration consists of:
Each data link configuration consists of:
- **Field -** Name of the field used by the data link.
- **URL/query -** If the link is external, then enter the full link URL. If the link is internal link, then this input serves as query for the target data source. In both cases, you can interpolate the value from the field with `${__value.raw }` macro.
- **Internal link -** Select if the link is internal or external. In case of internal link, a data source selector allows you to select the target data source. Only tracing data sources are supported.
......
......@@ -2,12 +2,7 @@
title = "Graphite"
description = "Guide for using graphite in Grafana"
keywords = ["grafana", "graphite", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/graphite"]
[menu.docs]
name = "Graphite"
identifier = "graphite"
parent = "datasources"
weight = 600
+++
......
......@@ -2,11 +2,7 @@
title = "InfluxDB"
description = "Guide for using InfluxDB in Grafana"
keywords = ["grafana", "influxdb", "guide", "flux"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/influxdb"]
[menu.docs]
name = "InfluxDB"
parent = "datasources"
weight = 700
+++
......@@ -68,7 +64,7 @@ Identifier | Description
{{< docs-imagebox img="/img/docs/v45/influxdb_query_still.png" class="docs-image--no-shadow" animated-gif="/img/docs/v45/influxdb_query.gif" >}}
You can access the InfluxDB editor under the metrics tab when you are in the edit mode of the Graph or Singlestat panels.
You can access the InfluxDB editor under the metrics tab when you are in the edit mode of the Graph or Singlestat panels.
Enter edit mode by clicking the panel title and clicking **Edit**. The editor allows you to select metrics and tags.
### Filter data (WHERE)
......@@ -180,7 +176,7 @@ You can view the interpolated version of a query with the Query Inspector.
> Only available in Grafana v6.3+.
Querying and displaying log data from InfluxDB is available in [Explore]({{< relref "../explore" >}}), and in the [logs panel]({{< relref "../panels/visualizations/logs-panel.md" >}}) in dashboards.
Querying and displaying log data from InfluxDB is available in [Explore]({{< relref "../explore" >}}), and in the [logs panel]({{< relref "../panels/visualizations/logs-panel.md" >}}) in dashboards.
Select the InfluxDB data source, and then enter a query to display your logs.
### Log Queries
......
......@@ -2,11 +2,7 @@
title = "Jaeger"
description = "Guide for using Jaeger in Grafana"
keywords = ["grafana", "jaeger", "guide", "tracing"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/jaeger"]
[menu.docs]
name = "Jaeger"
parent = "datasources"
weight = 800
+++
......
......@@ -2,11 +2,7 @@
title = "Loki"
description = "Guide for using Loki in Grafana"
keywords = ["grafana", "loki", "logging", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/loki"]
[menu.docs]
name = "Loki"
parent = "datasources"
weight = 800
+++
......
......@@ -2,11 +2,7 @@
title = "Microsoft SQL Server"
description = "Guide for using Microsoft SQL Server in Grafana"
keywords = ["grafana", "MSSQL", "Microsoft", "SQL", "guide", "Azure SQL Database"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/mssql/"]
[menu.docs]
name = "Microsoft SQL Server"
parent = "datasources"
weight = 900
+++
......
......@@ -2,11 +2,7 @@
title = "MySQL"
description = "Guide for using MySQL in Grafana"
keywords = ["grafana", "mysql", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/mysql/"]
[menu.docs]
name = "MySQL"
parent = "datasources"
weight = 1000
+++
......
......@@ -2,11 +2,7 @@
title = "OpenTSDB"
description = "Guide for using OpenTSDB in Grafana"
keywords = ["grafana", "opentsdb", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/features/opentsdb", "/docs/grafana/latest/features/datasources/opentsdb/"]
[menu.docs]
name = "OpenTSDB"
parent = "datasources"
weight = 1100
+++
......
......@@ -2,11 +2,7 @@
title = "PostgreSQL"
description = "Guide for using PostgreSQL in Grafana"
keywords = ["grafana", "postgresql", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/postgres/"]
[menu.docs]
name = "PostgreSQL"
parent = "datasources"
weight = 1200
+++
......
......@@ -2,11 +2,7 @@
title = "Prometheus"
description = "Guide for using Prometheus in Grafana"
keywords = ["grafana", "prometheus", "guide"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/prometheus"]
[menu.docs]
name = "Prometheus"
parent = "datasources"
weight = 1300
+++
......
......@@ -2,11 +2,7 @@
title = "Tempo"
description = "High volume, minimal dependency trace storage. OSS tracing solution from Grafana Labs."
keywords = ["grafana", "tempo", "guide", "tracing"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/tempo"]
[menu.docs]
name = "Tempo"
parent = "datasources"
weight = 800
+++
......
+++
title = "TestData"
keywords = ["grafana", "dashboard", "documentation", "panels", "testdata"]
type = "docs"
aliases = ["/docs/grafana/latest/features/datasources/testdata"]
[menu.docs]
name = "TestData"
parent = "datasources"
weight = 1400
+++
......@@ -17,9 +13,9 @@ This makes it much easier to verify functionality since the data can be shared v
## Enable
The `TestData DB` data source is not enabled by default. To enable it:
The `TestData DB` data source is not enabled by default. To enable it:
1. In the **Configuration** menu (small gear on the left side of the screen), click **Data Sources**.
1. In the **Configuration** menu (small gear on the left side of the screen), click **Data Sources**.
1. Click **Add Data Source**.
1. Search and click `TestData DB`.
1. Click **Save & Test** to enable it.
......@@ -39,7 +35,7 @@ Once you provided the numbers, `TestData DB` distributes them evenly based on th
## Dashboards
`TestData DB` also contains some dashboards with examples.
`TestData DB` also contains some dashboards with examples.
1. Click **Configuration** > **Data Sources** > **TestData DB** > **Dashboards**.
1. **Import** the **Simple Streaming Example** dashboard.
......
......@@ -2,11 +2,7 @@
title = "Zipkin"
description = "Guide for using Zipkin in Grafana"
keywords = ["grafana", "zipkin", "guide", "tracing"]
type = "docs"
aliases = ["/docs/grafana/latest/datasources/zipkin"]
[menu.docs]
name = "Zipkin"
parent = "datasources"
weight = 1500
+++
......@@ -36,7 +32,7 @@ Querying and displaying traces from Zipkin is available via [Explore]({{< relref
The Zipkin query editor allows you to query by trace ID directly or selecting a trace from trace selector. To query by trace ID, insert the ID into the text input.
{{< docs-imagebox img="/img/docs/v70/zipkin-query-editor-open.png" class="docs-image--no-shadow" caption="Screenshot of the Zipkin query editor with trace selector expanded" >}}
{{< docs-imagebox img="/img/docs/v70/zipkin-query-editor-open.png" class="docs-image--no-shadow" caption="Screenshot of the Zipkin query editor with trace selector expanded" >}}
Use the trace selector to pick particular trace from all traces logged in the time range you have selected in Explore. The trace selector has three levels of nesting:
1. The service you are interested in.
......
+++
title = "Developers"
type = "docs"
aliases = ["/docs/plugins/developing/"]
weight = 190
+++
# Developers
......
+++
title = "Contributor License Agreement (CLA)"
description = "Contributor License Agreement (CLA)"
type = "docs"
aliases = ["/docs/grafana/latest/project/cla", "docs/contributing/cla.html"]
+++
......
+++
title = "Contribute to Grafana"
keywords = ["grafana", "documentation", "developers", "resources"]
type = "docs"
+++
# Contribute to Grafana
......
+++
title = "Build a plugin."
type = "docs"
+++
# Build a plugin
......
+++
title = "Add authentication for data source plugins"
type = "docs"
aliases = ["/docs/grafana/latest/plugins/developing/auth-for-datasources/", "/docs/grafana/latest/developers/plugins/authentication/"]
+++
......
+++
title = "Add support for annotations"
type = "docs"
+++
# Add support for annotations
......
+++
title = "Add support for Explore queries"
type = "docs"
+++
# Add support for Explore queries
......
+++
title = "Add support for variables in plugins"
type = "docs"
+++
# Add support for variables in plugins
......
+++
title = "Backend plugins"
keywords = ["grafana", "plugins", "backend", "plugin", "backend-plugins", "documentation"]
type = "docs"
aliases = ["/docs/grafana/latest/plugins/developing/backend-plugins-guide/"]
+++
......
+++
title = "Grafana Plugin SDK for Go"
keywords = ["grafana", "plugins", "backend", "plugin", "backend-plugins", "sdk", "documentation"]
type = "docs"
+++
# Grafana plugin SDK for Go
......
+++
title = "Plugin protocol"
keywords = ["grafana", "plugins", "backend", "plugin", "backend-plugins", "documentation"]
type = "docs"
+++
# Plugin protocol
......
+++
title = "Build a logs data source plugin"
type = "docs"
+++
# Build a logs data source plugin
......
+++
title = "Build a streaming data source plugin"
type = "docs"
+++
# Build a streaming data source plugin
......
+++
title = "Data frames"
type = "docs"
+++
# Data frames
......
+++
title = "Error handling"
type = "docs"
+++
# Error handling
......
+++
title = "Legacy plugins"
type = "docs"
aliases = ["/docs/grafana/latest/plugins/development/", "/docs/grafana/latest/plugins/datasources/", "/docs/grafana/latest/plugins/apps/", "/docs/grafana/latest/plugins/panels/", "/docs/grafana/latest/plugins/developing/development/"]
+++
......
+++
title = "Legacy app plugins"
keywords = ["grafana", "plugins", "documentation"]
type = "docs"
aliases = ["/docs/grafana/latest/plugins/developing/apps/"]
+++
......
+++
title = "Legacy data source plugins"
keywords = ["grafana", "plugins", "documentation"]
type = "docs"
aliases = ["/docs/grafana/latest/plugins/developing/datasources/"]
+++
......
+++
title = "Legacy defaults and editor mode"
type = "docs"
aliases = ["/docs/grafana/latest/plugins/developing/defaults-and-editor-mode/"]
+++
......
+++
title = "Legacy panel plugins"
keywords = ["grafana", "plugins", "panel", "documentation"]
type = "docs"
aliases = ["/docs/grafana/latest/plugins/developing/panels/"]
+++
......
+++
title = "Legacy review guidelines"
type = "docs"
aliases = ["/docs/grafana/latest/plugins/developing/plugin-review-guidelines/"]
+++
......
+++
title = "Legacy snapshot mode"
type = "docs"
aliases = ["/docs/grafana/latest/plugins/developing/snapshot-mode/"]
+++
......
+++
title = "Legacy code style guide"
type = "docs"
aliases = ["/docs/grafana/latest/plugins/developing/code-styleguide/"]
+++
......
......@@ -4,7 +4,6 @@
# -------------------------------------------------------------------------
title = "plugin.json"
keywords = ["grafana", "plugins", "documentation"]
type = "docs"
aliases = ["/docs/grafana/latest/plugins/developing/plugin.json/"]
+++
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment