Use the Hugo shortcode [relref](https://gohugo.io/content-management/cross-references/#use-ref-and-relref) any time you are linking to other internal docs pages.
Syntax is:
```
{{<relref"example.md">}}
```
You might need to add more context for the link (containing folders and so on, `folder/example.md`) if Hugo says the relref is ambiguous.
### Managing redirects
When moving content around or removing pages it's important that users following old links are properly redirected to the new location. We do this using the [aliases](https://gohugo.io/content-management/urls/#aliases) feature in Hugo.
You can create interactive links for Explore visualizations by setting up Correlations. These links can either run queries or generate external URLs related to presented data.
A correlation defines how data in one [data source]({{< relref "../../datasources" >}}) is used to query data in another data source or to generate an external URL.
A correlation defines how data in one [data source](../../datasources/) is used to query data in another data source or to generate an external URL.
Some examples:
- an application name returned in a logs data source can be used to query metrics related to that application in a metrics data source, or
- a user name returned by an SQL data source can be used to query logs related to that particular user in a logs data source
- a customer ID in a logs data source can link to a different platform that has a profile on that customer.
[Explore]({{< relref "../../explore" >}}) takes user-defined correlations to display links inside the visualizations.
If a correlation links to a query, you can click on that link to run the related query and see results in [Explore Split View]({{< relref "../../explore#split-and-compare" >}}).
[Explore](../../explore/) takes user-defined correlations to display links inside the visualizations.
If a correlation links to a query, you can click on that link to run the related query and see results in [Explore Split View](../../explore/#split-and-compare).
If a correlation links to an external URL, you can click on the link to open the URL in a new tab in your browser.
Explore visualizations that currently support showing links based on correlations:
You can configure correlations using [provisioning]({{< relref "../provisioning" >}}), the **Administration > Plugins and data > Correlations** page in Grafana or directly in [Explore]({{< relref "../../explore/correlations-editor-in-explore" >}}).
You can configure correlations using [provisioning](../provisioning/), the **Administration > Plugins and data > Correlations** page in Grafana or directly in [Explore](../../explore/correlations-editor-in-explore/).
## Example of how links work in Explore once set up
Adding access to create correlations for [Viewers and Editors]({{< relref "../../../administration/roles-and-permissions" >}}) is available with [Role-based access control]({{< relref "../../../administration/roles-and-permissions/access-control" >}}).
Adding access to create correlations for [Viewers and Editors](../../roles-and-permissions/) is available with [Role-based access control](../../roles-and-permissions/access-control/).
@ -29,13 +29,13 @@ Each correlation is configured with the following options:
**Transformations**
: Optional manipulations to the source data included passed to the target query
Learn how to create correlations using the [Administration page]({{< relref "./create-a-new-correlation#create-a-correlation-in-administration-page" >}}) or with [provisioning]({{< relref "./create-a-new-correlation#create-a-correlation-with-provisioning" >}}).
Learn how to create correlations using the [Administration page](../create-a-new-correlation/#create-a-correlation-in-administration-page) or with [provisioning](../create-a-new-correlation/#create-a-correlation-with-provisioning).
## Source data source and result field
Links are shown in Explore visualizations for the results from the correlation’s source data source.
A link is assigned to one of the fields from the result provided in the correlation configuration (the results field).
Each visualization displays fields with links in a different way ([Correlations in Logs Panel]({{<relref"./use-correlations-in-visualizations#correlations-in-logs-panel">}}) and see [Correlations in Table]({{< relref "./use-correlations-in-visualizations#correlations-in-table">}})).
Each visualization displays fields with links in a different way ([Correlations in Logs Panel](../use-correlations-in-visualizations/#correlations-in-logs-panel) and see [Correlations in Table](../use-correlations-in-visualizations/#correlations-in-table)).
## Target query
@ -44,10 +44,10 @@ The target query is run when a link is clicked in the visualization. You can use
### Correlation Variables
You can use variables inside the target query to access the source data related to the query.
Correlations use [Grafana variable syntax]({{< relref "../../../dashboards/variables/variable-syntax" >}}).
Correlations use [Grafana variable syntax](../../../dashboards/variables/variable-syntax/).
Variables are filled with values from the source results when the link is clicked. There are two types of variables you can use:
- [field variables]({{< relref "../../../panels-visualizations/configure-data-links#field-variables" >}}) (allows to access field values and labels)
- [field variables](../../../panels-visualizations/configure-data-links/#field-variables) (allows to access field values and labels)
- correlation variables (allows to access field values and transformations)
Example: If source results contain a field called “employee”, the value of the field can be accessed with:
@ -57,9 +57,9 @@ Example: If source results contain a field called “employee”, the value of t
In addition to mapping field values to shorter variable names, more correlation variables can be created by applying transformations to existing fields
For more details, please see the example in [Use variables and transformations in a correlation]({{< relref "./use-variables-and-transformations" >}}).
For more details, please see the example in [Use variables and transformations in a correlation](../use-variables-and-transformations/).
Correlation creates a data link only if all variables have values in the selected data row. [Global variables]({{< relref "/docs/grafana/latest/dashboards/variables/add-template-variables#global-variables" >}}) are exception to this rule and are not required to be filled in from the returned data. These variables are interpolated automatically by data sources.
Correlation creates a data link only if all variables have values in the selected data row. [Global variables](/docs/grafana/latest/dashboards/variables/add-template-variables/#global-variables) are exception to this rule and are not required to be filled in from the returned data. These variables are interpolated automatically by data sources.
### Correlation Transformations
@ -69,7 +69,7 @@ There are two types of transformations: logfmt and regular expression.
Each transformation uses a selected field value as the input. The output of a transformation is a set of new variables based on the type and options of the transformation.
For more details, please see the example in [Use variables and transformations in a correlation]({{< relref "./use-variables-and-transformations" >}}) for more details.
For more details, please see the example in [Use variables and transformations in a correlation](../use-variables-and-transformations/) for more details.
Users with [Viewer base role]({{< relref "../../../administration/roles-and-permissions" >}}) or with [datasources:query RBAC role]({{< relref "../../../administration/roles-and-permissions/access-control" >}}) can:
Users with [Viewer base role](../../roles-and-permissions/) or with [datasources:query RBAC role](../../roles-and-permissions/access-control/) can:
- Use correlations in Explore’s visualizations.
- List all available correlations in read-only mode.
Users with [Admin base role]({{< relref "../../../administration/roles-and-permissions" >}}) or with [datasources:write RBAC role]({{< relref "../../../administration/roles-and-permissions/access-control" >}}) can:
Users with [Admin base role](../../roles-and-permissions/) or with [datasources:write RBAC role](../../roles-and-permissions/access-control/) can:
@ -15,7 +15,7 @@ Make sure you have permission to add new correlations. Only users with write per
## Create a correlation in Explore's correlations editor
To learn more, refer to Explore's [documentation]({{< relref "../../../explore/correlations-editor-in-explore" >}}) about building correlations in Explore.
To learn more, refer to Explore's [documentation](../../../explore/correlations-editor-in-explore/) about building correlations in Explore.
1. Select a data source that you chose as the source data source of the correlation.
1. Run a query that results in data containing fields required to build variables in the target query.
1. Links are added to cell rows in the column representing the field with the assigned link ([the results field]({{<relref"../correlation-configuration#source-data-source-and-result-field">}}).
1. Links are added to cell rows in the column representing the field with the assigned link ([the results field](../correlation-configuration/#source-data-source-and-result-field).
1. Cells containing multiple links accessible with a context menu.
{{<figuresrc="/static/img/docs/correlations/correlations-in-table-10-0.png"max-width="600px"caption="Correlations links in table">}}
@ -73,7 +73,7 @@ Instructions below show how to set up a link that can run metrics query for the
- Required correlation type (query)
- Target query matching test data source model
- “App metrics” correlation contains the following configuration:
- Alias is set to ${application} variable (note that in provisioning files $ is used to access environment variables so it has to be [escaped]({{< relref "../../../administration/provisioning#using-environment-variables" >}})).
- Alias is set to ${application} variable (note that in provisioning files $ is used to access environment variables so it has to be [escaped](../../provisioning/#using-environment-variables)).
- Regular expression transformation is created to extract values from “msg” field
- Regular expression transformation is used to capture the application name from the full name of the service stored in the log line.
- The output of the transformation is mapped to a variable called “application”.
Grafana supports many different storage backends for your time series data (data source).
Refer to [data sources]({{< relref "../../datasources" >}}) for more information about using data sources in Grafana.
Refer to [data sources](../../datasources/) for more information about using data sources in Grafana.
Only users with the organization admin role can add data sources.
For links to data source-specific documentation, see [Data sources]({{< relref "../../datasources" >}}).
For links to data source-specific documentation, see [Data sources](../../datasources/).
## Data source permissions
@ -32,7 +32,7 @@ You can configure data source permissions to allow or deny certain users the abi
- The `admin` permission allows users to query and edit the data source, change permissions on the data source and enable or disable query caching for the data source.
{{% admonition type="note" %}}
Available in [Grafana Enterprise]({{< relref "../../introduction/grafana-enterprise/" >}}) and [Grafana Cloud](/docs/grafana-cloud).
Available in [Grafana Enterprise](../../introduction/grafana-enterprise/) and [Grafana Cloud](/docs/grafana-cloud).
{{% /admonition %}}
By default, data sources in an organization can be queried by any user in that organization. For example, a user with the `Viewer` role can issue any possible query to a data source, not just queries that exist on dashboards to which they have access. Additionally, by default, data sources can be edited by the user who created the data source, as well as users with the `Admin` role.
@ -80,10 +80,10 @@ When you enable query and resource caching, Grafana temporarily stores the resul
When using Grafana, a query pertains to a request for data frames to be modified or displayed. A resource relates to any HTTP requests made by a plugin, such as the Amazon Timestream plugin requesting a list of available databases from AWS. For more information on data source queries and resources, please see the developers page on [backend plugins](https://grafana.com/developers/plugin-tools/key-concepts/backend-plugins/).
The caching feature works for **all** backend data sources. You can enable the cache globally in Grafana's [configuration]({{< relref "../../setup-grafana/configure-grafana/enterprise-configuration/#caching" >}}), and configure a cache duration (also called Time to Live, or TTL) for each data source individually.
The caching feature works for **all** backend data sources. You can enable the cache globally in Grafana's [configuration](../../setup-grafana/configure-grafana/enterprise-configuration/#caching), and configure a cache duration (also called Time to Live, or TTL) for each data source individually.
{{% admonition type="note" %}}
Available in [Grafana Enterprise]({{< relref "../../introduction/grafana-enterprise/" >}}) and [Grafana Cloud](/docs/grafana-cloud/).
Available in [Grafana Enterprise](../../introduction/grafana-enterprise/) and [Grafana Cloud](/docs/grafana-cloud/).
{{% /admonition %}}
The following cache backend options are available: in-memory, Redis, and Memcached.
@ -94,9 +94,9 @@ Storing cached queries in-memory can increase Grafana's memory footprint. In pro
When a panel queries a data source with cached data, it will either fetch fresh data or use cached data depending on the panel's **interval.** The interval is used to round the query time range to a nearby cached time range, increasing the likelihood of cache hits. Therefore, wider panels and dashboards with shorter time ranges fetch new data more often than narrower panels and dashboards with longer time ranges.
A panel's interval is visible in the [query options]({{< relref "../../panels-visualizations/query-transform-data/" >}}). It is calculated as follows: `time range / max data points`. Max data points are calculated based on the width of the panel. For example, a wide panel with `1000 data points` on a dashboard with a time range of `last 7 days` will retrieve fresh data every 10 minutes: `7d / 1000 = 10m`. In this example, cached data for this panel will be served for up to 10 minutes before Grafana needs to query the data source again for new data.
A panel's interval is visible in the [query options](../../panels-visualizations/query-transform-data/). It is calculated as follows: `time range / max data points`. Max data points are calculated based on the width of the panel. For example, a wide panel with `1000 data points` on a dashboard with a time range of `last 7 days` will retrieve fresh data every 10 minutes: `7d / 1000 = 10m`. In this example, cached data for this panel will be served for up to 10 minutes before Grafana needs to query the data source again for new data.
You can configure a panel to retrieve data more often by increasing the **Max data points** setting in the panel's [query options]({{< relref "../../panels-visualizations/query-transform-data/" >}}).
You can configure a panel to retrieve data more often by increasing the **Max data points** setting in the panel's [query options](../../panels-visualizations/query-transform-data/).
### Caching benefits
@ -108,7 +108,7 @@ By reducing the number of queries and requests sent to data sources, caching can
### Data sources that work with query caching
Query caching works for Grafana's [built-in data sources]({{< relref "../../datasources/#built-in-core-data-sources" >}}), and [backend data source plugins](https://grafana.com/grafana/plugins/?type=datasource) that extend the `DataSourceWithBackend` class in the plugins SDK.
Query caching works for Grafana's [built-in data sources](../../datasources/#built-in-core-data-sources), and [backend data source plugins](https://grafana.com/grafana/plugins/?type=datasource) that extend the `DataSourceWithBackend` class in the plugins SDK.
{{% admonition type="note" %}}
Logs Insights for the CloudWatch data source does not support query caching due to the way logs are requested from AWS.
@ -122,7 +122,7 @@ Some data sources, such as Elasticsearch, Prometheus, and Loki, cache queries th
### Enable and configure query caching
You must be an Org admin or Grafana admin to enable query caching for a data source. For more information on Grafana roles and permissions, refer to [About users and permissions]({{< relref "../roles-and-permissions/" >}}).
You must be an Org admin or Grafana admin to enable query caching for a data source. For more information on Grafana roles and permissions, refer to [About users and permissions](../roles-and-permissions/).
By default, data source queries are not cached. To enable query caching for a single data source:
@ -141,7 +141,7 @@ You can optionally override a data source's configured TTL for individual dashbo
If query caching is enabled and the Cache tab is not visible in a data source's settings, then query caching is not available for that data source.
{{% /admonition %}}
To configure global settings for query caching, refer to the `caching` section of [Configure Grafana Enterprise]({{< relref "../../setup-grafana/configure-grafana/enterprise-configuration/#caching" >}}).
To configure global settings for query caching, refer to the `caching` section of [Configure Grafana Enterprise](../../setup-grafana/configure-grafana/enterprise-configuration/#caching).
### Disable query caching
@ -152,7 +152,7 @@ To disable query caching for a single data source:
1. In the data source list, click the data source that you want to turn off caching for.
1. On the Cache tab, click **Disable**.
To disable query caching for an entire Grafana instance, set the `enabled` flag to `false` in the `caching` section of [Configure Grafana Enterprise]({{< relref "../../setup-grafana/configure-grafana/enterprise-configuration/#caching" >}}). You will no longer see the Cache tab on any data sources, and no data source queries will be cached.
To disable query caching for an entire Grafana instance, set the `enabled` flag to `false` in the `caching` section of [Configure Grafana Enterprise](../../setup-grafana/configure-grafana/enterprise-configuration/#caching). You will no longer see the Cache tab on any data sources, and no data source queries will be cached.
@ -24,8 +24,8 @@ Label-Based Access Control (LBAC) allows fine-grained access control to data sou
LBAC for data sources is currently generally available for `Loki` and in **experimental** for `Prometheus`. Support for additional data sources may be added in future updates.
@ -31,7 +31,7 @@ To be able to use LBAC for Prometheus data sources, you need to enable the featu
LBAC for data sources is available in private preview on Grafana Cloud for Prometheus created with basic authentication. Prometheus data sources for LBAC for data sources can only be created, provisioning is currently not available.
You cannot configure LBAC rules for Grafana-provisioned data sources from the UI. We recommend that you replicate the setting of the provisioned data source in a new data source as described in [LBAC Configuration for New Prometheus Data Source](https://grafana.com/docs/grafana/latest/administration/data-source-management/teamlbac/configure-teamlbac-for-Prometheus/#task-1-lbac-configuration-for-new-Prometheus-data-source) and then add the LBAC configuration to the new data source.
You cannot configure LBAC rules for Grafana-provisioned data sources from the UI. We recommend that you replicate the setting of the provisioned data source in a new data source as described in [LBAC Configuration for New Prometheus Data Source](#task-1-lbac-configuration-for-new-prometheus-data-source) and then add the LBAC configuration to the new data source.
When you become a Grafana Enterprise customer, you gain access to Grafana's premium observability features, including enterprise data source plugins, reporting, and role-based access control. In order to use these [enhanced features of Grafana Enterprise]({{< relref "../../introduction/grafana-enterprise" >}}), you must purchase and activate a Grafana Enterprise license.
When you become a Grafana Enterprise customer, you gain access to Grafana's premium observability features, including enterprise data source plugins, reporting, and role-based access control. In order to use these [enhanced features of Grafana Enterprise](../../introduction/grafana-enterprise/), you must purchase and activate a Grafana Enterprise license.
To purchase a license directly from Grafana Labs, [Contact a Grafana Labs representative](/contact?about=grafana-enterprise). To activate an Enterprise license purchased from Grafana Labs, refer to [Activate an Enterprise license]({{< relref "#activate-an-enterprise-license" >}}).
To purchase a license directly from Grafana Labs, [Contact a Grafana Labs representative](/contact?about=grafana-enterprise). To activate an Enterprise license purchased from Grafana Labs, refer to [Activate an Enterprise license](#activate-an-enterprise-license).
You can also purchase a Grafana Enterprise license through the AWS Marketplace. To learn more about activating a license purchased through AWS, refer to [Activate a Grafana Enterprise license purchased through AWS Marketplace]({{< relref "./activate-aws-marketplace-license/" >}}).
You can also purchase a Grafana Enterprise license through the AWS Marketplace. To learn more about activating a license purchased through AWS, refer to [Activate a Grafana Enterprise license purchased through AWS Marketplace](activate-aws-marketplace-license/).
{{<section>}}
@ -94,9 +94,9 @@ environment variable.
### Step 3. Ensure that the license file's root URL matches the root_url configuration option
Update the [`root_url`]({{< relref "../../setup-grafana/configure-grafana/#root_url" >}}) in your configuration. It should be the URL that users type in their browsers to access the frontend, not the node hostname(s).
Update the [`root_url`](../../setup-grafana/configure-grafana/#root_url) in your configuration. It should be the URL that users type in their browsers to access the frontend, not the node hostname(s).
This is important, because as part of the validation checks at startup, Grafana compares the license URL to the [`root_url`]({{< relref "../../setup-grafana/configure-grafana/#root_url" >}}) in your configuration.
This is important, because as part of the validation checks at startup, Grafana compares the license URL to the [`root_url`](../../setup-grafana/configure-grafana/#root_url) in your configuration.
To finalize the installation of Grafana Enterprise, restart Grafana to enable all Grafana Enterprise features. Refer to [restart Grafana]({{< relref "../../setup-grafana/start-restart-grafana/" >}}) for more information.
To finalize the installation of Grafana Enterprise, restart Grafana to enable all Grafana Enterprise features. Refer to [restart Grafana](../../setup-grafana/start-restart-grafana/) for more information.
## License expiration
@ -123,7 +123,7 @@ If your license has expired, most of Grafana keeps working as normal. Some enter
### Update your license
1. Locate your current `license.jwt` file. In a standard installation it is stored inside the Grafana data directory, which on a typical Linux installation is in `/var/lib/grafana/data`. This location might be overridden in the ini file [Configuration]({{< relref "../../setup-grafana/configure-grafana/" >}}).
1. Locate your current `license.jwt` file. In a standard installation it is stored inside the Grafana data directory, which on a typical Linux installation is in `/var/lib/grafana/data`. This location might be overridden in the ini file [Configuration](../../setup-grafana/configure-grafana/).
```ini
[enterprise]
@ -135,7 +135,7 @@ If your license has expired, most of Grafana keeps working as normal. Some enter
2. Log in to your [Grafana Cloud Account](/login) and make sure you're in the correct organization in the dropdown at the top of the page.
3. Under the **Grafana Enterprise** section in the menu bar to the left, choose licenses and download the currently valid license with which you want to run Grafana. If you cannot see a valid license on Grafana.com, please contact your account manager at Grafana Labs to renew your subscription.
4. Replace the current `license.jwt`-file with the one you've just downloaded.
@ -244,7 +244,7 @@ Your license is controlled by the following rules:
**License expiration date:** The license includes an expiration date, which is the date when a license becomes inactive.
As the license expiration date approaches, you will see a banner in Grafana that encourages you to renew. To learn about how to renew your license and what happens in Grafana when a license expires, refer to [License expiration]({{< relref "#license-expiration" >}}).
As the license expiration date approaches, you will see a banner in Grafana that encourages you to renew. To learn about how to renew your license and what happens in Grafana when a license expires, refer to [License expiration](#license-expiration).
**License token expiration:** Grafana Enterprise requires a valid token, which is automatically renewed.
@ -256,7 +256,7 @@ License token renewal requires internet access, and requires that the `auto_refr
**Grafana License URL:** Your license does not work with an instance of Grafana with a different root URL.
The License URL is the complete URL of your Grafana instance, for example `https://grafana.your-company.com/`. It is defined in the [root_url]({{< relref "../../setup-grafana/configure-grafana/#root_url" >}}) configuration setting.
The License URL is the complete URL of your Grafana instance, for example `https://grafana.your-company.com/`. It is defined in the [root_url](../../setup-grafana/configure-grafana/#root_url) configuration setting.
**Concurrent sessions limit**: As of Grafana Enterprise 7.5, users can initiate up to three concurrent sessions of Grafana.
@ -268,7 +268,7 @@ When a user reaches the session limit, the fourth connection succeeds and the lo
To increase the number of licensed users within Grafana, extend a license, or change your licensed URL, contact [Grafana support](/profile/org#support) or your Grafana Labs account team. They will update your license, which you can activate from within Grafana.
For instructions about how to activate your license after it is updated, refer to [Activate an Enterprise license]({{< relref "#activate-an-enterprise-license" >}}).
For instructions about how to activate your license after it is updated, refer to [Activate an Enterprise license](#activate-an-enterprise-license).
## Usage billing
@ -276,7 +276,7 @@ Standard Grafana Enterprise licenses include a certain number of seats that can
For those use-cases we support usage-based billing, where your license includes a certain number of included users and you are billed on a monthly basis for any excess active users during the month.
Usage billing involves a contractual agreement between you and Grafana Labs and an update to your license, and it is only available if Grafana Enterprise version 10.0.0 or higher is configured to [automatically refresh its license token]({{< relref "../../setup-grafana/configure-grafana/enterprise-configuration/#auto_refresh_license" >}}).
Usage billing involves a contractual agreement between you and Grafana Labs and an update to your license, and it is only available if Grafana Enterprise version 10.0.0 or higher is configured to [automatically refresh its license token](../../setup-grafana/configure-grafana/enterprise-configuration/#auto_refresh_license).
@ -30,7 +30,7 @@ You can deploy Grafana Enterprise in the following ways:
- Using AWS services like ECS, EKS or EC2.
- In an instance outside AWS.
In each case, you must activate the Grafana Enterprise license purchased in AWS Marketplace to take advantage of Grafana Enterprise observability features. Grafana Enterprise licenses purchased through AWS Marketplace are subject to the same [restrictions]({{< relref "../#license-restrictions" >}}) as Grafana Enterprise licensed purchased directly from Grafana Labs.
In each case, you must activate the Grafana Enterprise license purchased in AWS Marketplace to take advantage of Grafana Enterprise observability features. Grafana Enterprise licenses purchased through AWS Marketplace are subject to the same [restrictions](../#license-restrictions) as Grafana Enterprise licensed purchased directly from Grafana Labs.
> To purchase a license directly from Grafana Labs or learn more about other Grafana offerings, [Contact a Grafana Labs representative](/contact?about=grafana-enterprise).
@ -48,7 +48,7 @@ Grafana requires that you configure a database to hold dashboards, users, and ot
### Before you begin
- Ensure that you have a supported Grafana database available.
- For a list of supported databases, refer to [Supported databases]({{< relref "../../../../setup-grafana/installation/#supported-databases" >}}).
- For a list of supported databases, refer to [Supported databases](../../../../setup-grafana/installation/#supported-databases).
- For information about creating a database, refer to [Creating an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html).
- Review the information required to connect to the RDS DB instance. For more information, refer to [Connecting to an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_CommonTasks.Connect.html).
@ -56,7 +56,7 @@ To configure Grafana for high availability:
1. In AWS ECS, use environment variables to update the `database` parameters.
For a list of database parameters, refer to [Configuration]({{< relref "../../../../setup-grafana/configure-grafana/#database" >}}).
For a list of database parameters, refer to [Configuration](../../../../setup-grafana/configure-grafana/#database).
1. Create a revision of the task definition for the ECS Task that runs Grafana Enterprise.
@ -114,4 +114,4 @@ In this task you configure Grafana Enterprise to validate the license with AWS i
1. To restart Grafana and activate your license, update the service running Grafana to use the latest revision of the task definition that you created.
1. After you update the service, navigate to your Grafana instance, sign in with Grafana Admin credentials, and navigate to **Administration > General > Stats and license** to validate that your license is active.
For more information about validating that your license is active, refer to [Grafana Enterprise license restrictions]({{< relref "../../#grafana-enterprise-license-restrictions" >}}).
For more information about validating that your license is active, refer to [Grafana Enterprise license restrictions](../../#grafana-enterprise-license-restrictions).
@ -50,7 +50,7 @@ Grafana requires that you configure a database to hold dashboards, users, and ot
### Before you begin
- Ensure that you have a supported Grafana database available.
- For a list of supported databases, refer to [Supported databases]({{< relref "../../../../setup-grafana/installation/#supported-databases" >}}).
- For a list of supported databases, refer to [Supported databases](../../../../setup-grafana/installation/#supported-databases).
- For information about creating a database, refer to [Creating an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html).
- Review the information required to connect to the RDS DB instance. For more information, refer to [Connecting to an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_CommonTasks.Connect.html).
@ -82,7 +82,7 @@ To configure Grafana for high availability, choose **one** of the following opti
value: [database password]
```
For more information on Grafana High Availability setup, refer to [Set up Grafana for high availability]({{< relref "../../../../setup-grafana/set-up-for-high-availability/" >}}).
For more information on Grafana High Availability setup, refer to [Set up Grafana for high availability](../../../../setup-grafana/set-up-for-high-availability/).
## Task 3: Configure Grafana Enterprise to validate its license with AWS
@ -99,7 +99,7 @@ In this task, you configure Grafana Enterprise to validate the license with AWS
For more information about AWS license permissions, refer to [Actions, resources, and condition keys for AWS License Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awslicensemanager.html).
1. Choose **one** of the following options to update the [license_validation_type]({{< relref "../../../../setup-grafana/configure-grafana/enterprise-configuration/#license_validation_type" >}}) configuration to `aws`:
1. Choose **one** of the following options to update the [license_validation_type](../../../../setup-grafana/configure-grafana/enterprise-configuration/#license_validation_type) configuration to `aws`:
- **Option 1:** Use `kubectl edit configmap grafana` to edit `grafana.ini` add the following section to the configuration:
@ -125,6 +125,6 @@ To restart Grafana on a Kubernetes cluster,
1. After you update the service, navigate to your Grafana instance, sign in with Grafana Admin credentials, and navigate to **Administration > General > Stats and license** to validate that your license is active.
For more information about restarting Grafana, refer to [Restart Grafana]({{< relref "../../../../setup-grafana/start-restart-grafana/" >}}).
For more information about restarting Grafana, refer to [Restart Grafana](../../../../setup-grafana/start-restart-grafana/).
> If you experience issues when you update the EKS cluster, refer to [Amazon EKS troubleshooting](https://docs.aws.amazon.com/eks/latest/userguide/troubleshooting.html).
- [Deploy Grafana on Kubernetes](../../../../setup-grafana/installation/kubernetes/#deploy-grafana-enterprise-on-kubernetes).
## Task 2: Create an AWS IAM user with access to your Grafana Enterprise license
@ -110,7 +110,7 @@ To retrieve your license, Grafana Enterprise requires access to your AWS account
In this task you configure Grafana Enterprise to validate the license with AWS instead of Grafana Labs.
Choose one of the following options to update the [license_validation_type]({{< relref "../../../../setup-grafana/configure-grafana/enterprise-configuration/#license_validation_type" >}}) configuration to `aws`:
Choose one of the following options to update the [license_validation_type](../../../../setup-grafana/configure-grafana/enterprise-configuration/#license_validation_type) configuration to `aws`:
- **Option 1:** In the `[enterprise]` section of the grafana.ini configuration file, add `license_validation_type=aws`.
@ -131,4 +131,4 @@ Choose one of the following options to update the [license_validation_type]({{<
To activate Grafana Enterprise features, start (or restart) Grafana.
For information about restarting Grafana, refer to [Restart Grafana]({{< relref "../../../../setup-grafana/start-restart-grafana/" >}}).
For information about restarting Grafana, refer to [Restart Grafana](../../../../setup-grafana/start-restart-grafana/).
@ -42,4 +42,4 @@ You can use AWS Marketplace to make the following modifications to your Grafana
This action retrieves updated license information from AWS.
> To learn more about licensing and active users, refer to [Activate a Grafana Enterprise license purchased through AWS Marketplace]({{< relref "../" >}}).
> To learn more about licensing and active users, refer to [Activate a Grafana Enterprise license purchased through AWS Marketplace](../).
@ -19,7 +19,7 @@ For detailed information about particular features and how they operate, refer t
## Manage feature toggles
In the **Administration** page, the **Feature Management** section enables authorized users to view and edit the various features that are active in their Grafana environment.
Authorized users include administrators, and users with the [fixed roles]({{< relref "../roles-and-permissions/access-control#fixed-roles" >}}) `featuremgmt.read` and `featuremgmt.write`.
Authorized users include administrators, and users with the [fixed roles](../roles-and-permissions/access-control/#fixed-roles) `featuremgmt.read` and `featuremgmt.write`.
There are different options for visibility and customization depending on the development stage of the feature.
@ -219,7 +219,7 @@ Some data sources, like Prometheus or SQL databases, live on private networks or
To access these data sources from Grafana Cloud, follow our guide to [configure PDC in your network](https://grafana.com/docs/grafana-cloud/connect-externally-hosted/private-data-source-connect/configure-pdc/), and then configure the applicable Grafana data sources to [connect using PDC](https://grafana.com/docs/grafana-cloud/connect-externally-hosted/private-data-source-connect/configure-pdc/#configure-a-data-source-to-use-private-data-source-connect-pdc). Note that PDC is only needed for your network-secured data sources, not for data sources like Splunk or CloudWatch that are accessible over the public internet.
For more information on how PDC works, see our [overview document]({{< relref "../connect-externally-hosted/private-data-source-connect" >}}).
For more information on how PDC works, see our [overview document](/docs/grafana-cloud/connect-externally-hosted/private-data-source-connect/).
### Migrate reports and playlists using Grafana’s HTTP API
@ -46,7 +46,7 @@ The following table summarizes the resources you can share and/or isolate using
The member of one organization cannot view dashboards assigned to another organization. However, a user can belong to multiple organizations.
Grafana Server Administrators are responsible for creating organizations. For more information about the Grafana Server Administrator role, refer to [Grafana server administrators]({{< relref "../roles-and-permissions/#grafana-server-administrators" >}}).
Grafana Server Administrators are responsible for creating organizations. For more information about the Grafana Server Administrator role, refer to [Grafana server administrators](../roles-and-permissions/#grafana-server-administrators).
## View a list of organizations
@ -80,9 +80,9 @@ Create an organization when you want to isolate dashboards and other resources f
1. In the Preferences section, select a home dashboard, time zone, and week start.
For more information about preferences, refer to [Preferences]({{< relref "../organization-preferences/" >}}).
For more information about preferences, refer to [Preferences](../organization-preferences/).
For more information about adding users to an organization, refer to [Add a user to an organization]({{< relref "../user-management/server-user-management/add-remove-user-to-org/" >}}).
For more information about adding users to an organization, refer to [Add a user to an organization](../user-management/server-user-management/add-remove-user-to-org/).
@ -20,9 +20,9 @@ Grafana preferences are basic settings. They control the Grafana UI theme, home
Preferences are sometimes confusing because they can be set at four different levels, listed from highest level to lowest:
- **Server -** Affects all users on the Grafana server. Set by a [Grafana server admin]({{< relref "../roles-and-permissions/#grafana-server-administrators" >}}).
- **Organization -** Affects all users in an organization. Set by an [Organization admin]({{< relref "../roles-and-permissions/#organization-roles" >}}).
- **Team -** Affects all users assigned to a team. Set by an Organization Admin or Team Admin. To learn more about these roles, refer to [Teams and permissions]({{< relref "../roles-and-permissions/#teams-and-permissions" >}}).
- **Server -** Affects all users on the Grafana server. Set by a [Grafana server admin](../roles-and-permissions/#grafana-server-administrators).
- **Organization -** Affects all users in an organization. Set by an [Organization admin](../roles-and-permissions/#organization-roles).
- **Team -** Affects all users assigned to a team. Set by an Organization Admin or Team Admin. To learn more about these roles, refer to [Teams and permissions](../roles-and-permissions/#teams-and-permissions).
- **User account -** Affects the individual user. Set by the user on their own account.
The lowest level always takes precedence. For example, if a user sets their theme to **Light**, then their visualization of Grafana displays the light theme. Nothing at any higher level can override that.
@ -33,7 +33,7 @@ If the user is aware of the change and intended it, then that's great! But if th
In Grafana, you can change your names and emails associated with groups or accounts in the Settings or Preferences. This topic provides instructions for each task.
Some tasks require certain permissions. For more information about roles, refer to [Roles and permissions]({{< relref "../roles-and-permissions/" >}}).
Some tasks require certain permissions. For more information about roles, refer to [Roles and permissions](../roles-and-permissions/).
### Change organization name
@ -75,13 +75,13 @@ To change the team name or email, follow these steps:
### Change user name or email
To learn how to edit your user information, refer to [Edit your profile]({{< relref "../user-management/user-preferences/#edit-your-profile" >}}).
To learn how to edit your user information, refer to [Edit your profile](../user-management/user-preferences/#edit-your-profile).
## Change Grafana UI theme
In Grafana, you can modify the UI theme configured in the Settings or Preferences. Set the UI theme for the server, an organization, a team, or your personal user account using the instructions in this topic.
Some tasks require certain permissions. For more information about roles, refer to [Roles and permissions]({{< relref "../roles-and-permissions/" >}}).
Some tasks require certain permissions. For more information about roles, refer to [Roles and permissions](../roles-and-permissions/).
### Theme options
@ -105,9 +105,9 @@ Here is an example of the light theme.
### Change server UI theme
As a Grafana server administrator, you can change the default Grafana UI theme for all users who are on the server by setting the [default_theme]({{< relref "../../setup-grafana/configure-grafana/#default_theme" >}}) option in the Grafana configuration file.
As a Grafana server administrator, you can change the default Grafana UI theme for all users who are on the server by setting the [default_theme](../../setup-grafana/configure-grafana/#default_theme) option in the Grafana configuration file.
To see what the current settings are, refer to [View server settings]({{< relref "../stats-and-license#view-server-settings" >}}).
To see what the current settings are, refer to [View server settings](../stats-and-license/#view-server-settings).
### Change organization UI theme
@ -141,11 +141,11 @@ You can change the UI theme for your user account. This setting overrides UI the
By default, Grafana uses the timezone in your web browser. However, you can override this setting at the server, organization, team, or individual user level. This topic provides instructions for each task.
Some tasks require certain permissions. For more information about roles, refer to [Roles and permissions]({{< relref "../roles-and-permissions/" >}}).
Some tasks require certain permissions. For more information about roles, refer to [Roles and permissions](../roles-and-permissions/).
### Set server timezone
Grafana server administrators can choose a default timezone for all users on the server by setting the [default_timezone]({{< relref "../../setup-grafana/configure-grafana/#default_timezone" >}}) option in the Grafana configuration file.
Grafana server administrators can choose a default timezone for all users on the server by setting the [default_timezone](../../setup-grafana/configure-grafana/#default_timezone) option in the Grafana configuration file.
### Set organization timezone
@ -179,7 +179,7 @@ You can change the timezone for your user account. This setting overrides timezo
The home dashboard you set is the one all users will see by default when they log in. Click the Grafana icon or **Home** in the breadcrumb to return to it. You can set the home dashboard for the server, an organization, a team, or your personal user account. This topic provides instructions for each task.
Some tasks require certain permissions. For more information about roles, refer to [Roles and permissions]({{< relref "../roles-and-permissions/" >}}).
Some tasks require certain permissions. For more information about roles, refer to [Roles and permissions](../roles-and-permissions/).
### Set the home dashboard for the server
@ -194,7 +194,7 @@ Users with the Grafana Server Admin flag on their account or access to the confi
#### 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. Update your configuration file to set the path to the JSON file. Refer to [default_home_dashboard_path]({{< relref "../../setup-grafana/configure-grafana/#default_home_dashboard_path" >}}) for more information about modifying the Grafana configuration files.
1. Update your configuration file to set the path to the JSON file. Refer to [default_home_dashboard_path](../../setup-grafana/configure-grafana/#default_home_dashboard_path) for more information about modifying the Grafana configuration files.
```ini
[dashboards]
@ -244,7 +244,7 @@ You can choose your own personal home dashboard. This setting overrides all home
### Change server language
Grafana server administrators can change the default Grafana UI language for all users on the server by setting the [default_language]({{< relref "../../setup-grafana/configure-grafana/#default_language" >}}) option in the Grafana configuration file.
Grafana server administrators can change the default Grafana UI language for all users on the server by setting the [default_language](../../setup-grafana/configure-grafana/#default_language) option in the Grafana configuration file.
@ -56,17 +56,17 @@ Use app plugins when you want an out-of-the-box monitoring experience.
### Managing access for app plugins
Customize access to app plugins with [RBAC]({{< relref "../roles-and-permissions/access-control/rbac-for-app-plugins" >}}).
Customize access to app plugins with [RBAC](../roles-and-permissions/access-control/rbac-for-app-plugins/).
By default, the Viewer, Editor and Admin roles have access to all app plugins that their Organization role allows them to access. Access is granted by the `fixed:plugins.app:reader` role.
{{% admonition type="note" %}}
To prevent users from seeing an app plugin, refer to [these permissions scenarios]({{< relref "../roles-and-permissions/access-control/plan-rbac-rollout-strategy#prevent-viewers-from-accessing-an-app-plugin" >}}).
To prevent users from seeing an app plugin, refer to [these permissions scenarios](../roles-and-permissions/access-control/plan-rbac-rollout-strategy/#prevent-viewers-from-accessing-an-app-plugin).
{{% /admonition %}}
## Plugin catalog
The Grafana plugin catalog allows you to browse and manage plugins from within Grafana. Only Grafana server administrators and Organization administrators can access and use the plugin catalog. For more information about Grafana roles and permissions, refer to [Roles and permissions]({{< relref "../roles-and-permissions" >}}).
The Grafana plugin catalog allows you to browse and manage plugins from within Grafana. Only Grafana server administrators and Organization administrators can access and use the plugin catalog. For more information about Grafana roles and permissions, refer to [Roles and permissions](../roles-and-permissions/).
The following access rules apply depending on the user role:
@ -88,7 +88,7 @@ The Grafana plugin catalog is designed to work with a single Grafana server inst
_Video shows the Plugin catalog in a previous version of Grafana._
{{% admonition type="note" %}}
If required, the Grafana plugin catalog can be disabled using the `plugin_admin_enabled` flag in the [configuration]({{< relref "../../setup-grafana/configure-grafana/#plugin_admin_enabled" >}}) file.
If required, the Grafana plugin catalog can be disabled using the `plugin_admin_enabled` flag in the [configuration](../../setup-grafana/configure-grafana/#plugin_admin_enabled) file.
{{% /admonition %}}
<aid="#plugin-catalog-entry"></a>
@ -114,7 +114,7 @@ There are also additional ways to install plugins depending on your setup.
#### Install a plugin using Grafana CLI
Grafana CLI allows you to install, upgrade, and manage your Grafana plugins using a command line. For more information about Grafana CLI plugin commands, refer to [Plugin commands]({{< relref "../../cli/#plugins-commands" >}}).
Grafana CLI allows you to install, upgrade, and manage your Grafana plugins using a command line. For more information about Grafana CLI plugin commands, refer to [Plugin commands](../../cli/#plugins-commands).
#### Install a plugin from a ZIP file
@ -126,7 +126,7 @@ Download the archive containing the plugin assets, and install it by extracting
The path to the plugin directory is defined in the configuration file. For more information, refer to [Configuration]({{< relref "../../setup-grafana/configure-grafana/#plugins" >}}).
The path to the plugin directory is defined in the configuration file. For more information, refer to [Configuration](../../setup-grafana/configure-grafana/#plugins).
####Install a plugin using Grafana configuration
@ -134,7 +134,7 @@ The path to the plugin directory is defined in the configuration file. For more
This feature requires Grafana 11.5.0 or later.
{{% /admonition %}}
You can install plugins by adding the plugin ID to the `plugins.preinstall` section in the Grafana configuration file. This prevents the plugin from being accidentally uninstalled and can be auto-updated. For more information, refer to [Configuration]({{< relref "../../setup-grafana/configure-grafana/#plugins" >}}).
You can install plugins by adding the plugin ID to the `plugins.preinstall` section in the Grafana configuration file. This prevents the plugin from being accidentally uninstalled and can be auto-updated. For more information, refer to [Configuration](../../setup-grafana/configure-grafana/#plugins).
#### Install a plugin in air-gapped environment
@ -224,7 +224,7 @@ All plugins are signed under a _signature level_. The signature level determines
Unsigned plugins are not supported in Grafana Cloud.
{{% /admonition %}}
We strongly recommend that you don't run unsigned plugins in your Grafana instance. However, if you're aware of the risks and you still want to load an unsigned plugin, refer to [Configuration]({{< relref "../../setup-grafana/configure-grafana/#allow_loading_unsigned_plugins" >}}).
We strongly recommend that you don't run unsigned plugins in your Grafana instance. However, if you're aware of the risks and you still want to load an unsigned plugin, refer to [Configuration](../../setup-grafana/configure-grafana/#allow_loading_unsigned_plugins).
If you've allowed loading of an unsigned plugin, then Grafana writes a warning message to the server log:
@ -282,7 +282,7 @@ Plugins running inside the Frontend Sandbox should continue to work normally wit
The Frontend Sandbox feature is currently behind the `pluginsFrontendSandbox` feature flag. To enable it, you'll need to:
1. Enable the feature flag in your Grafana configuration. For more information about enabling feature flags, refer to [Configure feature toggles](/setup-grafana/configure-grafana/feature-toggles/).
1. Enable the feature flag in your Grafana configuration. For more information about enabling feature flags, refer to [Configure feature toggles](/docs/grafana/<GRAFANA_VERSION>/setup-grafana/configure-grafana/feature-toggles/).
2. For self-hosted Grafana installations, add the plugin IDs you want to sandbox in the `security` section using the `enable_frontend_sandbox_for_plugins` configuration option.
@ -20,7 +20,7 @@ This makes GitOps more natural since data sources and dashboards can be defined
## Configuration file
Refer to [Configuration]({{< relref "../../setup-grafana/configure-grafana/" >}}) for more information on what you can configure in `grafana.ini`.
Refer to [Configuration](../../setup-grafana/configure-grafana/) for more information on what you can configure in `grafana.ini`.
### Configuration file locations
@ -73,7 +73,7 @@ Therefore, we heavily rely on the expertise of the community.
## Data sources
You can manage data sources in Grafana by adding YAML configuration files in the [`provisioning/datasources`]({{< relref "../../setup-grafana/configure-grafana#provisioning" >}}) directory.
You can manage data sources in Grafana by adding YAML configuration files in the [`provisioning/datasources`](../../setup-grafana/configure-grafana/#provisioning) directory.
Each configuration file can contain a list of `datasources` to add or update during startup.
If the data source already exists, Grafana reconfigures it to match the provisioned configuration file.
@ -92,7 +92,7 @@ This prevents old configurations from overwriting newer ones if you have differe
### Example data source configuration file
This example provisions a [Graphite data source]({{< relref "../../datasources/graphite" >}}):
This example provisions a [Graphite data source](../../datasources/graphite/):
```yaml
# Configuration file version
@ -172,14 +172,14 @@ datasources:
editable: false
```
For provisioning examples of specific data sources, refer to that [data source's documentation]({{< relref "../../datasources" >}}).
For provisioning examples of specific data sources, refer to that [data source's documentation](../../datasources/).
#### JSON data
Not all data sources have the same configuration settings. Only the most common fields are included in examples.
To provision the rest of a data source's settings, include them as a JSON blob in the `jsonData` field.
Common settings in the [built-in core data sources]({{< relref "../../datasources#built-in-core-data-sources" >}}) include:
Common settings in the [built-in core data sources](../../datasources/#built-in-core-data-sources) include:
{{<admonitiontype="note">}}
Data sources tagged with _HTTP\*_ communicate using the HTTP protocol, which includes all core data source plugins except MySQL, PostgreSQL, and MSSQL.
@ -240,11 +240,11 @@ Data sources tagged with _HTTP\*_ communicate using the HTTP protocol, which inc
| implementation | string | AlertManager | The implementation of the AlertManager data source, such as `prometheus`, `cortex` or `mimir` |
| handleGrafanaManagedAlerts | boolean | AlertManager | When enabled, Grafana-managed alerts are sent to this Alertmanager |
For examples of specific data sources' JSON data, refer to that [data source's documentation]({{< relref "../../datasources" >}}).
For examples of specific data sources' JSON data, refer to that [data source's documentation](../../datasources/).
#### Secure JSON Data
Secure JSON data is a map of settings that are encrypted with a [secret key]({{< relref "../../setup-grafana/configure-grafana#secret_key" >}}) from the Grafana configuration.
Secure JSON data is a map of settings that are encrypted with a [secret key](../../setup-grafana/configure-grafana/#secret_key) from the Grafana configuration.
The encryption hides content from the users of the application.
This should be used for storing the TLS Cert and password that Grafana appends to the request on the server side.
All of these settings are optional.
@ -285,7 +285,7 @@ datasources:
## Plugins
You can manage plugin applications in Grafana by adding one or more YAML configuration files in the [`provisioning/plugins`]({{< relref "../../setup-grafana/configure-grafana#provisioning" >}}) directory.
You can manage plugin applications in Grafana by adding one or more YAML configuration files in the [`provisioning/plugins`](../../setup-grafana/configure-grafana/#provisioning) directory.
Each configuration file can contain a list of `apps` that update during start up.
Grafana updates each app to match the configuration file.
@ -320,7 +320,7 @@ apps:
## Dashboards
You can manage dashboards in Grafana by adding one or more YAML configuration files in the [`provisioning/dashboards`]({{< relref "../../setup-grafana/configure-grafana#dashboards" >}}) directory.
You can manage dashboards in Grafana by adding one or more YAML configuration files in the [`provisioning/dashboards`](../../setup-grafana/configure-grafana/#dashboards) directory.
Each configuration file can contain a list of `dashboards providers` that load dashboards into Grafana from the local filesystem.
The dashboard provider configuration file looks somewhat like this:
@ -380,7 +380,7 @@ The JSON definition in the input field when using `Copy JSON to Clipboard` or `S
### Reusable dashboard URLs
If the dashboard in the JSON file contains an [UID]({{< relref "../../dashboards/build-dashboards/view-dashboard-json-model" >}}), Grafana forces insert/update on that UID.
If the dashboard in the JSON file contains an [UID](../../dashboards/build-dashboards/view-dashboard-json-model/), Grafana forces insert/update on that UID.
This allows you to migrate dashboards between Grafana instances and provisioning Grafana from configuration without breaking the URLs given because the new dashboard URL uses the UID as identifier.
When Grafana starts, it updates and inserts all dashboards available in the configured folders.
If you modify the file, then the dashboard is also updated.
@ -436,7 +436,7 @@ You can't create nested folders structures, where you have folders within folder
## Alerting
For information on provisioning Grafana Alerting, refer to [Provision Grafana Alerting resources]({{< relref "../../alerting/set-up/provision-alerting-resources/" >}}).
For information on provisioning Grafana Alerting, refer to [Provision Grafana Alerting resources](../../alerting/set-up/provision-alerting-resources/).
### Supported settings
@ -651,5 +651,5 @@ The following sections detail the supported settings and secure settings for eac
Grafana Enterprise supports:
- [Provisioning role-based access control with Grafana]({{< relref "../roles-and-permissions/access-control/rbac-grafana-provisioning/" >}})
- [Provisioning role-based access control with Terraform]({{< relref "../roles-and-permissions/access-control/rbac-terraform-provisioning/" >}})
- [Provisioning role-based access control with Grafana](../roles-and-permissions/access-control/rbac-grafana-provisioning/)
- [Provisioning role-based access control with Terraform](../roles-and-permissions/access-control/rbac-terraform-provisioning/)
@ -35,7 +35,7 @@ Recorded queries only work with backend data source plugins. Refer to [Backend d
- single row and column - A query that returns a single row and column.
- row count - A query that returns meaningful rows to be counted.
- expression - Any expression. To learn more about creating and using expressions, see [Write expression queries]({{< relref "../../panels-visualizations/query-transform-data/expression-queries" >}}).
- expression - Any expression. To learn more about creating and using expressions, see [Write expression queries](../../panels-visualizations/query-transform-data/expression-queries/).
- dataplane numeric - A query that returns [dataplane numeric kind](/developers/dataplane/numeric) data.
After a recorded query is created or enabled, it immediately creates a snapshot and continues to create snapshots at the set interval. The recorded query stops taking snapshots when it is disabled, deleted, or when Grafana is not running. Data points are gathered in the backend by running the recorded query and forwarding each result to a remote-write enabled Prometheus instance.
@ -48,7 +48,7 @@ To use a recorded query, create one and add it to a dashboard. After that, it ca
1. Find/create a query you want to record on a dashboard in an edit panel. The query must only return one row and column. If it returns more, you can still record the number of results returned using the “count” option.
- The query's data source must be a backend data source.
- Expressions can be used to aggregate data from a time series query. Refer to [Write expression queries]({{< relref "../../panels-visualizations/query-transform-data/expression-queries" >}}) to learn more about creating and using expressions.
- Expressions can be used to aggregate data from a time series query. Refer to [Write expression queries](../../panels-visualizations/query-transform-data/expression-queries/) to learn more about creating and using expressions.
1. Click the record query button located in the top right of the query editor.
1. Enter recorded query information. All fields are required unless otherwise indicated.
- Name - Name of the recorded query.
@ -68,7 +68,7 @@ You can add existing recorded queries to panels in a dashboard. For each recorde
1. If you want to filter recorded queries by data source, select a data source from the filter by data source drop down menu.
1. Click the `Add` button on your recorded query to add it to the panel.
After adding your recorded query to the panel, the panel data source will become `-- Mixed --`. Your recorded query is represented by a `Prometheus` query with a name label matching your recorded query name. Refer to [Prometheus]({{< relref "../../datasources/prometheus/" >}}) to learn more about the `Prometheus` data source.
After adding your recorded query to the panel, the panel data source will become `-- Mixed --`. Your recorded query is represented by a `Prometheus` query with a name label matching your recorded query name. Refer to [Prometheus](../../datasources/prometheus/) to learn more about the `Prometheus` data source.
If after adding a recorded query, a query with a `-- Mixed --` data source instead of `Prometheus` data source appears, this could mean that a Prometheus remote write target was not set up for recorded queries. Refer to [Remote write target](#remote-write-target) to set up a remote write point.
@ -34,14 +34,14 @@ If you are running Grafana Enterprise, you can also control access to data sourc
A Grafana server administrator manages server-wide settings and access to resources such as organizations, users, and licenses. Grafana includes a default server administrator that you can use to manage all of Grafana, or you can divide that responsibility among other server administrators that you create.
{{% admonition type="note" %}}
The server administrator role does not mean that the user is also a Grafana [organization administrator]({{< relref "#organization-roles" >}}).
The server administrator role does not mean that the user is also a Grafana [organization administrator](#organization-roles).
{{% /admonition %}}
A server administrator can perform the following tasks:
- Manage users and permissions
- Create, edit, and delete organizations
- View server-wide settings defined in the [Configuration]({{< relref "../../setup-grafana/configure-grafana/" >}}) file
- View server-wide settings defined in the [Configuration](../../setup-grafana/configure-grafana/) file
- View Grafana server statistics, including total users and active sessions
- Upgrade the server to Grafana Enterprise.
@ -49,7 +49,7 @@ A server administrator can perform the following tasks:
The server administrator role does not exist in Grafana Cloud.
{{% /admonition %}}
To assign or remove server administrator privileges, see [Server user management]({{< relref "../user-management/server-user-management/assign-remove-server-admin-privileges/" >}}).
To assign or remove server administrator privileges, see [Server user management](../user-management/server-user-management/assign-remove-server-admin-privileges/).
## Organization users and permissions
@ -69,11 +69,11 @@ Permissions assigned to a user within an organization control the extent to whic
- library panels
- API keys
For more information about managing organization users, see [User management]({{< relref "../user-management/manage-org-users/" >}}).
For more information about managing organization users, see [User management](../user-management/manage-org-users/).
### Organization roles
Organization role-based permissions are global, which means that each permission level applies to all Grafana resources within an given organization. For example, an editor can see and update _all_ dashboards in an organization, unless those dashboards have been specifically restricted using [dashboard permissions]({{< relref "../user-management/manage-dashboard-permissions/" >}}).
Organization role-based permissions are global, which means that each permission level applies to all Grafana resources within an given organization. For example, an editor can see and update _all_ dashboards in an organization, unless those dashboards have been specifically restricted using [dashboard permissions](../user-management/manage-dashboard-permissions/).
Grafana uses the following roles to control user access:
@ -117,9 +117,9 @@ You can specify the following permissions to dashboards and folders.
> Important: When a user creates a dashboard or a folder they are automatically granted **Admin** permissions for it.
For more information about assigning dashboard folder permissions, refer to [Grant dashboard folder permissions]({{< relref "../user-management/manage-dashboard-permissions/#grant-dashboard-folder-permissions" >}}).
For more information about assigning dashboard folder permissions, refer to [Grant dashboard folder permissions](../user-management/manage-dashboard-permissions/#grant-dashboard-folder-permissions).
For more information about assigning dashboard permissions, refer to [Grant dashboard permissions]({{< relref "../user-management/manage-dashboard-permissions/#grant-dashboard-permissions" >}}).
For more information about assigning dashboard permissions, refer to [Grant dashboard permissions](../user-management/manage-dashboard-permissions/#grant-dashboard-permissions).
## Teams and permissions
@ -132,13 +132,13 @@ You can assign a team member one of the following permissions:
Because teams exist inside an organization, the organization administrator can manage all teams.
For details on managing teams, see [Team management]({{< relref "../team-management/" >}}).
For details on managing teams, see [Team management](../team-management/).
## Grafana Enterprise user permissions features
While Grafana OSS includes a robust set of permissions and settings that you can use to manage user access to server and organization resources, you might find that you require additional capabilities.
[Grafana Enterprise]({{< relref "../../introduction/grafana-enterprise">}}) provides the following permissions-related features:
[Grafana Enterprise](../../introduction/grafana-enterprise/) provides the following permissions-related features:
- Data source permissions
- Role-based access control (RBAC)
@ -147,13 +147,13 @@ While Grafana OSS includes a robust set of permissions and settings that you can
By default, a user can query any data source in an organization, even if the data source is not linked to the user's dashboards.
Data source permissions enable you to restrict data source query permissions to specific **Users**, **Service Accounts**, and **Teams**. For more information about assigning data source permissions, refer to [Data source permissions]({{< relref "../data-source-management/#data-source-permissions/" >}}).
Data source permissions enable you to restrict data source query permissions to specific **Users**, **Service Accounts**, and **Teams**. For more information about assigning data source permissions, refer to [Data source permissions](../data-source-management/#data-source-permissions/).
### Role-based access control
RBAC provides you a way of granting, changing, and revoking user read and write access to Grafana resources, such as users, reports, and authentication.
For more information about RBAC, refer to [Role-based access control]({{< relref "../roles-and-permissions/access-control/" >}}).
For more information about RBAC, refer to [Role-based access control](access-control/).
@ -25,11 +25,11 @@ This setting contains information about tools that Grafana Server Admins can use
## View Grafana server settings
> Refer to [Role-based access control]({{< relref "../roles-and-permissions/access-control" >}}) in Grafana Enterprise to understand how you can control access with RBAC permissions.
> Refer to [Role-based access control](../roles-and-permissions/access-control/) in Grafana Enterprise to understand how you can control access with RBAC permissions.
If you are a Grafana server administrator, use the Settings tab to view the settings that are applied to your Grafana server via the [Configuration]({{< relref "../../setup-grafana/configure-grafana#configuration-file-location" >}}) file and any environmental variables.
If you are a Grafana server administrator, use the Settings tab to view the settings that are applied to your Grafana server via the [Configuration](../../setup-grafana/configure-grafana/#configuration-file-location) file and any environmental variables.
> **Note:** Only Grafana server administrators can access the **Server Admin** menu. For more information about about administrative permissions, refer to [Roles and permissions]({{< relref "../roles-and-permissions#grafana-server-administrators" >}}).
> **Note:** Only Grafana server administrators can access the **Server Admin** menu. For more information about about administrative permissions, refer to [Roles and permissions](../roles-and-permissions/#grafana-server-administrators).
### View server settings
@ -38,15 +38,15 @@ If you are a Grafana server administrator, use the Settings tab to view the sett
### Available settings
For a full list of server settings, refer to [Configuration]({{< relref "../../setup-grafana/configure-grafana#server" >}}).
For a full list of server settings, refer to [Configuration](../../setup-grafana/configure-grafana/#server).
## View Grafana server stats
> Refer to [Role-based access control]({{< relref "../roles-and-permissions/access-control" >}}) in Grafana Enterprise to understand how you can control access with RBAC permissions.
> Refer to [Role-based access control](../roles-and-permissions/access-control/) in Grafana Enterprise to understand how you can control access with RBAC permissions.
If you are a Grafana server admin, then you can view useful statistics about your Grafana server in the Stats & Licensing tab.
> **Note:** Only Grafana server administrators can access the **Server Admin** menu. For more information about about administrative permissions, refer to [Roles and permissions]({{< relref "../roles-and-permissions#grafana-server-administrators" >}}).
> **Note:** Only Grafana server administrators can access the **Server Admin** menu. For more information about about administrative permissions, refer to [Roles and permissions](../roles-and-permissions/#grafana-server-administrators).
Dashboard and folder permissions enable you to grant a viewer the ability to edit and save dashboard changes, or limit an editor's permission to modify a dashboard.
For more information about dashboard permissions, refer to [Dashboard permissions]({{< relref "../../roles-and-permissions/#dashboard-permissions" >}}).
For more information about dashboard permissions, refer to [Dashboard permissions](../../roles-and-permissions/#dashboard-permissions).
## Grant folder permissions
@ -23,7 +23,7 @@ When you grant user permissions for folders, that setting applies to all dashboa
### Before you begin
- Ensure you have organization administrator privileges
- Identify the dashboard folder permissions you want to modify and the users, service accounts or teams to which you want to grant access. For more information about dashboard permissions, refer to [Dashboard permissions]({{< relref "../../roles-and-permissions/#dashboard-permissions" >}}).
- Identify the dashboard folder permissions you want to modify and the users, service accounts or teams to which you want to grant access. For more information about dashboard permissions, refer to [Dashboard permissions](../../roles-and-permissions/#dashboard-permissions).
**To grant dashboard folder permissions**:
@ -65,7 +65,7 @@ Grant dashboard permissions when you want to restrict or enhance dashboard acces
# Edit dashboard permissions
Edit dashboard permissions when you are want to enhance or restrict a user's access to a dashboard. For more information about dashboard permissions, refer to [Dashboard permissions]({{< relref "../../roles-and-permissions/#dashboard-permissions" >}}).
Edit dashboard permissions when you are want to enhance or restrict a user's access to a dashboard. For more information about dashboard permissions, refer to [Dashboard permissions](../../roles-and-permissions/#dashboard-permissions).
### Before you begin
@ -135,4 +135,4 @@ Folder permissions settings:
Result: User1 has editor permissions for the folder because user1 has permissions on a folder that contains this folder.
> Refer to [Role-based access Control]({{< relref "../../roles-and-permissions/access-control/" >}}) in Grafana Enterprise to understand how to use RBAC permissions to restrict access to dashboards, folders, administrative functions, and other resources.
> Refer to [Role-based access Control](../../roles-and-permissions/access-control/) in Grafana Enterprise to understand how to use RBAC permissions to restrict access to dashboards, folders, administrative functions, and other resources.
Organization administrators can invite users to join their organization. Organization users have access to organization resources based on their role, which is **Admin**, **Editor**, or **Viewer**. Permissions associated with each role determine the tasks a user can perform in the system.
For more information about organization user permissions, refer to [Organization users and permissions]({{< relref "../../roles-and-permissions/#organization-users-and-permissions" >}}).
For more information about organization user permissions, refer to [Organization users and permissions](../../roles-and-permissions/#organization-users-and-permissions).
{{% admonition type="note" %}}
Users added at the organization level will have access to all stacks and services by default, without the ability to be filtered by stack unless Single Sign-On (SSO) or Role-Based Access Control (RBAC) is implemented.
@ -41,15 +41,15 @@ You can see a list of users with accounts in your Grafana organization. If neces
1. Navigate to **Administration > Users and access > Users**.
{{% admonition type="note" %}}
If you have [server administrator]({{< relref "../../roles-and-permissions/#grafana-server-administrators" >}}) permissions, you can also [view a global list of users]({{< relref "../server-user-management#view-a-list-of-users" >}}) in the Server Admin section of Grafana.
If you have [server administrator](../../roles-and-permissions/#grafana-server-administrators) permissions, you can also [view a global list of users](../server-user-management/#view-a-list-of-users) in the Server Admin section of Grafana.
{{% /admonition %}}
## Change a user's organization permissions
Update user permissions when you want to enhance or restrict a user's access to organization resources. For more information about organization permissions, refer to [Organization roles]({{< relref "../../roles-and-permissions/#organization-roles" >}}).
Update user permissions when you want to enhance or restrict a user's access to organization resources. For more information about organization permissions, refer to [Organization roles](../../roles-and-permissions/#organization-roles).
{{% admonition type="note" %}}
Organization roles sync from the authentication provider on user sign-in. To prevent synchronization of organization roles from the authentication provider regardless of their role in the authentication provider, then refer to the `skip_org_role_sync` setting in your Grafana configuration. Refer to [skip org role sync]({{< relref "../../../setup-grafana/configure-grafana/#authgrafana_com-skip_org_role_sync" >}}) for more information.
Organization roles sync from the authentication provider on user sign-in. To prevent synchronization of organization roles from the authentication provider regardless of their role in the authentication provider, then refer to the `skip_org_role_sync` setting in your Grafana configuration. Refer to [skip org role sync](../../../setup-grafana/configure-grafana/#authgrafana_com-skip_org_role_sync) for more information.
{{% /admonition %}}
### Before you begin
@ -69,7 +69,7 @@ Organization roles sync from the authentication provider on user sign-in. To pre
1. Click **Update**.
{{% admonition type="note" %}}
If you have [server administrator]({{< relref "../../roles-and-permissions/#grafana-server-administrators" >}}) permissions, you can also [change a user's organization permissions]({{< relref "../server-user-management/change-user-org-permissions/" >}}) in the Server Admin section.
If you have [server administrator](../../roles-and-permissions/#grafana-server-administrators) permissions, you can also [change a user's organization permissions](../server-user-management/change-user-org-permissions/) in the Server Admin section.
{{% /admonition %}}
## Invite a user to join an organization
@ -80,14 +80,14 @@ When you invite users to join an organization, you assign the **Admin**, **Edito
- If the user is new to Grafana, then use their email address to issue an invitation. The system automatically creates the user account on first sign in.
{{% admonition type="note" %}}
If you have [server administrator]({{< relref "../../roles-and-permissions/#grafana-server-administrators" >}}) permissions, you can also manually [add a user to an organization]({{< relref "../server-user-management/add-remove-user-to-org/" >}}).
If you have [server administrator](../../roles-and-permissions/#grafana-server-administrators) permissions, you can also manually [add a user to an organization](../server-user-management/add-remove-user-to-org/).
{{% /admonition %}}
### Before you begin
- Ensure you have organization administrator privileges.
- If the user already has access to Grafana, obtain their user name.
- Determine the permissions you want to assign to the user. For more information about organization permissions, refer to [Organization roles]({{< relref "../../roles-and-permissions/#organization-roles" >}}).
- Determine the permissions you want to assign to the user. For more information about organization permissions, refer to [Organization roles](../../roles-and-permissions/#organization-roles).
**To invite or add an existing user account to your organization**:
@ -105,7 +105,7 @@ If you have [server administrator]({{< relref "../../roles-and-permissions/#graf
| Email or username | Either the email or username that the user will use to sign in to Grafana. |
| Name | The user's name. |
| Role | Click the organization role to assign this user. For more information about organization roles, refer to [Organization roles]({{< relref "../../roles-and-permissions/#organization-roles" >}}).. |
| Role | Click the organization role to assign this user. For more information about organization roles, refer to [Organization roles](../../roles-and-permissions/#organization-roles).. |
| Send invite email | Switch to on if your organization has configured. The system sends an email to the user inviting them to sign in to Grafana and join the organization. Switch to off if you are not using email. The user can sign in to Grafana with the email or username you entered. |
1. Click **Submit**.
@ -156,4 +156,4 @@ This action does not remove the user account from the Grafana server.
1. Click the red **X** to remove the user from the organization.
> **Note:** If you have [server administrator]({{< relref "../../roles-and-permissions/#grafana-server-administrators" >}}) permissions, you can also [remove a user from an organization]({{< relref "../server-user-management/add-remove-user-to-org/#remove-a-user-from-an-organization" >}}) on the Users page of the Server Admin section.
> **Note:** If you have [server administrator](../../roles-and-permissions/#grafana-server-administrators) permissions, you can also [remove a user from an organization](../server-user-management/add-remove-user-to-org/#remove-a-user-from-an-organization) on the Users page of the Server Admin section.
A _user_ is defined as any individual who can log in to Grafana. Each user is associated with a _role_ that includes _permissions_. Permissions determine the tasks a user can perform in the system.
If you have [server administrator]({{< relref "../../roles-and-permissions/#grafana-server-administrators" >}}) permissions in Grafana, you can manage all users for a Grafana instance in the Server Admin section:
If you have [server administrator](../../roles-and-permissions/#grafana-server-administrators) permissions in Grafana, you can manage all users for a Grafana instance in the Server Admin section:
{{<section>}}
If you have [organization administrator]({{< relref "../../roles-and-permissions/#organization-roles" >}}) permissions and _not_ [server administrator]({{< relref "../../roles-and-permissions/#grafana-server-administrators" >}}) permissions, refer to [Manage users in a organization]({{< relref "../manage-org-users/" >}}).
If you have [organization administrator](../../roles-and-permissions/#organization-roles) permissions and _not_ [server administrator](../../roles-and-permissions/#grafana-server-administrators) permissions, refer to [Manage users in a organization](../manage-org-users/).
For more information about user roles and permissions, refer to [Roles and permissions]({{< relref "../../roles-and-permissions/" >}}). For more information about managing users in general, see [User management]({{< relref "../" >}}).
For more information about user roles and permissions, refer to [Roles and permissions](../../roles-and-permissions/). For more information about managing users in general, see [User management](../).
## View a list of users
@ -42,7 +42,7 @@ You can see a list of users with accounts on your Grafana server. This action mi
1. Click **Administration** in the left-side menu, **Users and access**, and then **Users**.
{{% admonition type="note" %}}
If you have [organization administrator]({{< relref "../../roles-and-permissions/#organization-roles" >}}) permissions and _not_ [server administrator]({{< relref "../../roles-and-permissions/#grafana-server-administrators" >}}) permissions, you can still [view of list of users in a given organization]({{< relref "../manage-org-users/#view-a-list-of-organization-users" >}}).
If you have [organization administrator](../../roles-and-permissions/#organization-roles) permissions and _not_ [server administrator](../../roles-and-permissions/#grafana-server-administrators) permissions, you can still [view of list of users in a given organization](../manage-org-users/#view-a-list-of-organization-users).
{{% /admonition %}}
## View user details
@ -104,7 +104,7 @@ Edit a user account when you want to modify user login credentials, or delete, d
Add users when you want to manually provide individuals with access to Grafana.
When you create a user using this method, you must create their password. The user does not receive a notification by email. To invite a user to Grafana and allow them to create their own password, [invite a user to join an organization]({{< relref "../manage-org-users#invite-a-user-to-join-an-organization" >}}).
When you create a user using this method, you must create their password. The user does not receive a notification by email. To invite a user to Grafana and allow them to create their own password, [invite a user to join an organization](../manage-org-users/#invite-a-user-to-join-an-organization).
When you configure advanced authentication using Oauth, SAML, LDAP, or the Auth proxy, users are created automatically.
@ -119,10 +119,10 @@ When you configure advanced authentication using Oauth, SAML, LDAP, or the Auth
1. Click **New user**.
1. Complete the fields and click **Create user**.
When you create a user, the system assigns the user viewer permissions in a default organization, which you can change. You can now [add a user to a second organization]({{< relref "add-remove-user-to-org/" >}}).
When you create a user, the system assigns the user viewer permissions in a default organization, which you can change. You can now [add a user to a second organization](add-remove-user-to-org/).
{{% admonition type="note" %}}
If you have [organization administrator]({{< relref "../../roles-and-permissions/#organization-roles" >}}) permissions and _not_ [server administrator]({{< relref "../../roles-and-permissions/#grafana-server-administrators" >}}) permissions, you can still add users by [inviting a user to join an organization]({{< relref "../manage-org-users#invite-a-user-to-join-an-organization" >}}).
If you have [organization administrator](../../roles-and-permissions/#organization-roles) permissions and _not_ [server administrator](../../roles-and-permissions/#grafana-server-administrators) permissions, you can still add users by [inviting a user to join an organization](../manage-org-users/#invite-a-user-to-join-an-organization).
Server administrators can add and remove users in organizations. To do this as an organization administrator, see [Manage users in an organization]({{< relref "../../manage-org-users/" >}}).
Server administrators can add and remove users in organizations. To do this as an organization administrator, see [Manage users in an organization](../../manage-org-users/).
## Add a user to an organization
@ -24,9 +24,9 @@ You are required to specify an Admin role for each organization. The first user
### Before you begin
- [Create an organization]({{< relref "../../../organization-management/#create-an-organization" >}})
- [Add a user]({{< relref "./#add-a-user" >}}) to Grafana
- Ensure you have [Grafana server administrator privileges]({{< relref "./assign-remove-server-admin-privileges" >}})
- [Create an organization](../../../organization-management/#create-an-organization)
- [Add a user](./#add-a-user) to Grafana
- Ensure you have [Grafana server administrator privileges](../assign-remove-server-admin-privileges/)
**To add a user to an organization**:
@ -36,14 +36,14 @@ You are required to specify an Admin role for each organization. The first user
1. In the Organizations section, click **Add user to organization**.
1. Select an organization and a role.
For more information about user permissions, refer to [Organization roles]({{< relref "../../../roles-and-permissions#organization-roles" >}}).
For more information about user permissions, refer to [Organization roles](../../../roles-and-permissions/#organization-roles).
1. Click **Add to organization**.
The next time the user signs in, they will be able to navigate to their new organization using the Switch Organizations option in the user profile menu.
{{% admonition type="note" %}}
If you have [organization administrator]({{< relref "../../../roles-and-permissions#organization-roles" >}}) permissions and _not_ [server administrator]({{< relref "../../../roles-and-permissions#grafana-server-administrators" >}}) permissions, you can still [invite a user to join an organization]({{< relref "../../manage-org-users#invite-a-user-to-join-an-organization" >}}).
If you have [organization administrator](../../../roles-and-permissions/#organization-roles) permissions and _not_ [server administrator](../../../roles-and-permissions/#grafana-server-administrators) permissions, you can still [invite a user to join an organization](../../manage-org-users/#invite-a-user-to-join-an-organization).
{{% /admonition %}}
## Remove a user from an organization
@ -62,4 +62,4 @@ Remove a user from an organization when they no longer require access to the das
1. In the Organization section, click **Remove from organization** next to the organization from which you want to remove the user.
1. Click **Confirm removal**.
> **Note:** If you have [organization administrator]({{< relref "../../../roles-and-permissions#organization-roles" >}}) permissions and _not_ [server administrator]({{< relref "../../../roles-and-permissions#grafana-server-administrators" >}}) permissions, you can still [remove a user from an organization]({{< relref "../../manage-org-users#remove-a-user-from-an-organization" >}}) in the Users section of organization configuration.
> **Note:** If you have [organization administrator](../../../roles-and-permissions/#organization-roles) permissions and _not_ [server administrator](../../../roles-and-permissions/#grafana-server-administrators) permissions, you can still [remove a user from an organization](../../manage-org-users/#remove-a-user-from-an-organization) in the Users section of organization configuration.
# Assign or remove Grafana server administrator privileges
Grafana server administrators are responsible for creating users, organizations, and managing permissions. For more information about the server administration role, refer to [Grafana server administrators]({{< relref "../../../roles-and-permissions#grafana-server-administrators" >}}).
Grafana server administrators are responsible for creating users, organizations, and managing permissions. For more information about the server administration role, refer to [Grafana server administrators](../../../roles-and-permissions/#grafana-server-administrators).
{{% admonition type="note" %}}
Server administrators are "super-admins" with full permissions to create, read, update, and delete all resources and users in all organizations, as well as update global settings such as licenses. Only grant this permission to trusted users.
@ -21,7 +21,7 @@ Server administrators are "super-admins" with full permissions to create, read,
## Before you begin
- [Add a user]({{< relref "../#add-a-user" >}})
- [Add a user](../#add-a-user)
- Ensure you have Grafana server administrator privileges
**To assign or remove Grafana administrator privileges**:
Update organization permissions when you want to enhance or restrict a user's access to organization resources. For more information about organization permissions, refer to [Organization roles]({{< relref "../../../roles-and-permissions/#organization-roles" >}}).
Update organization permissions when you want to enhance or restrict a user's access to organization resources. For more information about organization permissions, refer to [Organization roles](../../../roles-and-permissions/#organization-roles).
## Before you begin
- [Add a user to an organization]({{< relref "./add-remove-user-to-org/" >}})
- [Add a user to an organization](../add-remove-user-to-org/)
- Ensure you have Grafana server administrator privileges
@ -50,7 +50,7 @@ Your profile includes your name, user name, and email address, which you can upd
## Edit your preferences
You can choose the way you would like data to appear in Grafana, including the UI theme, home dashboard, timezone, and first day of the week. You can set these preferences for your own account, for a team, for an organization, or Grafana-wide using configuration settings. Your user preferences take precedence over team, organization, and Grafana default preferences. For more information, see [Grafana preferences]({{< relref "../../organization-preferences/" >}}).
You can choose the way you would like data to appear in Grafana, including the UI theme, home dashboard, timezone, and first day of the week. You can set these preferences for your own account, for a team, for an organization, or Grafana-wide using configuration settings. Your user preferences take precedence over team, organization, and Grafana default preferences. For more information, see [Grafana preferences](../../organization-preferences/).
- **UI theme** determines whether Grafana appears in light mode or dark mode. By default, UI theme is set to dark mode.
- **Home dashboard** refers to the dashboard you see when you sign in to Grafana. By default, this is set to the Home dashboard.
@ -85,7 +85,7 @@ Every user is a member of at least one organization. You can have different role
1. Click the user icon in the top right corner of the page and select **Profile**.
1. Scroll down to the Organizations section and review the following information:
- **Name**: The name of the organizations of which you are a member.
- **Role**: The role to which you are assigned in the organization. For more information about roles and permissions, refer to [Organization users and permissions]({{< relref "../../roles-and-permissions/#organization-users-and-permissions" >}}).
- **Role**: The role to which you are assigned in the organization. For more information about roles and permissions, refer to [Organization users and permissions](../../roles-and-permissions/#organization-users-and-permissions).
- **Current**: Grafana indicates the organization that you are currently signed into as _Current_. If you are a member of multiple organizations, you can click **Select** to switch to that organization.
@ -25,7 +25,7 @@ For our purposes, a breaking change is any change that requires users or operato
{{% admonition type="note" %}}
To learn what's available in a Grafana release, refer to the [What's new ]({{< relref "../whatsnew/" >}}) page for each version. For the steps we recommend when you upgrade, check out the [Upgrade guide]({{< relref "../upgrade-guide/" >}}) for each version.
To learn what's available in a Grafana release, refer to the [What's new ](../whatsnew/) page for each version. For the steps we recommend when you upgrade, check out the [Upgrade guide](../upgrade-guide/) for each version.
@ -34,7 +34,7 @@ For each change, the provided information:
- Guides you in how to mitigate for the change or migrate
- Provides more learning resources
For release highlights and deprecations, refer to our [v10.0 What’s new]({{< relref "../whatsnew/whats-new-in-v10-0/" >}}). For the specific steps we recommend when you upgrade to v10.0, check out our [Upgrade guide]({{< relref "../upgrade-guide/upgrade-v10.0/index.md" >}}).
For release highlights and deprecations, refer to our [v10.0 What’s new](../../whatsnew/whats-new-in-v10-0/). For the specific steps we recommend when you upgrade to v10.0, check out our [Upgrade guide](../../upgrade-guide/upgrade-v10.0/).
<!--
## Feature
@ -47,13 +47,13 @@ You must use relative references when linking to docs within the Grafana repo. P
#### You are affected if:
You create a new Grafana Cloud stack and intend to use any panel or data source plugins written using the Angular.js JavaScript framework. See the [list of Angular plugins]({{< relref "../developers/angular_deprecation/angular-plugins/" >}}).
You create a new Grafana Cloud stack and intend to use any panel or data source plugins written using the Angular.js JavaScript framework. See the [list of Angular plugins](../../developers/angular_deprecation/angular-plugins/).
#### Background
AngularJS is an old frontend framework that stopped active development many years ago. Because of that, it's a security risk. AngularJS also requires **unsafe-eval** in the [CSP (Content Security Policy)](https://developer.mozilla.org/en/Security/CSP) settings, which also reduces the security level of how javascript is executed in the browser.
Angular plugin support in Grafana is deprecated, meaning it will be removed in a future release. There are still some community and private plugins built using Angular. Starting with v9.0, Grafana has a server configuration option, called [angular_support_enabled]({{< relref "../setup-grafana/configure-grafana/#angular_support_enabled" >}}), that controls whether Angular plugin support is available.
Angular plugin support in Grafana is deprecated, meaning it will be removed in a future release. There are still some community and private plugins built using Angular. Starting with v9.0, Grafana has a server configuration option, called [angular_support_enabled](../../setup-grafana/configure-grafana/#angular_support_enabled), that controls whether Angular plugin support is available.
#### Change in Grafana v10
@ -61,13 +61,13 @@ Angular is disabled by default for all new Grafana Cloud stacks. Existing stacks
#### How to mitigate
If you're using Angular plugins in Grafana, try an alternative panel or data source that doesn't use Angular. This list of detected [Angular plugins]({{< relref "../developers/angular_deprecation/angular-plugins/" >}}) offers alternatives where they exist.
If you're using Angular plugins in Grafana, try an alternative panel or data source that doesn't use Angular. This list of detected [Angular plugins](../../developers/angular_deprecation/angular-plugins/) offers alternatives where they exist.
If you're a developer maintaining a plugin that uses Angular, we recommend you refactor or rewrite its frontend using React.js instead. The team at Grafana is ready to help and provide tools and guidance; you can reach us in [Slack](https://grafana.slack.com/archives/C3HJV5PNE) or on our [Forum](https://community.grafana.com/c/plugin-development/30).
#### Learn more
- [Angular Support Deprecation documentation]({{< relref "../developers/angular_deprecation/" >}})
- [Angular Support Deprecation documentation](../../developers/angular_deprecation/)
### Grafana legacy alerting is deprecated and no longer accepts internal or external contributions
@ -95,7 +95,7 @@ In Grafana v8.5, we introduced [service accounts](https://grafana.com/blog/2022/
This is a "breaking" change because if users are used to seeing and interacting with API keys, they won't see that page in navigation anymore and will need to navigate to the **Service accounts** page instead. However, your existing API tokens will remain fully functional and migrated to service accounts, so no automation will break. If you roll back to a previous version of Grafana, your API keys will remain intact.
Grafana's [HTTP API endpoints for generating and managing API Keys]({{< relref "../developers/http_api/auth/#create-api-token" >}}) remain functional, but we recommend you begin using the [Service account HTTP API]({{< relref "../developers/http_api/serviceaccount/" >}}) to generate and manage machine authentication instead.
Grafana's [HTTP API endpoints for generating and managing API Keys](../../developers/http_api/auth/#create-api-token) remain functional, but we recommend you begin using the [Service account HTTP API](../../developers/http_api/serviceaccount/) to generate and manage machine authentication instead.
#### Migration path
@ -173,7 +173,7 @@ We've built a [CLI tool](https://grafana.com/blog/2022/12/12/guide-to-using-the-
#### Background
Grafana used to validate identity provider accounts based on the email claim. On many identity providers, the email field is not unique, and this could open a possible account vector to perform an account takeover and authentication bypass in certain scenarios.
This change also ensures that Grafana is protected against the [CVE-2023-3128](https://grafana.com/security/security-advisories/CVE-2023-3128) vulnerability.
This change also ensures that Grafana is protected against the [CVE-2023-3128](https://grafana.com/security/security-advisories/cve-2023-3128/) vulnerability.
#### Change in Grafana v10
@ -192,8 +192,8 @@ We strongly recommend not doing this in case you are using Azure AD as an identi
`--config value` overrides the default location where Grafana expects the configuration file. Refer to [Configuration]({{< relref "./setup-grafana/configure-grafana/" >}}) for more information about configuring Grafana and default configuration file locations.
`--config value` overrides the default location where Grafana expects the configuration file. Refer to [Configuration](../setup-grafana/configure-grafana/) for more information about configuring Grafana and default configuration file locations.
Grafana CLI allows you to install, upgrade, and manage your Grafana plugins. For more information about installing plugins, refer to [plugins page]({{< relref "./administration/plugin-management/" >}}).
Grafana CLI allows you to install, upgrade, and manage your Grafana plugins. For more information about installing plugins, refer to [plugins page](../administration/plugin-management/).
All listed commands apply to the Grafana default repositories and directories. You can override the defaults with [Global Options](#global-options).
If you have not lost the admin password, we recommend that you change the user password either in the User Preferences or in the Server Admin > User tab.
If you need to set the password in a script, then you can use the [Grafana User API]({{< relref "./developers/http_api/user/#change-password" >}}).
If you need to set the password in a script, then you can use the [Grafana User API](../developers/http_api/user/#change-password).
@ -117,7 +117,7 @@ Grafana includes three special data sources:
### Grafana
A built-in data source that generates random walk data and can poll the [Testdata]({{< relref "./testdata/" >}}) data source. Additionally, it can list files and get other data from a Grafana installation. This can be helpful for testing visualizations and running experiments.
A built-in data source that generates random walk data and can poll the [Testdata](testdata/) data source. Additionally, it can list files and get other data from a Grafana installation. This can be helpful for testing visualizations and running experiments.
### Mixed
@ -140,24 +140,24 @@ These built-in core data sources are also included in the Grafana documentation:
@ -66,7 +66,7 @@ For instructions on how to add a data source to Grafana, refer to the [administr
Only users with the organization administrator role can add data sources.
Administrators can also [provision the data source](#provision-the-data-source) with Grafana's provisioning system, and should [control pricing](#control-pricing) and [manage service quotas](#manage-service-quotas) accordingly.
Once you've added the data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor]({{< relref "./query-editor" >}}) when they [build dashboards](ref:build-dashboards) and use [Explore](ref:explore).
Once you've added the data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor](query-editor/) when they [build dashboards](ref:build-dashboards) and use [Explore](ref:explore).
{{% admonition type="note" %}}
To troubleshoot issues while setting up the CloudWatch data source, check the `/var/log/grafana/grafana.log` file.
@ -86,12 +86,12 @@ To troubleshoot issues while setting up the CloudWatch data source, check the `/
A Grafana plugin's requests to AWS are made on behalf of an AWS Identity and Access Management (IAM) role or IAM user.
The IAM user or IAM role must have the associated policies to perform certain API actions.
For authentication options and configuration details, refer to [AWS authentication]({{< relref "./aws-authentication" >}}).
For authentication options and configuration details, refer to [AWS authentication](aws-authentication/).
#### IAM policy examples
To read CloudWatch metrics and EC2 tags, instances, regions, and alarms, you must grant Grafana permissions via IAM.
You can attach these permissions to the IAM role or IAM user you configured in [AWS authentication]({{< relref "./aws-authentication" >}}).
You can attach these permissions to the IAM role or IAM user you configured in [AWS authentication](aws-authentication/).
##### Metrics-only permissions
@ -354,11 +354,11 @@ datasources:
The CloudWatch data source can query data from both CloudWatch metrics and CloudWatch Logs APIs, each with its own specialized query editor.
For details, see the [query editor documentation]({{< relref "./query-editor" >}}).
For details, see the [query editor documentation](query-editor/).
## Query caching
When you enable [query and resource caching]({{< relref "/administration/data-source-management/#query-and-resource-caching" >}}), Grafana temporarily stores the results of data source queries and resource requests. Query caching is available in CloudWatch Metrics in Grafana Cloud and Grafana Enterprise. It is not available in CloudWatch Logs Insights due to how query results are polled from AWS.
When you enable [query and resource caching](/docs/grafana/<GRAFANA_VERSION>/administration/data-source-management/#query-and-resource-caching), Grafana temporarily stores the results of data source queries and resource requests. Query caching is available in CloudWatch Metrics in Grafana Cloud and Grafana Enterprise. It is not available in CloudWatch Logs Insights due to how query results are polled from AWS.
## Use template variables
@ -366,7 +366,7 @@ Instead of hard-coding details such as server, application, and sensor names in
Grafana lists these variables in dropdown select boxes at the top of the dashboard to help you change the data displayed in your dashboard.
Grafana refers to such variables as template variables.
For details, see the [template variables documentation]({{< relref "./template-variables" >}}).
For details, see the [template variables documentation](template-variables/).
@ -79,7 +79,7 @@ For example, you may have one set of long term credentials for all of your AWS d
Instead, using the assume role functionality, you could have one set of AWS credentials for all of your AWS data sources that has only one permission—the permission to assume a role with STS. Then you could create a separate IAM role for each data source that specifies which permissions that data source can temporarily assume. Since IAM roles are not credentials, there's no need to rotate them and they may be easier to manage.
The Grafana Assume Role also helps facilitate this. Using this role, Grafana's AWS account acts as the primary credential, having only the permission to assume roles in other accounts. You can then create IAM roles for Grafana's account to assume. For more information, refer to [Use Grafana assume role]({{< relref "#use-grafana-assume-role" >}}).
The Grafana Assume Role also helps facilitate this. Using this role, Grafana's AWS account acts as the primary credential, having only the permission to assume roles in other accounts. You can then create IAM roles for Grafana's account to assume. For more information, refer to [Use Grafana assume role](#use-grafana-assume-role).
If the **Assume Role ARN** field is left empty, Grafana uses the provided credentials from the selected authentication method directly, and permissions to AWS data must be attached directly to those credentials. The **Assume Role ARN** field is optional for all authentication methods except for Grafana Assume Role.
@ -160,7 +160,7 @@ securityContext:
## Use Grafana Assume Role
{{% admonition type="note" %}}
Grafana Assume Role is currently in [private preview]({{< relref "https://grafana.com/docs/release-life-cycle" >}}) for Grafana Cloud.
Grafana Assume Role is currently in [private preview](https://grafana.com/docs/release-life-cycle/) for Grafana Cloud.
It's currently only available for Amazon CloudWatch.
@ -67,7 +67,7 @@ If you enable `Match Exact`, you must also specify all dimensions of the metric
If `Match Exact` is disabled, you can specify any number of dimensions on which you'd like to filter. With `Match Exact` disabled the query returns any metrics that match the namespace, metric name, and all defined dimensions, whether or not they have additional dimensions.
The data source returns up to 100 metrics matching your filter criteria.
You can also augment queries by using [template variables]({{< relref "./template-variables" >}}).
You can also augment queries by using [template variables](../template-variables/).
#### Create dynamic queries with dimension wildcards
@ -157,7 +157,7 @@ For details about the Metrics Insights syntax, refer to the [AWS reference docum
For information about Metrics Insights limits, refer to the [AWS feature documentation](https://docs.aws.amazon.com/console/cloudwatch/metricsinsights).
You can also augment queries by using [template variables]({{< relref "./template-variables" >}}).
You can also augment queries by using [template variables](../template-variables/).
#### Use Metrics Insights keywords
@ -270,7 +270,7 @@ To enable cross-account observability, complete the following steps:
1. Go to the [Amazon CloudWatch docs](http://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html) and follow the instructions on enabling cross-account observability.
1. Add [two API actions]({{< relref "../../aws-cloudwatch#cross-account-observability-permissions" >}}) to the IAM policy attached to the role/user running the plugin.
1. Add [two API actions](../#cross-account-observability-permissions) to the IAM policy attached to the role/user running the plugin.
Cross-account querying is available in the plugin through the **Logs**, **Metric search**, and **Metric Insights** modes.
After you have it configured, you'll see a **Monitoring account** badge in the query editor header.
@ -74,7 +74,7 @@ This topic explains configuring and querying specific to the Azure Monitor data
For instructions on how to add a data source to Grafana, refer to the [administration documentation](ref:data-source-management).
Only users with the organization administrator role can add data sources.
Once you've added the Azure Monitor data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor]({{< relref "./query-editor" >}}) when they [build dashboards](ref:build-dashboards) and use [Explore](ref:explore).
Once you've added the Azure Monitor data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor](query-editor/) when they [build dashboards](ref:build-dashboards) and use [Explore](ref:explore).
The Azure Monitor data source supports visualizing data from four Azure services:
@ -338,7 +338,7 @@ If a user tries to create an alert for a resource that the fallback credentials
The Azure Monitor data source can query data from Azure Monitor Metrics and Logs, the Azure Resource Graph, and Application Insights Traces. Each source has its own specialized query editor.
For details, see the [query editor documentation]({{< relref "./query-editor" >}}).
For details, see the [query editor documentation](query-editor/).
## Use template variables
@ -346,7 +346,7 @@ Instead of hard-coding details such as server, application, and sensor names in
Grafana lists these variables in dropdown select boxes at the top of the dashboard to help you change the data displayed in your dashboard.
Grafana refers to such variables as template variables.
For details, see the [template variables documentation]({{< relref "./template-variables" >}}).
For details, see the [template variables documentation](template-variables/).
## Application Insights and Insights Analytics (removed)
@ -160,7 +160,7 @@ For example, set this to `1m` if Elasticsearch writes data every minute.
You can also override this setting in a dashboard panel under its data source options. The default is `10s`.
- **X-Pack enabled** - Toggle to enable `X-Pack`-specific features and options, which provide the [query editor]({{< relref "./query-editor" >}}) with additional aggregations, such as `Rate` and `Top Metrics`.
- **X-Pack enabled** - Toggle to enable `X-Pack`-specific features and options, which provide the [query editor](../query-editor/) with additional aggregations, such as `Rate` and `Top Metrics`.
- **Include frozen indices** - Toggle on when the `X-Pack enabled` setting is active. Includes frozen indices in searches. You can configure Grafana to include [frozen indices](https://www.elastic.co/guide/en/elasticsearch/reference/7.13/frozen-indices.html) when performing search requests.
@ -53,7 +53,7 @@ This topic describes queries, templates, variables, and other configuration spec
For instructions on how to add a data source to Grafana, refer to the [administration documentation](ref:data-source-management).
Only users with the organization administrator role can add data sources.
Once you've added the Google Cloud Monitoring data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor]({{< relref "./query-editor" >}}) and apply [annotations](#annotations) when they [build dashboards](ref:build-dashboards) and use [Explore](ref:explore).
Once you've added the Google Cloud Monitoring data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor](query-editor/) and apply [annotations](#annotations) when they [build dashboards](ref:build-dashboards) and use [Explore](ref:explore).
## Configure the data source
@ -78,19 +78,19 @@ To configure basic settings for the data source, complete the following steps:
Before you can request data from Google Cloud Monitoring, you must configure authentication.
All requests to Google APIs are performed on the server-side by the Grafana backend.
For authentication options and configuration details, refer to [Google authentication]({{< relref "./google-authentication" >}}).
For authentication options and configuration details, refer to [Google authentication](google-authentication/).
When configuring Google authentication, note these additional Google Cloud Monitoring-specific steps:
#### Configure a GCP Service Account
When you [create a Google Cloud Platform (GCP) Service Account and key file]({{< relref "./google-authentication#create-a-gcp-service-account-and-key-file" >}}), the Service Account must have the **Monitoring Viewer** role (**Role > Select a role > Monitoring > Monitoring Viewer**):
When you [create a Google Cloud Platform (GCP) Service Account and key file](google-authentication/#create-a-gcp-service-account-and-key-file), the Service Account must have the **Monitoring Viewer** role (**Role > Select a role > Monitoring > Monitoring Viewer**):
If Grafana is running on a Google Compute Engine (GCE) virtual machine, then when you [Configure a GCE Default Service Account]({{< relref "./google-authentication#configure-a-gce-default-service-account" >}}), you must also grant that Service Account access to the "Cloud Monitoring API" scope.
If Grafana is running on a Google Compute Engine (GCE) virtual machine, then when you [Configure a GCE Default Service Account](google-authentication/#configure-a-gce-default-service-account), you must also grant that Service Account access to the "Cloud Monitoring API" scope.
### Enable necessary Google Cloud Platform APIs
@ -181,7 +181,7 @@ These curated dashboards are based on similar dashboards in the GCP dashboard sa
1. Select **Import** for the dashboard to import.
The dashboards include a [template variable]({{< relref "./template-variables" >}}) populated with the projects accessible by the configured [Service Account]({{< relref "./google-authentication" >}}) each time you load the dashboard.
The dashboards include a [template variable](template-variables/) populated with the projects accessible by the configured [Service Account](google-authentication/) each time you load the dashboard.
After Grafana loads the dashboard, you can select a project from the dropdown list.
**To customize an imported dashboard:**
@ -193,7 +193,7 @@ If you don't, upgrading Grafana can overwrite the customized dashboard with the
The Google Cloud Monitoring query editor helps you build two types of queries: **Metric** and **Service Level Objective (SLO)**.
For details, refer to the [query editor documentation]({{< relref "./query-editor" >}}).
For details, refer to the [query editor documentation](query-editor/).
## Use template variables
@ -201,4 +201,4 @@ Instead of hard-coding details such as server, application, and sensor names in
Grafana lists these variables in dropdown select boxes at the top of the dashboard to help you change the data displayed in your dashboard.
Grafana refers to such variables as template variables.
For details, see the [template variables documentation]({{< relref "./template-variables" >}}).
For details, see the [template variables documentation](template-variables/).
@ -56,7 +56,7 @@ This topic explains options, variables, querying, and other features specific to
For instructions on how to add a data source to Grafana, refer to the [administration documentation](ref:data-source-management).
Only users with the organization administrator role can add data sources.
Once you've added the Graphite data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor]({{< relref "./query-editor" >}}) when they [build dashboards](ref:build-dashboards) and use [Explore](ref:explore).
Once you've added the Graphite data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor](query-editor/) when they [build dashboards](ref:build-dashboards) and use [Explore](ref:explore).
@ -375,7 +375,7 @@ To only show the spans you have matched, you can press the `Show matches only` t
You can link to Jaeger traces from logs in Loki, Elasticsearch, Splunk, and other logs data sources by configuring an internal link.
To configure this feature, see the [Derived fields]({{< relref "../loki#configure-derived-fields" >}}) section of the Loki data source docs or the [Data links]({{< relref "../elasticsearch#data-links" >}}) section of the Elasticsearch or Splunk data source docs.
To configure this feature, see the [Derived fields](../loki/#configure-derived-fields) section of the Loki data source docs or the [Data links](../elasticsearch/#data-links) section of the Elasticsearch or Splunk data source docs.
@ -70,7 +70,7 @@ For instructions on how to add a data source to Grafana, refer to the [administr
Only users with the organization administrator role can add data sources.
Administrators can also [configure the data source via YAML](#provision-the-data-source) with Grafana's provisioning system.
Once you've added the Loki data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor]({{< relref "./query-editor" >}}) when they [build dashboards](ref:build-dashboards), use [Explore](ref:explore), and [annotate visualizations]({{< relref "./query-editor#apply-annotations" >}}).
Once you've added the Loki data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor](query-editor/) when they [build dashboards](ref:build-dashboards), use [Explore](ref:explore), and [annotate visualizations](query-editor/#apply-annotations).
{{% admonition type="note" %}}
To troubleshoot configuration and other issues, check the log file located at `/var/log/grafana/grafana.log` on Unix systems, or in `<grafana_install_dir>/data/log` on other platforms and manual installations.
@ -149,7 +149,7 @@ datasources:
The Loki data source's query editor helps you create log and metric queries that use Loki's query language, [LogQL](/docs/loki/latest/logql/).
For details, refer to the [query editor documentation]({{< relref "./query-editor" >}}).
For details, refer to the [query editor documentation](query-editor/).
## Use template variables
@ -157,4 +157,4 @@ Instead of hard-coding details such as server, application, and sensor names in
Grafana lists these variables in dropdown select boxes at the top of the dashboard to help you change the data displayed in your dashboard.
Grafana refers to such variables as template variables.
For details, see the [template variables documentation]({{< relref "./template-variables" >}}).
For details, see the [template variables documentation](template-variables/).
@ -63,7 +63,7 @@ Each mode is synchronized, so you can switch between them without losing your wo
When you switch from Code mode to Builder mode with such a query, the editor displays a warning message that explains how you might lose parts of the query if you continue.
You can then decide whether you still want to switch to Builder mode.
You can also augment queries by using [template variables]({{< relref "./template-variables" >}}).
You can also augment queries by using [template variables](../template-variables/).
@ -62,7 +62,7 @@ For instructions on how to add a data source to Grafana, refer to the [administr
Only users with the organization administrator role can add data sources.
Administrators can also [configure the data source via YAML](#provision-the-data-source) with Grafana's provisioning system.
Once you've added the Microsoft SQL Server data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor]({{< relref "./query-editor" >}}) when they [build dashboards](ref:build-dashboards) and use [Explore](ref:explore).
Once you've added the Microsoft SQL Server data source, you can [configure it](#configure-the-data-source) so that your Grafana instance's users can create queries in its [query editor](query-editor/) when they [build dashboards](ref:build-dashboards) and use [Explore](ref:explore).
## Configure the data source
@ -185,7 +185,7 @@ datasources:
You can create queries with the Microsoft SQL Server data source's query editor when editing a panel that uses a MS SQL data source.
For details, refer to the [query editor documentation]({{< relref "./query-editor" >}}).
For details, refer to the [query editor documentation](query-editor/).
## Use template variables
@ -193,4 +193,4 @@ Instead of hard-coding details such as server, application, and sensor names in
Grafana lists these variables in dropdown select boxes at the top of the dashboard to help you change the data displayed in your dashboard.
Grafana refers to such variables as template variables.
For details, see the [template variables documentation]({{< relref "./template-variables" >}}).
For details, see the [template variables documentation](template-variables/).
@ -89,13 +89,13 @@ For instructions on how to add a data source to Grafana, refer to the [administr
Only users with the organization `administrator` role can add data sources and edit existing data sources.
Administrators can also [configure the data source via YAML](#provision-the-data-source) with Grafana's provisioning system.
Once you've added the Prometheus data source, you can [configure it](ref:configure-prometheus-data-source) so that your Grafana instance's users can create queries in its [query editor]({{< relref "./query-editor" >}}) when they [build dashboards](ref:build-dashboards), use [Explore](ref:explore), and [annotate visualizations](ref:annotate-visualizations).
Once you've added the Prometheus data source, you can [configure it](ref:configure-prometheus-data-source) so that your Grafana instance's users can create queries in its [query editor](query-editor/) when they [build dashboards](ref:build-dashboards), use [Explore](ref:explore), and [annotate visualizations](ref:annotate-visualizations).
The following guides will help you get started with the Prometheus data source:
- [Configure the Prometheus data source](ref:configure-prometheus-data-source)
@ -132,7 +132,7 @@ Following are additional configuration options.
{{% admonition type="note" %}}
The **Manage alerts via Alerting UI** toggle is enabled by default. You can change this behavior by setting the [default_manage_alerts_ui_toggle]({{< relref "../../setup-grafana/configure-grafana/#default_manage_alerts_ui_toggle" >}}) option in the Grafana configuration file.
The **Manage alerts via Alerting UI** toggle is enabled by default. You can change this behavior by setting the [default_manage_alerts_ui_toggle](../../../setup-grafana/configure-grafana/#default_manage_alerts_ui_toggle) option in the Grafana configuration file.
{{% /admonition %}}
@ -144,7 +144,7 @@ The **Manage alerts via Alerting UI** toggle is enabled by default. You can chan
### Query editor
- **Default editor** - Sets a default editor. Options are `Builder` or `Code`. For information on query editor types see [Prometheus query editor]({{< relref "./query-editor" >}}).
- **Default editor** - Sets a default editor. Options are `Builder` or `Code`. For information on query editor types see [Prometheus query editor](../query-editor/).
- **Disable metrics lookup** - Toggle on to disable the metrics chooser and metric/label support in the query field's autocomplete. This helps if you have performance issues with large Prometheus instances.
The **Search** query builder provides drop-down lists and text fields to help you write a query.
The query builder is ideal for people who aren't familiar with or want to learn TraceQL.
Refer to the [Search using the TraceQL query builder documentation]({{< relref "./traceql-search" >}}) to learn more about creating queries using convenient drop-down menus.
Refer to the [Search using the TraceQL query builder documentation](traceql-search/) to learn more about creating queries using convenient drop-down menus.
@ -73,7 +73,7 @@ You use the Service Graph to detect performance issues; track increases in error
## Display the Service Graph
1. [Configure Grafana Alloy](https://grafana.com/docs/tempo/<TEMPO_VERSION>/configuration/grafana-alloy/) or [Tempo or GET](https://grafana.com/docs/tempo/<TEMPO_VERSION>/metrics-generator/service_graphs/#tempo) to generate Service Graph data.
1. Link a Prometheus data source in the Tempo data source's [Service Graph](./configure-tempo-data-source#configure-service-graph) settings.
1. Link a Prometheus data source in the Tempo data source's [Service Graph](../configure-tempo-data-source#configure-service-graph) settings.
@ -72,7 +72,7 @@ You can link to Tempo traces from logs or metrics.
You can link to Tempo traces from logs in Loki, Elasticsearch, Splunk, and other logs data sources by configuring an internal link.
To configure this feature, refer to the [Derived fields](../../loki#configure-derived-fields) section of the Loki data source docs or the [Data links](../../elasticsearch#data-links) section of the Elasticsearch or Splunk data source docs.
To configure this feature, refer to the [Derived fields](../../../loki#configure-derived-fields) section of the Loki data source docs or the [Data links](../../../elasticsearch#data-links) section of the Elasticsearch or Splunk data source docs.
@ -339,10 +339,10 @@ To only show the spans you have matched, you can press the `Show matches only` t
You can link to Zipkin traces from logs in Loki, Elasticsearch, Splunk, and other logs data sources by configuring an internal link.
To configure this feature, see the [Derived fields]({{< relref "../loki#configure-derived-fields" >}}) section of the Loki data source docs or the [Data links]({{< relref "../elasticsearch#data-links" >}}) section of the Elasticsearch or Splunk data source docs.
To configure this feature, see the [Derived fields](../loki/#configure-derived-fields) section of the Loki data source docs or the [Data links](../elasticsearch/#data-links) section of the Elasticsearch or Splunk data source docs.
## Link to a trace ID from metrics
You can link to Zipkin traces from metrics in Prometheus data sources by configuring an exemplar.
To configure this feature, see the [introduction to exemplars]({{< relref "docs/grafana/latest/fundamentals/exemplars" >}}) documentation.
To configure this feature, see the [introduction to exemplars](../../fundamentals/exemplars/) documentation.
@ -25,9 +25,9 @@ Warning messages are displayed if a dashboard depends on an a panel visualizatio
To avoid disruption:
- Ensure that you are running the latest version of plugins by following this guide on [updating]({{< relref "../../administration/plugin-management/#update-a-plugin" >}}). Many panels and data sources have migrated from AngularJS.
- If you are using legacy Core Grafana visualizations such as Graph or Table-old, migrate to their replacements using the provided [automatic migrations]({{< relref "./angular-plugins/#automatic-migration-of-plugins" >}}).
- Review the [list of current Angular plugins]({{< relref "./angular-plugins/" >}}) to discover which Core and external plugins are impacted, and whether an update or alternative is required.
- Ensure that you are running the latest version of plugins by following this guide on [updating](../../administration/plugin-management/#update-a-plugin). Many panels and data sources have migrated from AngularJS.
- If you are using legacy Core Grafana visualizations such as Graph or Table-old, migrate to their replacements using the provided [automatic migrations](angular-plugins/#automatic-migration-of-plugins).
- Review the [list of current Angular plugins](angular-plugins/) to discover which Core and external plugins are impacted, and whether an update or alternative is required.
## Why are we deprecating Angular support?
@ -35,7 +35,7 @@ AngularJS is an old frontend framework whose active development stopped many yea
## When will Angular plugins stop working?
In Grafana 11, which will be released in preview in April 2024 and generally available in May, we will change the default behavior of the [angular_support_enabled](https://github.com/grafana/grafana/blob/d61bcdf4ca5e69489e0067c56fbe7f0bfdf84ee4/conf/defaults.ini#L362) configuration parameter to turn off support for AngularJS based plugins. In case you still rely on [AngularJS-based plugins]({{< relref "./angular-plugins/" >}}) developed internally or by the community, you will need to enable this option to continue using them.
In Grafana 11, which will be released in preview in April 2024 and generally available in May, we will change the default behavior of the [angular_support_enabled](https://github.com/grafana/grafana/blob/d61bcdf4ca5e69489e0067c56fbe7f0bfdf84ee4/conf/defaults.ini#L362) configuration parameter to turn off support for AngularJS based plugins. In case you still rely on [AngularJS-based plugins](angular-plugins/) developed internally or by the community, you will need to enable this option to continue using them.
New Grafana Cloud users will be unable to request for support to be added to their instance.
@ -63,4 +63,4 @@ We encourage you to locate the repository of the corresponding plugin and create
- [Migrate Angular to React](https://grafana.com/developers/plugin-tools/migration-guides/angular-react/)
- [Build a panel plugin](https://grafana.com/tutorials/build-a-panel-plugin/)
- [Build a data source plugin](https://grafana.com/tutorials/build-a-data-source-plugin/)
- [List of current Angular plugins]({{< relref "./angular-plugins/" >}})
- [List of current Angular plugins](angular-plugins/)
@ -16,7 +16,7 @@ description: An annotated list of Grafana plugins using AngularJS.
# Plugins using AngularJS
The use of AngularJS in Grafana has been [deprecated]({{< relref "../angular_deprecation" >}}) in favor of React. Support for AngularJS will be turned off by default in Grafana 11.
The use of AngularJS in Grafana has been [deprecated](../) in favor of React. Support for AngularJS will be turned off by default in Grafana 11.
This page explains how Grafana users might be impacted by the removal of Angular support based on plugins dependent on this legacy framework. You will also see if there is a migration option available for a given plugin.
@ -30,8 +30,8 @@ Refer to the [table below](#angularjs-based-plugins) and take the appropriate ac
- Consider the advice on whether to update, migrate to a listed alternative, or explore the Grafana plugins [catalog](/grafana/plugins) to find the most suitable option for your use case.
- Use our [detect-angular-dashboards](https://github.com/grafana/detect-angular-dashboards) open source tooling to list dashboards which have a dependency on Angular plugins.
- Check your Grafana instances for usage of these plugins. Refer to the documentation on [browsing installed plugins]({{< relref "../../administration/plugin-management/#browse-plugins" >}}).
- Customers of Grafana Enterprise and users of Grafana Cloud can also leverage [usage insights]({{< relref "../../dashboards/assess-dashboard-usage/" >}}) to prioritize any migration efforts.
- Check your Grafana instances for usage of these plugins. Refer to the documentation on [browsing installed plugins](../../../administration/plugin-management/#browse-plugins).
- Customers of Grafana Enterprise and users of Grafana Cloud can also leverage [usage insights](../../../dashboards/assess-dashboard-usage/) to prioritize any migration efforts.
- Review the plugin source repositories to add your support to any migration issues or consider forking the repo.
{{% admonition type="note" %}}
@ -64,19 +64,19 @@ A dashboard must still be saved with the new plugin ID to persist the change.
# AngularJS-based plugins
This table lists plugins which we have detected as having a dependency on AngularJS. For alternatives, consider included [Visualizations]({{< relref "../../panels-visualizations/visualizations" >}}) and [Data sources]({{< relref "../../datasources" >}}), as well as external plugins from the [catalog](/grafana/plugins).
This table lists plugins which we have detected as having a dependency on AngularJS. For alternatives, consider included [Visualizations](../../../panels-visualizations/visualizations/) and [Data sources](../../../datasources/), as well as external plugins from the [catalog](/grafana/plugins).
| digrich-bubblechart-panel | Bubble Chart | Update - Note the minimum version for React is 2.0.1. We recommend the latest. |
| corpglory-progresslist-panel | Progress List | Migrate - Browse included visualizations and plugins catalog for potential alternatives. |
| aidanmountford-html-panel | HTML | Migrate - Consider alternatives such as [Text]({{< relref "../../panels-visualizations/visualizations/text" >}}) (core), [HTML](https://grafana.com/grafana/plugins/gapit-htmlgraphics-panel), or others. |
| aidanmountford-html-panel | HTML | Migrate - Consider alternatives such as [Text](../../../panels-visualizations/visualizations/text/) (core), [HTML](https://grafana.com/grafana/plugins/gapit-htmlgraphics-panel), or others. |
| fifemon-graphql-datasource | GraphQL Data Source | Wait - Removal of AngularJS is planned. Consider [Infinity](https://grafana.com/grafana/plugins/yesoreyeram-infinity-datasource/) plugin as alternative. |
| goshposh-metaqueries-datasource | MetaQueries | Migrate - Browse included data sources and plugins catalog for potential alternatives. |
| mxswat-separator-panel | Separator | Migrate - Consider alternative [Text]({{< relref "../../panels-visualizations/visualizations/text" >}}) panel (core) which can be empty and used as a separator. |
| mxswat-separator-panel | Separator | Migrate - Consider alternative [Text](../../../panels-visualizations/visualizations/text/) panel (core) which can be empty and used as a separator. |
| natel-influx-admin-panel | Influx Admin | Migrate - Browse included data sources and plugins catalog for potential alternatives. |
| doitintl-bigquery-datasource | Google BigQuery | Migrate - Consider [Grafana Big Query](https://grafana.com/grafana/plugins/grafana-bigquery-datasource/) plugin. |
| satellogic-3d-globe-panel | 3D Globe Panel | Migrate - Browse included visualizations and plugins catalog for potential alternatives. |
| foursquare-clouderamanager-datasource | Cloudera Manager | Migrate - Browse included data sources and plugins catalog for potential alternatives. |
| grafana-splunk-datasource | Splunk | Update - Note the minimum version for React is 4.1.0. We recommend the latest. |
| blackmirror1-statusbygroup-panel | Status By Group Panel | Migrate - Browse included visualizations and plugins catalog for potential alternatives. |
| novalabs-annotations-panel | Annotation Panel | Migrate - Browse included visualizations and plugins catalog for potential alternatives. |
| jasonlashua-prtg-datasource | PRTG | Migrate - Browse included data sources and plugins catalog for potential alternatives. |
| sni-pnp-datasource | PNP | Update - Note the minimum version for React is 2.0.0. We recommend the latest. |
| sni-thruk-datasource | Thruk | Update - Note the minimum version for React is 2.0.0. We recommend the latest. |
| stagemonitor-elasticsearch-app | stagemonitor Elasticsearch | Migrate - Browse included data sources and plugins catalog for potential alternatives. |
| tdengine-datasource | TDengine Datasource | Update - Note the minimum version for React is 3.3.0. We recommend the latest. |
| vertica-grafana-datasource | Vertica | Update - Note the minimum version for React is 2.0.0. We recommend the latest. |
| voxter-app | Voxter VoIP Platform Metrics | Migrate - Browse included data sources and plugins catalog for potential alternatives. |
| graph | Graph (old) | Migrate - Note that this is replaced by [Time Series]({{< relref "../../panels-visualizations/visualizations/time-series" >}}) (core) - This plugin should migrate when Angular is disabled. Also consider Bar Chart or Histogram if appropriate. |
| table-old | Table (old) | Migrate - Note that this is replaced by [Table]({{< relref "../../panels-visualizations/visualizations/table" >}}) (core) - This plugin should migrate when AngularJS is disabled. |
| graph | Graph (old) | Migrate - Note that this is replaced by [Time Series](../../../panels-visualizations/visualizations/time-series/) (core) - This plugin should migrate when Angular is disabled. Also consider Bar Chart or Histogram if appropriate. |
| table-old | Table (old) | Migrate - Note that this is replaced by [Table](../../../panels-visualizations/visualizations/table/) (core) - This plugin should migrate when AngularJS is disabled. |
| shorelinesoftware-shoreline-datasource | Shoreline Data Source | Update - Note the minimum version for React is 1.2.1. We recommend the latest. |
- [Alerting API (unstable)](https://editor.swagger.io/?url=https://raw.githubusercontent.com/grafana/grafana/main/pkg/services/ngalert/api/tooling/post.json)
> Role-based access control API is only available in Grafana Cloud or Grafana Enterprise. Read more about [Grafana Enterprise]({{< relref "/docs/grafana/latest/introduction/grafana-enterprise" >}}).
> Role-based access control API is only available in Grafana Cloud or Grafana Enterprise. Read more about [Grafana Enterprise](/docs/grafana/latest/introduction/grafana-enterprise/).
The API can be used to create, update, delete, get, and list roles.
To check which basic or fixed roles have the required permissions, refer to [RBAC role definitions]({{< ref "/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions" >}}).
To check which basic or fixed roles have the required permissions, refer to [RBAC role definitions](/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions).
Creates a new custom role and maps given permissions to that role. Note that roles with the same prefix as [Fixed roles]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control#fixed-roles" >}}) can't be created.
Creates a new custom role and maps given permissions to that role. Note that roles with the same prefix as [Fixed roles](/docs/grafana/latest/administration/roles-and-permissions/access-control/#fixed-roles) can't be created.
| uid | string | No | UID of the role. If not present, the UID will be automatically created for you and returned in response. Refer to the [Custom roles]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control#custom-roles" >}}) for more information. |
| uid | string | No | UID of the role. If not present, the UID will be automatically created for you and returned in response. Refer to the [Custom roles](/docs/grafana/latest/administration/roles-and-permissions/access-control/#custom-roles) for more information. |
| global | boolean | No | A flag indicating if the role is global or not. If set to `false`, the default org ID of the authenticated user will be used from the request. |
| version | number | No | Version of the role. If not present, version 0 will be assigned to the role and returned in the response. Refer to the [Custom roles]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/#custom-roles" >}}) for more information. |
| name | string | Yes | Name of the role. Refer to [Custom roles]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control#custom-roles" >}}) for more information. |
| version | number | No | Version of the role. If not present, version 0 will be assigned to the role and returned in the response. Refer to the [Custom roles](/docs/grafana/latest/administration/roles-and-permissions/access-control/#custom-roles) for more information. |
| name | string | Yes | Name of the role. Refer to [Custom roles](/docs/grafana/latest/administration/roles-and-permissions/access-control/#custom-roles) for more information. |
| description | string | No | Description of the role. |
| displayName | string | No | Display name of the role, visible in the UI. |
| group | string | No | The group name the role belongs to. |
@ -279,9 +279,9 @@ Content-Type: application/json
**Permission**
| Field Name | Data Type | Required | Description |
| action | string | Yes | Refer to [Custom role actions and scopes]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for full list of available actions. |
| scope | string | No | If not present, no scope will be mapped to the permission. Refer to [Custom role actions and scopes]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for full list of available scopes. |
| action | string | Yes | Refer to [Custom role actions and scopes](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for full list of available actions. |
| scope | string | No | If not present, no scope will be mapped to the permission. Refer to [Custom role actions and scopes](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for full list of available scopes. |
#### Example response
@ -450,9 +450,9 @@ Content-Type: application/json
**Permission**
| Field Name | Data Type | Required | Description |
| action | string | Yes | Refer to [Custom role actions and scopes]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for full list of available actions. |
| scope | string | No | If not present, no scope will be mapped to the permission. Refer to [Custom role actions and scopes]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for full list of available scopes. |
| action | string | Yes | Refer to [Custom role actions and scopes](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for full list of available actions. |
| scope | string | No | If not present, no scope will be mapped to the permission. Refer to [Custom role actions and scopes](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for full list of available scopes. |
#### Example response
@ -494,7 +494,7 @@ Permission validation only occurs when permission validation is enabled (`rbac.p
> It has been enabled by default since Grafana 10.2.
For more information, refer to [Create role validation errors]({{< ref "#create-role-validation-errors" >}}).
For more information, refer to [Create role validation errors](#create-role-validation-errors).
| force | boolean | No | When set to `true`, the role will be deleted with all its assignments. |
| global | boolean | No | A flag indicating if the role is global or not. If set to false, the default org ID of the authenticated user will be used from the request. Refer to the [About RBAC]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control" >}}) for more information. |
| global | boolean | No | A flag indicating if the role is global or not. If set to false, the default org ID of the authenticated user will be used from the request. Refer to the [About RBAC](/docs/grafana/latest/administration/roles-and-permissions/access-control/) for more information. |
@ -28,17 +28,17 @@ To use these API endpoints you have to use Basic authentication and the Grafana
The `admin` user that Grafana is provisioned with by default has permissions to use these API endpoints.
{{</admonition>}}
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "../../administration/roles-and-permissions/access-control/custom-role-actions-scopes/" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](../../../administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Fetch settings
`GET /api/admin/settings`
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
**Required permissions**
See note in the [introduction]({{< ref "#admin-api" >}}) for an explanation.
See note in the [introduction](#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
**Required permissions**
See note in the [introduction]({{< ref "#admin-api" >}}) for an explanation.
See note in the [introduction](#admin-api) for an explanation.
| Action | Scope |
| ----------------- | ----- |
@ -307,7 +307,7 @@ Content-Type: application/json
Preview usage report to be sent to vendor.
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
Create new user. Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Create new user. Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
**Required permissions**
See note in the [introduction]({{< ref "#admin-api" >}}) for an explanation.
See note in the [introduction](#admin-api) for an explanation.
| Action | Scope |
| ------------ | ----- |
@ -371,7 +371,7 @@ Content-Type: application/json
}
```
Note that `OrgId` is an optional parameter that can be used to assign a new user to a different organization when [auto_assign_org]({{< relref "../../setup-grafana/configure-grafana/#auto-assign-org" >}}) is set to `true`.
Note that `OrgId` is an optional parameter that can be used to assign a new user to a different organization when [auto_assign_org](../../../setup-grafana/configure-grafana/#auto-assign-org) is set to `true`.
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
Change password for a specific user.
**Required permissions**
See note in the [introduction]({{< ref "#admin-api" >}}) for an explanation.
See note in the [introduction](#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
**Required permissions**
See note in the [introduction]({{< ref "#admin-api" >}}) for an explanation.
See note in the [introduction](#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
**Required permissions**
See note in the [introduction]({{< ref "#admin-api" >}}) for an explanation.
See note in the [introduction](#admin-api) for an explanation.
Return a list of all auth tokens (devices) that the user currently have logged in from.
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
**Required permissions**
See note in the [introduction]({{< ref "#admin-api" >}}) for an explanation.
See note in the [introduction](#admin-api) for an explanation.
Revokes the given auth token (device) for the user. User of issued auth token (device) will no longer be logged in
and will be required to authenticate again upon next activity.
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
**Required permissions**
See note in the [introduction]({{< ref "#admin-api" >}}) for an explanation.
See note in the [introduction](#admin-api) for an explanation.
Logout user revokes all auth tokens (devices) for the user. User of issued auth tokens (devices) will no longer be logged in
and will be required to authenticate again upon next activity.
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
**Required permissions**
See note in the [introduction]({{< ref "#admin-api" >}}) for an explanation.
See note in the [introduction](#admin-api) for an explanation.
| Action | Scope |
| ------------ | --------------- |
@ -630,11 +630,11 @@ Reloads the provisioning config files for specified type and provision entities
until the new provisioned entities are already stored in the database. In case of dashboards, it will stop
polling for changes in dashboard files and then restart it with new configurations after returning.
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
**Required permissions**
See note in the [introduction]({{< ref "#admin-api" >}}) for an explanation.
See note in the [introduction](#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](http://docs.grafana.org/http_api/admin/#admin-api) for an explanation.
Only works with Basic Authentication (username and password). See [introduction](/docs/grafana/<GRAFANA_VERSION>/http_api/admin/#admin-api) for an explanation.
**Example Request**:
@ -694,7 +694,7 @@ Content-Type: application/json
`POST /api/admin/encryption/rotate-data-keys`
[Rotates]({{< relref "../../setup-grafana/configure-security/configure-database-encryption/#rotate-data-keys" >}}) data encryption keys.
[Rotates](../../../setup-grafana/configure-security/configure-database-encryption/#rotate-data-keys) data encryption keys.
**Example Request**:
@ -715,7 +715,7 @@ Content-Type: application/json
`POST /api/admin/encryption/reencrypt-data-keys`
[Re-encrypts]({{< relref "../../setup-grafana/configure-security/configure-database-encryption/#re-encrypt-data-keys" >}}) data encryption keys.
[Re-encrypts](../../../setup-grafana/configure-security/configure-database-encryption/#re-encrypt-data-keys) data encryption keys.
Annotations are saved in the Grafana database (sqlite, mysql or postgres). Annotations can be organization annotations that can be shown on any dashboard by configuring an annotation data source - they are filtered by tags. Or they can be tied to a panel on a dashboard and are then only shown on that panel.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Find Annotations
@ -30,7 +30,7 @@ Annotations are saved in the Grafana database (sqlite, mysql or postgres). Annot
**Required permissions**
See note in the [introduction]({{< ref "#annotations-api" >}}) for an explanation.
See note in the [introduction](#annotations-api) for an explanation.
<!-- prettier-ignore-start -->
| Action | Scope |
@ -123,7 +123,7 @@ The format for `time` and `timeEnd` should be epoch numbers in millisecond resol
**Required permissions**
See note in the [introduction]({{< ref "#annotations-api" >}}) for an explanation.
See note in the [introduction](#annotations-api) for an explanation.
<!-- prettier-ignore-start -->
| Action | Scope |
@ -178,7 +178,7 @@ format (string with multiple tags being separated by a space).
**Required permissions**
See note in the [introduction]({{< ref "#annotations-api" >}}) for an explanation.
See note in the [introduction](#annotations-api) for an explanation.
@ -22,10 +22,10 @@ title: 'Authentication HTTP API '
The Authentication HTTP API is used to manage API keys.
{{% admonition type="note" %}}
Grafana recommends using service accounts instead of API keys. For more information, refer to [Grafana service account API reference]({{< relref "./serviceaccount/" >}}).
Grafana recommends using service accounts instead of API keys. For more information, refer to [Grafana service account API reference](../serviceaccount/).
{{% /admonition %}}
> If you are running Grafana Enterprise, for some endpoints you would need to have relevant permissions. Refer to [Role-based access control permissions]({{< relref "../../administration/roles-and-permissions/access-control/custom-role-actions-scopes/" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you would need to have relevant permissions. Refer to [Role-based access control permissions](../../../administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## List API keys
@ -38,7 +38,7 @@ This endpoint is deprecated.
**Required permissions**
See note in the [introduction]({{< ref "#authentication-api" >}}) for an explanation.
See note in the [introduction](#authentication-api) for an explanation.
| Action | Scope |
| -------------- | ----------- |
@ -85,7 +85,7 @@ This endpoint has been made obsolete in Grafana 11.3.0.
{{% /admonition %}}
Endpoint is obsolete and has been moved to [Grafana service account API]({{< relref "./serviceaccount/" >}}). For more information, refer to [Migrate to Grafana service account API](/docs/grafana/<GRAFANA_VERSION>/administration/service-accounts/migrate-api-keys/).
Endpoint is obsolete and has been moved to [Grafana service account API](../serviceaccount/). For more information, refer to [Migrate to Grafana service account API](/docs/grafana/<GRAFANA_VERSION>/administration/service-accounts/migrate-api-keys/).
`POST /api/auth/keys`
@ -110,7 +110,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#authentication-api" >}}) for an explanation.
See note in the [introduction](#authentication-api) for an explanation.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Identifier (id) vs unique identifier (uid)
@ -26,7 +26,7 @@ The identifier (id) of a dashboard is an auto-incrementing numeric value and is
The unique identifier (uid) of a dashboard can be used for uniquely identify a dashboard between multiple Grafana installs.
It's automatically generated if not provided when creating a dashboard. The uid allows having consistent URLs for accessing
dashboards and when syncing dashboards between multiple Grafana installs, see [dashboard provisioning]({{< relref "/docs/grafana/latest/administration/provisioning#dashboards" >}})
dashboards and when syncing dashboards between multiple Grafana installs, see [dashboard provisioning](/docs/grafana/latest/administration/provisioning/#dashboards)
for more information. This means that changing the title of a dashboard will not break any bookmarked links to that dashboard.
The uid can have a maximum length of 40 characters.
@ -41,7 +41,7 @@ Creates a new dashboard or updates an existing dashboard. When updating existing
**Required permissions**
See note in the [introduction]({{< ref "#dashboard-api" >}}) for an explanation.
See note in the [introduction](#dashboard-api) for an explanation.
<!-- prettier-ignore-start -->
| Action | Scope |
@ -80,7 +80,7 @@ JSON Body schema:
- **dashboard** – The complete dashboard model.
- **dashboard.id** – id = null to create a new dashboard.
- **dashboard.uid** – Optional unique identifier when creating a dashboard. uid = null will generate a new uid.
- **dashboard.refresh** - Set the dashboard refresh interval. If this is lower than [the minimum refresh interval]({{< relref "/docs/grafana/latest/setup-grafana/configure-grafana#min_refresh_interval" >}}), then Grafana will ignore it and will enforce the minimum refresh interval.
- **dashboard.refresh** - Set the dashboard refresh interval. If this is lower than [the minimum refresh interval](/docs/grafana/latest/setup-grafana/configure-grafana/#min_refresh_interval), then Grafana will ignore it and will enforce the minimum refresh interval.
- **folderId** – The id of the folder to save the dashboard in.
- **folderUid** – The UID of the folder to save the dashboard in. Overrides the `folderId`.
- **overwrite** – Set to true if you want to overwrite an existing dashboard with a given dashboard UID.
@ -163,7 +163,7 @@ Will return the dashboard given the dashboard unique identifier (uid). Informati
**Required permissions**
See note in the [introduction]({{< ref "#dashboard-api" >}}) for an explanation.
See note in the [introduction](#dashboard-api) for an explanation.
<!-- prettier-ignore-start -->
| Action | Scope |
@ -222,7 +222,7 @@ Will delete the dashboard given the specified unique identifier (uid).
**Required permissions**
See note in the [introduction]({{< ref "#dashboard-api" >}}) for an explanation.
See note in the [introduction](#dashboard-api) for an explanation.
<!-- prettier-ignore-start -->
| Action | Scope |
@ -272,7 +272,7 @@ Will delete permanently the dashboard given the specified unique identifier (uid
**Required permissions**
See note in the [introduction]({{< ref "#dashboard-api" >}}) for an explanation.
See note in the [introduction](#dashboard-api) for an explanation.
<!-- prettier-ignore-start -->
| Action | Scope |
@ -322,7 +322,7 @@ Will restore a deleted dashboard given the specified unique identifier (uid).
**Required permissions**
See note in the [introduction]({{< ref "#dashboard-api" >}}) for an explanation.
See note in the [introduction](#dashboard-api) for an explanation.
<!-- prettier-ignore-start -->
| Action | Scope |
@ -450,4 +450,4 @@ Content-Type: application/json
## Dashboard Search
See [Folder/Dashboard Search API]({{< relref "folder_dashboard_search/" >}}).
See [Folder/Dashboard Search API](../folder_dashboard_search/).
@ -32,7 +32,7 @@ The permission levels for the permission field:
- 2 = Edit
- 4 = Admin
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Get permissions for a dashboard
@ -42,7 +42,7 @@ Gets all existing permissions for the dashboard with the given `uid`.
**Required permissions**
See note in the [introduction]({{< ref "#dashboard-permission-api" >}}) for an explanation.
See note in the [introduction](#dashboard-permission-api) for an explanation.
<!-- prettier-ignore-start -->
| Action | Scope |
@ -124,7 +124,7 @@ Updates permissions for a dashboard. This operation will remove existing permiss
**Required permissions**
See note in the [introduction]({{< ref "#dashboard-permission-api" >}}) for an explanation.
See note in the [introduction](#dashboard-permission-api) for an explanation.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Get all data sources
@ -31,7 +31,7 @@ This API currently doesn't handle pagination. The default maximum number of data
**Required permissions**
See note in the [introduction]({{< ref "#data-source-api" >}}) for an explanation.
See note in the [introduction](#data-source-api) for an explanation.
| Action | Scope |
| ---------------- | -------------- |
@ -90,7 +90,7 @@ This API is deprecated since Grafana v9.0.0 and will be removed in a future rele
**Required permissions**
See note in the [introduction]({{< ref "#data-source-api" >}}) for an explanation.
See note in the [introduction](#data-source-api) for an explanation.
@ -23,9 +23,9 @@ title: Datasource Permissions HTTP API
# Data Source Permissions API
> The Data Source Permissions is only available in Grafana Enterprise. Read more about [Grafana Enterprise]({{< relref "/docs/grafana/latest/introduction/grafana-enterprise" >}}).
> The Data Source Permissions is only available in Grafana Enterprise. Read more about [Grafana Enterprise](/docs/grafana/latest/introduction/grafana-enterprise/).
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
This API can be used to list, add and remove permissions for a data source.
@ -39,7 +39,7 @@ Gets all existing permissions for the data source with the given `uid`.
**Required permissions**
See note in the [introduction]({{< ref "#data-source-permissions-api" >}}) for an explanation.
See note in the [introduction](#data-source-permissions-api) for an explanation.
@ -32,7 +32,7 @@ There are two authentication methods to access the API:
The task is to create a new organization and then add a Token that can be used by other users. In the examples below which use basic auth, the user is `admin` and the password is `admin`.
1. [Create the org](http://docs.grafana.org/http_api/org/#create-organization). Here is an example using curl:
1. [Create the org](/docs/grafana/<GRAFANA_VERSION>/http_api/org/#create-organization). Here is an example using curl:
```bash
curl -X POST -H "Content-Type: application/json" -d '{"name":"apiorg"}' http://admin:admin@localhost:3000/api/orgs
@ -40,25 +40,25 @@ The task is to create a new organization and then add a Token that can be used b
This should return a response: `{"message":"Organization created","orgId":6}`. Use the orgId for the next steps.
1. Optional step. If the org was created previously and/or step 3 fails then first [add your Admin user to the org](http://docs.grafana.org/http_api/org/#add-user-in-organization):
1. Optional step. If the org was created previously and/or step 3 fails then first [add your Admin user to the org](/docs/grafana/<GRAFANA_VERSION>/http_api/org/#add-user-in-organization):
1. [Create a Service Account token]({{< relref "./serviceaccount/#create-service-account-tokens" >}}) for the service account created in the previous step:
1. [Create a Service Account token](../../serviceaccount/#create-service-account-tokens) for the service account created in the previous step:
```bash
curl -X POST -H "Content-Type: application/json" -d '{"name":"test-token"}' http://admin:admin@localhost:3000/api/serviceaccounts/<serviceaccountid>/tokens
@ -83,7 +83,7 @@ The task is to create a new organization and then add a Token that can be used b
Using the Token that was created in the previous step, you can create a dashboard or carry out other actions without having to switch organizations.
1. [Add a dashboard](http://docs.grafana.org/http_api/dashboard/#create-update-dashboard) using the key (or bearer token as it is also called):
1. [Add a dashboard](/docs/grafana/<GRAFANA_VERSION>/http_api/dashboard/#create-update-dashboard) using the key (or bearer token as it is also called):
@ -27,16 +27,16 @@ The most basic example for a dashboard for which there is no authentication. You
curl http://localhost:3000/api/search
```
Here's a cURL command that works for getting the home dashboard when you are running Grafana locally with [basic authentication]({{< relref "/docs/grafana/latest/setup-grafana/configure-security/configure-authentication#basic-auth" >}}) enabled using the default admin credentials:
Here's a cURL command that works for getting the home dashboard when you are running Grafana locally with [basic authentication](/docs/grafana/latest/setup-grafana/configure-security/configure-authentication/#basic-auth) enabled using the default admin credentials:
```
curl http://admin:admin@localhost:3000/api/search
```
To pass a username and password with [HTTP basic authorization]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/manage-rbac-roles" >}}), encode them as base64.
To pass a username and password with [HTTP basic authorization](/docs/grafana/latest/administration/roles-and-permissions/access-control/manage-rbac-roles/), encode them as base64.
You can't use authorization tokens in the request.
For example, to [list permissions associated with roles]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/manage-rbac-roles" >}}) given a username of `user` and password of `password`, use:
For example, to [list permissions associated with roles](/docs/grafana/latest/administration/roles-and-permissions/access-control/manage-rbac-roles/) given a username of `user` and password of `password`, use:
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Identifier (id) vs unique identifier (uid)
@ -40,7 +40,7 @@ that the authenticated user has permission to view.
**Required permissions**
See note in the [introduction]({{< ref "#folder-api" >}}) for an explanation.
See note in the [introduction](#folder-api) for an explanation.
| Action | Scope |
| -------------- | ----------- |
@ -83,7 +83,7 @@ Will return the folder given the folder uid.
**Required permissions**
See note in the [introduction]({{< ref "#folder-api" >}}) for an explanation.
See note in the [introduction](#folder-api) for an explanation.
| Action | Scope |
| -------------- | ----------- |
@ -141,7 +141,7 @@ Creates a new folder.
**Required permissions**
See note in the [introduction]({{< ref "#folder-api" >}}) for an explanation.
See note in the [introduction](#folder-api) for an explanation.
`folders:create` allows creating folders and subfolders. If granted with scope `folders:uid:general`, allows creating root level folders. Otherwise, allows creating subfolders under the specified folders.
- **parentUid** - Optional field, the unique identifier of the parent folder under which the folder should be created. Requires nested folders to be enabled.
@ -215,7 +215,7 @@ Updates an existing folder identified by uid.
**Required permissions**
See note in the [introduction]({{< ref "#folder-api" >}}) for an explanation.
See note in the [introduction](#folder-api) for an explanation.
| Action | Scope |
| --------------- | ----------- |
@ -302,11 +302,11 @@ Content-Length: 97
Deletes an existing folder identified by UID along with all dashboards (and their alerts) stored in the folder. This operation cannot be reverted.
If [Grafana Alerting]({{< relref "/docs/grafana/latest/alerting" >}}) is enabled, you can set an optional query parameter `forceDeleteRules=false` so that requests will fail with 400 (Bad Request) error if the folder contains any Grafana alerts. However, if this parameter is set to `true` then it will delete any Grafana alerts under this folder.
If [Grafana Alerting](/docs/grafana/latest/alerting/) is enabled, you can set an optional query parameter `forceDeleteRules=false` so that requests will fail with 400 (Bad Request) error if the folder contains any Grafana alerts. However, if this parameter is set to `true` then it will delete any Grafana alerts under this folder.
**Required permissions**
See note in the [introduction]({{< ref "#folder-api" >}}) for an explanation.
See note in the [introduction](#folder-api) for an explanation.
| Action | Scope |
| ---------------- | ----------- |
@ -352,7 +352,7 @@ This is relevant only if nested folders are enabled.
**Required permissions**
See note in the [introduction]({{< ref "#folder-api" >}}) for an explanation.
See note in the [introduction](#folder-api) for an explanation.
If moving the folder under another folder:
@ -367,7 +367,7 @@ If moving the folder under root:
JSON body schema:
- **parentUid** – Optional [unique identifier]({{< relref "#identifier-id-vs-unique-identifier-uid" >}}) of the new parent folder. If this is empty, then the folder is moved under the root.
- **parentUid** – Optional [unique identifier](#identifier-id-vs-unique-identifier-uid) of the new parent folder. If this is empty, then the folder is moved under the root.
@ -24,7 +24,7 @@ title: Folder/Dashboard Search HTTP API
`GET /api/search/`
> Note: When using [Role-based access control]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control" >}}), search results will contain only dashboards and folders which you have access to.
> Note: When using [Role-based access control](/docs/grafana/latest/administration/roles-and-permissions/access-control/), search results will contain only dashboards and folders which you have access to.
@ -32,7 +32,7 @@ The permission levels for the permission field:
- 2 = Edit
- 4 = Admin
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Get permissions for a folder
@ -42,7 +42,7 @@ Gets all existing permissions for the folder with the given `uid`.
**Required permissions**
See note in the [introduction]({{< ref "#folder-permission-api" >}}) for an explanation.
See note in the [introduction](#folder-permission-api) for an explanation.
| Action | Scope |
| -------------------------- | ----------- |
@ -121,7 +121,7 @@ Updates permissions for a folder. This operation will remove existing permission
**Required permissions**
See note in the [introduction]({{< ref "#folder-permission-api" >}}) for an explanation.
See note in the [introduction](#folder-permission-api) for an explanation.
Licensing is only available in Grafana Enterprise. Read more about [Grafana Enterprise]({{< relref "/docs/grafana/latest/introduction/grafana-enterprise" >}}).
Licensing is only available in Grafana Enterprise. Read more about [Grafana Enterprise](/docs/grafana/latest/introduction/grafana-enterprise/).
{{<admonitiontype="caution">}}
You can't authenticate to the Licensing HTTP API with service account tokens.
@ -31,7 +31,7 @@ To use these API endpoints you have to use Basic authentication and the Grafana
The `admin` user that Grafana is provisioned with by default has permissions to use these API endpoints.
{{</admonition>}}
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Check license availability
@ -43,7 +43,7 @@ Checks if a valid license is available.
**Required permissions**
See note in the [introduction]({{< ref "#enterprise-license-api" >}}) for an explanation.
See note in the [introduction](#enterprise-license-api) for an explanation.
| Action | Scope |
| -------------- | ----- |
@ -85,7 +85,7 @@ Applies a license to a Grafana instance.
**Required permissions**
See note in the [introduction]({{< ref "#enterprise-license-api" >}}) for an explanation.
See note in the [introduction](#enterprise-license-api) for an explanation.
| Action | Scope |
| --------------- | ----- |
@ -147,7 +147,7 @@ Manually ask license issuer for a new token.
**Required permissions**
See note in the [introduction]({{< ref "#enterprise-license-api" >}}) for an explanation.
See note in the [introduction](#enterprise-license-api) for an explanation.
| Action | Scope |
| --------------- | ----- |
@ -208,7 +208,7 @@ Removes the license stored in the Grafana database.
**Required permissions**
See note in the [introduction]({{< ref "#enterprise-license-api" >}}) for an explanation.
See note in the [introduction](#enterprise-license-api) for an explanation.
@ -23,7 +23,7 @@ The Organization HTTP API is divided in two resources, `/api/org` (current organ
and `/api/orgs` (admin organizations). One big difference between these are that
the admin of all organizations API only works with basic authentication, see [Admin Organizations API](#admin-organizations-api) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Current Organization API
@ -33,7 +33,7 @@ the admin of all organizations API only works with basic authentication, see [Ad
**Required permissions**
See note in the [introduction]({{< ref "#organization-api" >}}) for an explanation.
See note in the [introduction](#organization-api) for an explanation.
| Action | Scope |
| --------- | ----- |
@ -69,7 +69,7 @@ Accessible to users with org admin role.
**Required permissions**
See note in the [introduction]({{< ref "#organization-api" >}}) for an explanation.
See note in the [introduction](#organization-api) for an explanation.
| Action | Scope |
| -------------- | -------- |
@ -115,7 +115,7 @@ when editing folder/dashboard permissions.
**Required permissions**
See note in the [introduction]({{< ref "#organization-api" >}}) for an explanation.
See note in the [introduction](#organization-api) for an explanation.
| Action | Scope |
| -------------- | -------- |
@ -151,7 +151,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#organization-api" >}}) for an explanation.
See note in the [introduction](#organization-api) for an explanation.
| Action | Scope |
| --------------- | -------- |
@ -185,7 +185,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#organization-api" >}}) for an explanation.
See note in the [introduction](#organization-api) for an explanation.
| Action | Scope |
| ---------------- | -------- |
@ -215,7 +215,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#organization-api" >}}) for an explanation.
See note in the [introduction](#organization-api) for an explanation.
| Action | Scope |
| ---------- | ----- |
@ -251,7 +251,7 @@ Adds a global user to the current organization.
**Required permissions**
See note in the [introduction]({{< ref "#organization-api" >}}) for an explanation.
See note in the [introduction](#organization-api) for an explanation.
| Action | Scope |
| ------------- | -------- |
@ -300,7 +300,7 @@ Only works with Basic Authentication (username and password), see [introduction]
**Required permissions**
See note in the [introduction]({{< ref "#organization-api" >}}) for an explanation.
See note in the [introduction](#organization-api) for an explanation.
| Action | Scope |
| --------- | ----- |
@ -342,7 +342,7 @@ Only works with Basic Authentication (username and password), see [introduction]
**Required permissions**
See note in the [introduction]({{< ref "#organization-api" >}}) for an explanation.
See note in the [introduction](#organization-api) for an explanation.
@ -24,7 +24,7 @@ title: Query and Resource Caching HTTP API
# Query and resource caching API
{{% admonition type="note" %}}
If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
{{% /admonition %}}
## Enable caching for a data source
@ -33,7 +33,7 @@ If you are running Grafana Enterprise, for some endpoints you'll need to have sp
**Required permissions**
See note in the [introduction]({{< ref "#query-and-resource-caching-api" >}}) for an explanation.
See note in the [introduction](#query-and-resource-caching-api) for an explanation.
| Action | Scope |
| ------------------------- | -------------- |
@ -83,7 +83,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#query-and-resource-caching-api" >}}) for an explanation.
See note in the [introduction](#query-and-resource-caching-api) for an explanation.
| Action | Scope |
| ------------------------- | -------------- |
@ -135,7 +135,7 @@ Will clean cached data for _all_ data sources with caching enabled. The `dataSou
**Required permissions**
See note in the [introduction]({{< ref "#query-and-resource-caching-api" >}}) for an explanation.
See note in the [introduction](#query-and-resource-caching-api) for an explanation.
| Action | Scope |
| ------------------------- | -------------- |
@ -185,7 +185,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#query-and-resource-caching-api" >}}) for an explanation.
See note in the [introduction](#query-and-resource-caching-api) for an explanation.
| Action | Scope |
| ------------------------- | -------------- |
@ -256,7 +256,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#query-and-resource-caching-api" >}}) for an explanation.
See note in the [introduction](#query-and-resource-caching-api) for an explanation.
This API allows you to interact programmatically with the [Reporting]({{< relref "/docs/grafana/latest/dashboards/create-reports" >}}) feature.
This API allows you to interact programmatically with the [Reporting](/docs/grafana/latest/dashboards/create-reports/) feature.
> The Reporting API is not stabilized yet, it is still in active development and may change without prior notice.
> Reporting is only available in Grafana Enterprise. Read more about [Grafana Enterprise]({{< relref "/docs/grafana/latest/introduction/grafana-enterprise" >}}).
> Reporting is only available in Grafana Enterprise. Read more about [Grafana Enterprise](/docs/grafana/latest/introduction/grafana-enterprise/).
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## List all reports
@ -31,7 +31,7 @@ This API allows you to interact programmatically with the [Reporting]({{< relref
#### Required permissions
See note in the [introduction]({{< relref "#reporting-api" >}}) for an explanation.
See note in the [introduction](#reporting-api) for an explanation.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
> For Grafana Cloud instances, please use a Bearer token to authenticate. The examples within this section reference Basic authentication which is for On-Prem Grafana instances.
## Search service accounts with Paging
@ -27,7 +27,7 @@ title: Service account HTTP API
**Required permissions**
See note in the [introduction]({{< ref "#service-account-api" >}}) for an explanation.
See note in the [introduction](#service-account-api) for an explanation.
| Action | Scope |
| -------------------- | ----- |
@ -94,7 +94,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#service-account-api" >}}) for an explanation.
See note in the [introduction](#service-account-api) for an explanation.
| Action | Scope |
| ---------------------- | ----- |
@ -141,7 +141,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#service-account-api" >}}) for an explanation.
See note in the [introduction](#service-account-api) for an explanation.
| Action | Scope |
| -------------------- | --------------------- |
@ -182,7 +182,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#service-account-api" >}}) for an explanation.
See note in the [introduction](#service-account-api) for an explanation.
| Action | Scope |
| --------------------- | --------------------- |
@ -228,7 +228,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#service-account-api" >}}) for an explanation.
See note in the [introduction](#service-account-api) for an explanation.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
{{% admonition type="note" %}}
Available since Grafana 11. SAML support is in public preview behind the `ssoSettingsSAML` feature flag.
@ -29,7 +29,7 @@ Available since Grafana 11. SAML support is in public preview behind the `ssoSet
The API can be used to create, update, delete, get, and list SSO Settings for OAuth2 and SAML.
The settings managed by this API are stored in the database and override
[settings from other sources]({{< relref "../../setup-grafana/configure-security/configure-authentication" >}})
[settings from other sources](../../../setup-grafana/configure-security/configure-authentication/)
@ -27,7 +27,7 @@ Access to these API endpoints is restricted as follows:
- All authenticated users are able to view details of teams they are a member of.
- Organization Admins are able to manage all teams and team members.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Team Search With Paging
@ -39,7 +39,7 @@ or
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
| Action | Scope |
| ---------- | -------- |
@ -105,7 +105,7 @@ The `name` parameter returns a single team if the parameter matches the `name` f
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
| Action | Scope |
| ---------- | -------- |
@ -151,7 +151,7 @@ The Team `name` needs to be unique. `name` is required and `email` is optional.
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
| Action | Scope |
| ------------ | ----- |
@ -195,7 +195,7 @@ There are two fields that can be updated for a team: `name` and `email`.
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
| Action | Scope |
| ----------- | -------- |
@ -238,7 +238,7 @@ Status Codes:
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
| Action | Scope |
| ------------ | -------- |
@ -275,7 +275,7 @@ Status Codes:
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
| Action | Scope |
| ---------------------- | -------- |
@ -328,7 +328,7 @@ Status Codes:
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
| Action | Scope |
| ----------------------- | -------- |
@ -370,7 +370,7 @@ Status Codes:
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
| Action | Scope |
| ----------------------- | -------- |
@ -410,7 +410,7 @@ Will override all current members and administrators for the specified team.
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
| Action | Scope |
| ----------------------- | -------- |
@ -453,7 +453,7 @@ Status Codes:
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
| Action | Scope |
| ---------- | -------- |
@ -487,7 +487,7 @@ Content-Type: application/json
**Required permissions**
See note in the [introduction]({{< ref "#team-api" >}}) for an explanation.
See note in the [introduction](#team-api) for an explanation.
> Team Sync is only available in Grafana Enterprise. Read more about [Grafana Enterprise]({{< relref "/docs/grafana/latest/introduction/grafana-enterprise" >}}).
> Team Sync is only available in Grafana Enterprise. Read more about [Grafana Enterprise](/docs/grafana/latest/introduction/grafana-enterprise/).
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions]({{< relref "/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes" >}}) for more information.
> If you are running Grafana Enterprise, for some endpoints you'll need to have specific permissions. Refer to [Role-based access control permissions](/docs/grafana/latest/administration/roles-and-permissions/access-control/custom-role-actions-scopes/) for more information.
## Get External Groups
@ -33,7 +33,7 @@ title: Team Sync HTTP API
**Required permissions**
See note in the [introduction]({{< ref "#external-group-synchronization-api" >}}) for an explanation.
See note in the [introduction](#external-group-synchronization-api) for an explanation.
| Action | Scope |
| ---------------------- | -------- |
@ -75,7 +75,7 @@ Status Codes:
**Required permissions**
See note in the [introduction]({{< ref "#external-group-synchronization-api" >}}) for an explanation.
See note in the [introduction](#external-group-synchronization-api) for an explanation.
| Action | Scope |
| ----------------------- | -------- |
@ -117,7 +117,7 @@ Status Codes:
**Required permissions**
See note in the [introduction]({{< ref "#external-group-synchronization-api" >}}) for an explanation.
See note in the [introduction](#external-group-synchronization-api) for an explanation.
Grafana helps you collect, correlate, and visualize data with beautiful dashboards — the open source data visualization and monitoring solution that drives informed decisions, enhances system performance, and streamlines troubleshooting.
This section provides guidance to our open source community about how to build your first dashboard after you have installed Grafana. It also provides step-by-step instructions on how to add a Prometheus, InfluxDB, or an MS SQL Server data source. If you are connecting a different data source, please refer to our complete list of supported [Data sources]({{< relref "../datasources" >}}). If you would like to learn how to get started with Grafana Cloud, our fully managed observability stack, visit the [Grafana Cloud documentation](https://grafana.com/docs/grafana-cloud/quickstart/) for more information.
This section provides guidance to our open source community about how to build your first dashboard after you have installed Grafana. It also provides step-by-step instructions on how to add a Prometheus, InfluxDB, or an MS SQL Server data source. If you are connecting a different data source, please refer to our complete list of supported [Data sources](../datasources/). If you would like to learn how to get started with Grafana Cloud, our fully managed observability stack, visit the [Grafana Cloud documentation](https://grafana.com/docs/grafana-cloud/quickstart/) for more information.
@ -38,11 +38,11 @@ Windows users might need to make additional adjustments. Look for special instru
You can have more than one InfluxDB data source defined in Grafana.
1. Follow the general instructions to [add a data source]({{< relref "../datasources#add-a-data-source" >}}).
1. Follow the general instructions to [add a data source](../../datasources/#add-a-data-source).
1. Decide if you will use InfluxQL or Flux as your query language.
- [Configure the data source]({{< relref "../datasources/influxdb#configure-the-data-source" >}}) for your chosen query language.
- [Configure the data source](../../datasources/influxdb/#configure-the-data-source) for your chosen query language.
Each query language has its own unique data source settings.
- For querying features specific to each language, see the data source's [query editor documentation]({{< relref "../datasources/influxdb/query-editor" >}}).
- For querying features specific to each language, see the data source's [query editor documentation](../../datasources/influxdb/query-editor/).
##### InfluxDB guides
@ -75,8 +75,8 @@ Grafana displays a list of possible series. Click one to select it, and Grafana
Create a simple Flux query.
1. [Add a panel]({{< relref "../dashboards/build-dashboards/create-dashboard" >}}).
1. In the query editor, select your InfluxDB-Flux data source. For more information, refer to [Queries]({{< relref "../panels-visualizations/query-transform-data" >}}).
1. [Add a panel](../../dashboards/build-dashboards/create-dashboard/).
1. In the query editor, select your InfluxDB-Flux data source. For more information, refer to [Queries](../../panels-visualizations/query-transform-data/).
1. Select the **Table** visualization.
1. In the query editor text field, enter `buckets()` and then click outside of the query editor.
@ -96,12 +96,12 @@ You can also create Flux queries in the InfluxDB Explore view.
1. In Grafana, [add a panel]({{< relref "../dashboards/build-dashboards/create-dashboard" >}}) and then paste your Flux code into the query editor.
1. In Grafana, [add a panel](../../dashboards/build-dashboards/create-dashboard/) and then paste your Flux code into the query editor.
1. Click **Apply**. Your new panel should be visible with data from your Flux query.
#### Check InfluxDB metrics in Grafana Explore
In your Grafana instance, go to the [Explore]({{< relref "../explore" >}}) view and build queries to experiment with the metrics you want to monitor. Here you can also debug issues related to collecting metrics.
In your Grafana instance, go to the [Explore](../../explore/) view and build queries to experiment with the metrics you want to monitor. Here you can also debug issues related to collecting metrics.
#### Start building dashboards
@ -109,5 +109,5 @@ There you go! Use Explore and Data Explorer to experiment with your data, and ad
Here are some resources to learn more:
- Grafana documentation: [InfluxDB data source]({{< relref "../datasources/influxdb" >}})
- Grafana documentation: [InfluxDB data source](../../datasources/influxdb/)
- InfluxDB documentation: [Comparison of Flux vs InfluxQL](https://docs.influxdata.com/influxdb/v1.8/flux/flux-vs-influxql/)
@ -99,6 +99,6 @@ Optionally, play around this dashboard and customize it to:
Now that you have gained some idea of using the pre-packaged MS SQL data source and some test data, the next step is to setup your own instance of MS SQL Server database and data your development or sandbox area.
To fetch data from your own instance of MS SQL Server, add the data source using instructions in Step 4 of this topic. In Grafana [Explore]({{< relref "../explore" >}}) build queries to experiment with the metrics you want to monitor.
To fetch data from your own instance of MS SQL Server, add the data source using instructions in Step 4 of this topic. In Grafana [Explore](../../explore/) build queries to experiment with the metrics you want to monitor.
Once you have a curated list of queries, create [dashboards]({{< relref "../dashboards" >}}) to render metrics from the SQL Server database. For troubleshooting, user permissions, known issues, and query examples, refer to [Using Microsoft SQL Server in Grafana]({{< relref "../datasources/mssql" >}}).
Once you have a curated list of queries, create [dashboards](../../dashboards/) to render metrics from the SQL Server database. For troubleshooting, user permissions, known issues, and query examples, refer to [Using Microsoft SQL Server in Grafana](../../datasources/mssql/).
@ -114,11 +114,11 @@ To configure your Prometheus instance to work with Grafana locally instead of Gr
#### Check Prometheus metrics in Grafana Explore view
In your Grafana instance, go to the [Explore]({{< relref "../explore" >}}) view and build queries to experiment with the metrics you want to monitor. Here you can also debug issues related to collecting metrics from Prometheus.
In your Grafana instance, go to the [Explore](../../explore/) view and build queries to experiment with the metrics you want to monitor. Here you can also debug issues related to collecting metrics from Prometheus.
#### Start building dashboards
Now that you have a curated list of queries, create [dashboards]({{< relref "../dashboards" >}}) to render system metrics monitored by Prometheus. When you install Prometheus and node_exporter or windows_exporter, you will find recommended dashboards for use.
Now that you have a curated list of queries, create [dashboards](../../dashboards/) to render system metrics monitored by Prometheus. When you install Prometheus and node_exporter or windows_exporter, you will find recommended dashboards for use.
The following image shows a dashboard with three panels showing some system metrics.
@ -126,5 +126,5 @@ The following image shows a dashboard with three panels showing some system metr
To learn more:
- Grafana documentation: [Prometheus data source]({{< relref "../datasources/prometheus" >}})
- Grafana documentation: [Prometheus data source](../../datasources/prometheus/)
- Prometheus documentation: [What is Prometheus?](https://prometheus.io/docs/introduction/overview/)
[Grafana open source software](/oss/) enables you to query, visualize, alert on, and explore your metrics, logs, and traces wherever they are stored. Grafana OSS provides you with tools to turn your time-series database (TSDB) data into insightful graphs and visualizations. The Grafana OSS plugin framework also enables you to connect other data sources like NoSQL/SQL databases, ticketing tools like Jira or ServiceNow, and CI/CD tooling like GitLab.
After you have [installed Grafana]({{< relref "../setup-grafana/installation" >}}) and set up your first dashboard using instructions in [Getting started with Grafana]({{< relref "../getting-started/build-first-dashboard" >}}), you will have many options to choose from depending on your requirements. For example, if you want to view weather data and statistics about your smart home, then you can create a [playlist]({{< relref "../dashboards/create-manage-playlists" >}}). If you are the administrator for an enterprise and are managing Grafana for multiple teams, then you can set up [provisioning]({{< relref "../administration/provisioning" >}}) and [authentication]({{< relref "../setup-grafana/configure-security/configure-authentication" >}}).
After you have [installed Grafana](../setup-grafana/installation/) and set up your first dashboard using instructions in [Getting started with Grafana](../getting-started/build-first-dashboard/), you will have many options to choose from depending on your requirements. For example, if you want to view weather data and statistics about your smart home, then you can create a [playlist](../dashboards/create-manage-playlists/). If you are the administrator for an enterprise and are managing Grafana for multiple teams, then you can set up [provisioning](../administration/provisioning/) and [authentication](../setup-grafana/configure-security/configure-authentication/).
The following sections provide an overview of Grafana features and links to product documentation to help you learn more. For more guidance and ideas, check out our [Grafana Community forums](https://community.grafana.com/).
## Explore metrics, logs, and traces
Explore your data through ad-hoc queries and dynamic drilldown. Split view and compare different time ranges, queries and data sources side by side. Refer to [Explore]({{< relref "../explore" >}}) for more information.
Explore your data through ad-hoc queries and dynamic drilldown. Split view and compare different time ranges, queries and data sources side by side. Refer to [Explore](../explore/) for more information.
## Alerts
If you're using Grafana Alerting, then you can have alerts sent through a number of different alert notifiers, including PagerDuty, SMS, email, VictorOps, OpsGenie, or Slack.
Alert hooks allow you to create different notifiers with a bit of code if you prefer some other channels of communication. Visually define [alert rules]({{< relref "../alerting/alerting-rules" >}}) for your most important metrics.
Alert hooks allow you to create different notifiers with a bit of code if you prefer some other channels of communication. Visually define [alert rules](../alerting/alerting-rules/) for your most important metrics.
## Annotations
Annotate graphs with rich events from different data sources. Hover over events to see the full event metadata and tags.
This feature, which shows up as a graph marker in Grafana, is useful for correlating data in case something goes wrong. You can create the annotations manually—just control-click on a graph and input some text—or you can fetch data from any data source. Refer to [Annotations]({{< relref "../dashboards/build-dashboards/annotate-visualizations" >}}) for more information.
This feature, which shows up as a graph marker in Grafana, is useful for correlating data in case something goes wrong. You can create the annotations manually—just control-click on a graph and input some text—or you can fetch data from any data source. Refer to [Annotations](../dashboards/build-dashboards/annotate-visualizations/) for more information.
## Dashboard variables
[Template variables]({{< relref "../dashboards/variables" >}}) 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](../dashboards/variables/) 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.
## Configure Grafana
If you're a Grafana administrator, then you'll want to thoroughly familiarize yourself with [Grafana configuration options]({{< relref "../setup-grafana/configure-grafana" >}}) and the [Grafana CLI]({{< relref "../cli" >}}).
If you're a Grafana administrator, then you'll want to thoroughly familiarize yourself with [Grafana configuration options](../setup-grafana/configure-grafana/) and the [Grafana CLI](../cli/).
Configuration covers both config files and environment variables. You can set up default ports, logging levels, email IP addresses, security, and more.
@ -54,19 +54,19 @@ Discover hundreds of [dashboards](/grafana/dashboards) and [plugins](/grafana/pl
## Authentication
Grafana supports different authentication methods, such as LDAP and OAuth, and allows you to map users to organizations. Refer to the [User authentication overview]({{< relref "../setup-grafana/configure-security/configure-authentication" >}}) for more information.
Grafana supports different authentication methods, such as LDAP and OAuth, and allows you to map users to organizations. Refer to the [User authentication overview](../setup-grafana/configure-security/configure-authentication/) for more information.
In Grafana Enterprise, you can also map users to teams: If your company has its own authentication system, Grafana allows you to map the teams in your internal systems to teams in Grafana. That way, you can automatically give people access to the dashboards designated for their teams. Refer to [Grafana Enterprise]({{< relref "./grafana-enterprise" >}}) for more information.
In Grafana Enterprise, you can also map users to teams: If your company has its own authentication system, Grafana allows you to map the teams in your internal systems to teams in Grafana. That way, you can automatically give people access to the dashboards designated for their teams. Refer to [Grafana Enterprise](grafana-enterprise/) for more information.
## Provisioning
While it's easy to click, drag, and drop to create a single dashboard, power users in need of many dashboards will want to automate the setup with a script. You can script anything in Grafana.
For example, if you're spinning up a new Kubernetes cluster, you can also spin up a Grafana automatically with a script that would have the right server, IP address, and data sources preset and locked in so users cannot change them. It's also a way of getting control over a lot of dashboards. Refer to [Provisioning]({{< relref "../administration/provisioning" >}}) for more information.
For example, if you're spinning up a new Kubernetes cluster, you can also spin up a Grafana automatically with a script that would have the right server, IP address, and data sources preset and locked in so users cannot change them. It's also a way of getting control over a lot of dashboards. Refer to [Provisioning](../administration/provisioning/) for more information.
## Permissions
When organizations have one Grafana and multiple teams, they often want the ability to both keep things separate and share dashboards. You can create a team of users and then set permissions on [folders and dashboards]({{< relref "../administration/user-management/manage-dashboard-permissions" >}}), and down to the [data source level]({{< relref "../administration/data-source-management#data-source-permissions" >}}) if you're using [Grafana Enterprise]({{< relref "./grafana-enterprise" >}}).
When organizations have one Grafana and multiple teams, they often want the ability to both keep things separate and share dashboards. You can create a team of users and then set permissions on [folders and dashboards](../administration/user-management/manage-dashboard-permissions/), and down to the [data source level](../administration/data-source-management/#data-source-permissions) if you're using [Grafana Enterprise](grafana-enterprise/).
@ -16,127 +16,127 @@ as well as notices about deprecations, breaking changes, and changes related to
{{% admonition type="note" %}}
As of Grafana v9.2 we no longer publish release notes, which are redundant with other release lists that we publish:
- For details about new features, deprecations, and breaking changes in new Grafana releases, see [What's New in Grafana]({{< relref "../whatsnew/" >}}).
- For details about new features, deprecations, and breaking changes in new Grafana releases, see [What's New in Grafana](../whatsnew/).
- For lists of changes to Grafana, with links to pull requests and related issues when available, see the [Changelog](https://github.com/grafana/grafana/blob/main/CHANGELOG.md).
{{% /admonition %}}
- [Release notes for 9.1.7]({{< relref "release-notes-9-1-7" >}})
- [Release notes for 9.1.6]({{< relref "release-notes-9-1-6" >}})
- [Release notes for 9.1.5]({{< relref "release-notes-9-1-5" >}})
- [Release notes for 9.1.4]({{< relref "release-notes-9-1-4" >}})
- [Release notes for 9.1.3]({{< relref "release-notes-9-1-3" >}})
- [Release notes for 9.1.2]({{< relref "release-notes-9-1-2" >}})
- [Release notes for 9.1.1]({{< relref "release-notes-9-1-1" >}})
- [Release notes for 9.1.0]({{< relref "release-notes-9-1-0" >}})
- [Release notes for 9.1.0-beta1]({{< relref "release-notes-9-1-0-beta1" >}})
- [Release notes for 9.0.9]({{< relref "release-notes-9-0-9" >}})
- [Release notes for 9.0.8]({{< relref "release-notes-9-0-8" >}})
- [Release notes for 9.0.7]({{< relref "release-notes-9-0-7" >}})
- [Release notes for 9.0.6]({{< relref "release-notes-9-0-6" >}})
- [Release notes for 9.0.5]({{< relref "release-notes-9-0-5" >}})
- [Release notes for 9.0.4]({{< relref "release-notes-9-0-4" >}})
- [Release notes for 9.0.3]({{< relref "release-notes-9-0-3" >}})
- [Release notes for 9.0.2]({{< relref "release-notes-9-0-2" >}})
- [Release notes for 9.0.1]({{< relref "release-notes-9-0-1" >}})
- [Release notes for 9.0.0]({{< relref "release-notes-9-0-0/" >}})
- [Release notes for 9.0.0-beta3]({{< relref "release-notes-9-0-0-beta3/" >}})
- [Release notes for 9.0.0-beta2]({{< relref "release-notes-9-0-0-beta2/" >}})
- [Release notes for 9.0.0-beta1]({{< relref "release-notes-9-0-0-beta1/" >}})
- [Release notes for 8.5.13]({{< relref "release-notes-8-5-13" >}})
- [Release notes for 8.5.11]({{< relref "release-notes-8-5-11" >}})
- [Release notes for 8.5.10]({{< relref "release-notes-8-5-10" >}})
- [Release notes for 8.5.9]({{< relref "release-notes-8-5-9" >}})
- [Release notes for 8.5.6]({{< relref "release-notes-8-5-6/" >}})
- [Release notes for 8.5.5]({{< relref "release-notes-8-5-5/" >}})
- [Release notes for 8.5.4]({{< relref "release-notes-8-5-4/" >}})
- [Release notes for 8.5.3]({{< relref "release-notes-8-5-3/" >}})
- [Release notes for 8.5.2]({{< relref "release-notes-8-5-2/" >}})
- [Release notes for 8.5.1]({{< relref "release-notes-8-5-1/" >}})
- [Release notes for 8.5.0]({{< relref "release-notes-8-5-0/" >}})
- [Release notes for 8.5.0-beta1]({{< relref "release-notes-8-5-0-beta1/" >}})
- [Release notes for 8.4.11]({{< relref "release-notes-8-4-11" >}})
- [Release notes for 8.4.10]({{< relref "release-notes-8-4-10" >}})
- [Release notes for 8.4.7]({{< relref "release-notes-8-4-7/" >}})
- [Release notes for 8.4.6]({{< relref "release-notes-8-4-6/" >}})
- [Release notes for 8.4.5]({{< relref "release-notes-8-4-5/" >}})
- [Release notes for 8.4.4]({{< relref "release-notes-8-4-4/" >}})
- [Release notes for 8.4.3]({{< relref "release-notes-8-4-3/" >}})
- [Release notes for 8.4.2]({{< relref "release-notes-8-4-2/" >}})
- [Release notes for 8.4.1]({{< relref "release-notes-8-4-1/" >}})
- [Release notes for 8.4.0-beta1]({{< relref "release-notes-8-4-0-beta1/" >}})
- [Release notes for 8.3.11]({{< relref "release-notes-8-3-11/" >}})
- [Release notes for 8.3.7]({{< relref "release-notes-8-3-7/" >}})
- [Release notes for 8.3.6]({{< relref "release-notes-8-3-6/" >}})
- [Release notes for 8.3.5]({{< relref "release-notes-8-3-5/" >}})
- [Release notes for 8.3.4]({{< relref "release-notes-8-3-4/" >}})
- [Release notes for 8.3.3]({{< relref "release-notes-8-3-3/" >}})
- [Release notes for 8.3.2]({{< relref "release-notes-8-3-2/" >}})
- [Release notes for 8.3.1]({{< relref "release-notes-8-3-1/" >}})
- [Release notes for 8.3.0]({{< relref "release-notes-8-3-0/" >}})
- [Release notes for 8.3.0-beta2]({{< relref "release-notes-8-3-0-beta2/" >}})
- [Release notes for 8.3.0-beta1]({{< relref "release-notes-8-3-0-beta1/" >}})
- [Release notes for 8.2.7]({{< relref "release-notes-8-2-7/" >}})
- [Release notes for 8.2.6]({{< relref "release-notes-8-2-6/" >}})
- [Release notes for 8.2.5]({{< relref "release-notes-8-2-5/" >}})
- [Release notes for 8.2.4]({{< relref "release-notes-8-2-4/" >}})
- [Release notes for 8.2.3]({{< relref "release-notes-8-2-3/" >}})
- [Release notes for 8.2.2]({{< relref "release-notes-8-2-2/" >}})
- [Release notes for 8.2.1]({{< relref "release-notes-8-2-1/" >}})
- [Release notes for 8.2.0]({{< relref "release-notes-8-2-0/" >}})
- [Release notes for 8.2.0-beta2]({{< relref "release-notes-8-2-0-beta2/" >}})
- [Release notes for 8.2.0-beta1]({{< relref "release-notes-8-2-0-beta1/" >}})
- [Release notes for 8.1.8]({{< relref "release-notes-8-1-8/" >}})
- [Release notes for 8.1.7]({{< relref "release-notes-8-1-7/" >}})
- [Release notes for 8.1.6]({{< relref "release-notes-8-1-6/" >}})
- [Release notes for 8.1.5]({{< relref "release-notes-8-1-5/" >}})
- [Release notes for 8.1.4]({{< relref "release-notes-8-1-4/" >}})
- [Release notes for 8.1.3]({{< relref "release-notes-8-1-3/" >}})
- [Release notes for 8.1.2]({{< relref "release-notes-8-1-2/" >}})
- [Release notes for 8.1.1]({{< relref "release-notes-8-1-1/" >}})
- [Release notes for 8.1.0]({{< relref "release-notes-8-1-0/" >}})
- [Release notes for 8.1.0-beta3]({{< relref "release-notes-8-1-0-beta3/" >}})
- [Release notes for 8.1.0-beta2]({{< relref "release-notes-8-1-0-beta2/" >}})
- [Release notes for 8.1.0-beta1]({{< relref "release-notes-8-1-0-beta1/" >}})
- [Release notes for 8.0.7]({{< relref "release-notes-8-0-7/" >}})
- [Release notes for 8.0.6]({{< relref "release-notes-8-0-6/" >}})
- [Release notes for 8.0.5]({{< relref "release-notes-8-0-5/" >}})
- [Release notes for 8.0.4]({{< relref "release-notes-8-0-4/" >}})
- [Release notes for 8.0.3]({{< relref "release-notes-8-0-3/" >}})
- [Release notes for 8.0.2]({{< relref "release-notes-8-0-2/" >}})
- [Release notes for 8.0.1]({{< relref "release-notes-8-0-1/" >}})
- [Release notes for 8.0.0]({{< relref "release-notes-8-0-0/" >}})
- [Release notes for 8.0.0-beta3]({{< relref "release-notes-8-0-0-beta3/" >}})
- [Release notes for 8.0.0-beta2]({{< relref "release-notes-8-0-0-beta2/" >}})
- [Release notes for 8.0.0-beta1]({{< relref "release-notes-8-0-0-beta1/" >}})
- [Release notes for 7.5.15]({{< relref "release-notes-7-5-15/" >}})
- [Release notes for 7.5.13]({{< relref "release-notes-7-5-13/" >}})
- [Release notes for 7.5.12]({{< relref "release-notes-7-5-12/" >}})
- [Release notes for 7.5.11]({{< relref "release-notes-7-5-11/" >}})
- [Release notes for 7.5.10]({{< relref "release-notes-7-5-10/" >}})
- [Release notes for 7.5.9]({{< relref "release-notes-7-5-9/" >}})
- [Release notes for 7.5.8]({{< relref "release-notes-7-5-8/" >}})
- [Release notes for 7.5.7]({{< relref "release-notes-7-5-7/" >}})
- [Release notes for 7.5.6]({{< relref "release-notes-7-5-6/" >}})
- [Release notes for 7.5.5]({{< relref "release-notes-7-5-5/" >}})
- [Release notes for 7.5.4]({{< relref "release-notes-7-5-4/" >}})
- [Release notes for 7.5.3]({{< relref "release-notes-7-5-3/" >}})
- [Release notes for 7.5.2]({{< relref "release-notes-7-5-2/" >}})
- [Release notes for 7.5.1]({{< relref "release-notes-7-5-1/" >}})
- [Release notes for 7.5.0]({{< relref "release-notes-7-5-0/" >}})
- [Release notes for 7.5.0-beta2]({{< relref "release-notes-7-5-0-beta2/" >}})
- [Release notes for 7.5.0-beta1]({{< relref "release-notes-7-5-0-beta1/" >}})
- [Release notes for 7.4.5]({{< relref "release-notes-7-4-5/" >}})
- [Release notes for 7.4.3]({{< relref "release-notes-7-4-3/" >}})
- [Release notes for 7.4.2]({{< relref "release-notes-7-4-2/" >}})
- [Release notes for 7.4.1]({{< relref "release-notes-7-4-1/" >}})
- [Release notes for 7.4.0]({{< relref "release-notes-7-4-0/" >}})
- [Release notes for 7.3.10]({{< relref "release-notes-7-3-10/" >}})
- [Release notes for 7.3.7]({{< relref "release-notes-7-3-7/" >}})
- [Release notes for 7.3.6]({{< relref "release-notes-7-3-6/" >}})
- [Release notes for 7.3.5]({{< relref "release-notes-7-3-5/" >}})
- [Release notes for 7.3.4]({{< relref "release-notes-7-3-4/" >}})
- [Release notes for 7.3.3]({{< relref "release-notes-7-3-3/" >}})
- [Release notes for 7.3.2]({{< relref "release-notes-7-3-2/" >}})
- [Release notes for 7.3.1]({{< relref "release-notes-7-3-1/" >}})
- [Release notes for 7.3.0]({{< relref "release-notes-7-3-0/" >}})
- [Release notes for 9.1.7](release-notes-9-1-7/)
- [Release notes for 9.1.6](release-notes-9-1-6/)
- [Release notes for 9.1.5](release-notes-9-1-5/)
- [Release notes for 9.1.4](release-notes-9-1-4/)
- [Release notes for 9.1.3](release-notes-9-1-3/)
- [Release notes for 9.1.2](release-notes-9-1-2/)
- [Release notes for 9.1.1](release-notes-9-1-1/)
- [Release notes for 9.1.0](release-notes-9-1-0/)
- [Release notes for 9.1.0-beta1](release-notes-9-1-0-beta1/)
- [Release notes for 9.0.9](release-notes-9-0-9/)
- [Release notes for 9.0.8](release-notes-9-0-8/)
- [Release notes for 9.0.7](release-notes-9-0-7/)
- [Release notes for 9.0.6](release-notes-9-0-6/)
- [Release notes for 9.0.5](release-notes-9-0-5/)
- [Release notes for 9.0.4](release-notes-9-0-4/)
- [Release notes for 9.0.3](release-notes-9-0-3/)
- [Release notes for 9.0.2](release-notes-9-0-2/)
- [Release notes for 9.0.1](release-notes-9-0-1/)
- [Release notes for 9.0.0](release-notes-9-0-0/)
- [Release notes for 9.0.0-beta3](release-notes-9-0-0-beta3/)
- [Release notes for 9.0.0-beta2](release-notes-9-0-0-beta2/)
- [Release notes for 9.0.0-beta1](release-notes-9-0-0-beta1/)
- [Release notes for 8.5.13](release-notes-8-5-13/)
- [Release notes for 8.5.11](release-notes-8-5-11/)
- [Release notes for 8.5.10](release-notes-8-5-10/)
- [Release notes for 8.5.9](release-notes-8-5-9/)
- [Release notes for 8.5.6](release-notes-8-5-6/)
- [Release notes for 8.5.5](release-notes-8-5-5/)
- [Release notes for 8.5.4](release-notes-8-5-4/)
- [Release notes for 8.5.3](release-notes-8-5-3/)
- [Release notes for 8.5.2](release-notes-8-5-2/)
- [Release notes for 8.5.1](release-notes-8-5-1/)
- [Release notes for 8.5.0](release-notes-8-5-0/)
- [Release notes for 8.5.0-beta1](release-notes-8-5-0-beta1/)
- [Release notes for 8.4.11](release-notes-8-4-11/)
- [Release notes for 8.4.10](release-notes-8-4-10/)
- [Release notes for 8.4.7](release-notes-8-4-7/)
- [Release notes for 8.4.6](release-notes-8-4-6/)
- [Release notes for 8.4.5](release-notes-8-4-5/)
- [Release notes for 8.4.4](release-notes-8-4-4/)
- [Release notes for 8.4.3](release-notes-8-4-3/)
- [Release notes for 8.4.2](release-notes-8-4-2/)
- [Release notes for 8.4.1](release-notes-8-4-1/)
- [Release notes for 8.4.0-beta1](release-notes-8-4-0-beta1/)
- [Release notes for 8.3.11](release-notes-8-3-11/)
- [Release notes for 8.3.7](release-notes-8-3-7/)
- [Release notes for 8.3.6](release-notes-8-3-6/)
- [Release notes for 8.3.5](release-notes-8-3-5/)
- [Release notes for 8.3.4](release-notes-8-3-4/)
- [Release notes for 8.3.3](release-notes-8-3-3/)
- [Release notes for 8.3.2](release-notes-8-3-2/)
- [Release notes for 8.3.1](release-notes-8-3-1/)
- [Release notes for 8.3.0](release-notes-8-3-0/)
- [Release notes for 8.3.0-beta2](release-notes-8-3-0-beta2/)
- [Release notes for 8.3.0-beta1](release-notes-8-3-0-beta1/)
- [Release notes for 8.2.7](release-notes-8-2-7/)
- [Release notes for 8.2.6](release-notes-8-2-6/)
- [Release notes for 8.2.5](release-notes-8-2-5/)
- [Release notes for 8.2.4](release-notes-8-2-4/)
- [Release notes for 8.2.3](release-notes-8-2-3/)
- [Release notes for 8.2.2](release-notes-8-2-2/)
- [Release notes for 8.2.1](release-notes-8-2-1/)
- [Release notes for 8.2.0](release-notes-8-2-0/)
- [Release notes for 8.2.0-beta2](release-notes-8-2-0-beta2/)
- [Release notes for 8.2.0-beta1](release-notes-8-2-0-beta1/)
- [Release notes for 8.1.8](release-notes-8-1-8/)
- [Release notes for 8.1.7](release-notes-8-1-7/)
- [Release notes for 8.1.6](release-notes-8-1-6/)
- [Release notes for 8.1.5](release-notes-8-1-5/)
- [Release notes for 8.1.4](release-notes-8-1-4/)
- [Release notes for 8.1.3](release-notes-8-1-3/)
- [Release notes for 8.1.2](release-notes-8-1-2/)
- [Release notes for 8.1.1](release-notes-8-1-1/)
- [Release notes for 8.1.0](release-notes-8-1-0/)
- [Release notes for 8.1.0-beta3](release-notes-8-1-0-beta3/)
- [Release notes for 8.1.0-beta2](release-notes-8-1-0-beta2/)
- [Release notes for 8.1.0-beta1](release-notes-8-1-0-beta1/)
- [Release notes for 8.0.7](release-notes-8-0-7/)
- [Release notes for 8.0.6](release-notes-8-0-6/)
- [Release notes for 8.0.5](release-notes-8-0-5/)
- [Release notes for 8.0.4](release-notes-8-0-4/)
- [Release notes for 8.0.3](release-notes-8-0-3/)
- [Release notes for 8.0.2](release-notes-8-0-2/)
- [Release notes for 8.0.1](release-notes-8-0-1/)
- [Release notes for 8.0.0](release-notes-8-0-0/)
- [Release notes for 8.0.0-beta3](release-notes-8-0-0-beta3/)
- [Release notes for 8.0.0-beta2](release-notes-8-0-0-beta2/)
- [Release notes for 8.0.0-beta1](release-notes-8-0-0-beta1/)
- [Release notes for 7.5.15](release-notes-7-5-15/)
- [Release notes for 7.5.13](release-notes-7-5-13/)
- [Release notes for 7.5.12](release-notes-7-5-12/)
- [Release notes for 7.5.11](release-notes-7-5-11/)
- [Release notes for 7.5.10](release-notes-7-5-10/)
- [Release notes for 7.5.9](release-notes-7-5-9/)
- [Release notes for 7.5.8](release-notes-7-5-8/)
- [Release notes for 7.5.7](release-notes-7-5-7/)
- [Release notes for 7.5.6](release-notes-7-5-6/)
- [Release notes for 7.5.5](release-notes-7-5-5/)
- [Release notes for 7.5.4](release-notes-7-5-4/)
- [Release notes for 7.5.3](release-notes-7-5-3/)
- [Release notes for 7.5.2](release-notes-7-5-2/)
- [Release notes for 7.5.1](release-notes-7-5-1/)
- [Release notes for 7.5.0](release-notes-7-5-0/)
- [Release notes for 7.5.0-beta2](release-notes-7-5-0-beta2/)
- [Release notes for 7.5.0-beta1](release-notes-7-5-0-beta1/)
- [Release notes for 7.4.5](release-notes-7-4-5/)
- [Release notes for 7.4.3](release-notes-7-4-3/)
- [Release notes for 7.4.2](release-notes-7-4-2/)
- [Release notes for 7.4.1](release-notes-7-4-1/)
- [Release notes for 7.4.0](release-notes-7-4-0/)
- [Release notes for 7.3.10](release-notes-7-3-10/)
@ -84,9 +84,9 @@ For a list of available tags, refer to [grafana/grafana-oss](https://hub.docker.
## Default paths
Grafana comes with default configuration parameters that remain the same among versions regardless of the operating system or the environment (for example, virtual machine, Docker, Kubernetes, etc.). You can refer to the [Configure Grafana]({{< relref "./configure-grafana" >}}) documentation to view all the default configuration settings.
Grafana comes with default configuration parameters that remain the same among versions regardless of the operating system or the environment (for example, virtual machine, Docker, Kubernetes, etc.). You can refer to the [Configure Grafana](../configure-grafana/) documentation to view all the default configuration settings.
The following configurations are set by default when you start the Grafana Docker container. When running in Docker you cannot change the configurations by editing the `conf/grafana.ini` file. Instead, you can modify the configuration using [environment variables]({{< relref "./configure-grafana#override-configuration-with-environment-variables" >}}).
The following configurations are set by default when you start the Grafana Docker container. When running in Docker you cannot change the configurations by editing the `conf/grafana.ini` file. Instead, you can modify the configuration using [environment variables](../configure-grafana/#override-configuration-with-environment-variables).
@ -99,7 +99,7 @@ The following configurations are set by default when you start the Grafana Docke
## Install plugins in the Docker container
You can install publicly available plugins and plugins that are private or used internally in an organization. For plugin installation instructions, refer to [Install plugins in the Docker container]({{< relref "./installation/docker#install-plugins-in-the-docker-container" >}}).
You can install publicly available plugins and plugins that are private or used internally in an organization. For plugin installation instructions, refer to [Install plugins in the Docker container](../installation/docker/#install-plugins-in-the-docker-container).
By default, Docker container logs are directed to `STDOUT`, a common practice in the Docker community. You can change this by setting a different [log mode]({{< relref "./configure-grafana#mode" >}}) such as `console`, `file`, or `syslog`. You can use one or more modes by separating them with spaces, for example, `console file`. By default, both `console` and `file` modes are enabled.
By default, Docker container logs are directed to `STDOUT`, a common practice in the Docker community. You can change this by setting a different [log mode](../configure-grafana/#mode) such as `console`, `file`, or `syslog`. You can use one or more modes by separating them with spaces, for example, `console file`. By default, both `console` and `file` modes are enabled.
Example:
@ -235,7 +235,7 @@ The following example demonstrates how to set the admin password:
### Configure Docker secrets credentials for AWS CloudWatch
Grafana ships with built-in support for the [Amazon CloudWatch datasource]({{< relref "../datasources/aws-cloudwatch" >}}). To configure the data source, you must provide information such as the AWS ID-Key, secret access key, region, and so on. You can use Docker secrets as a way to provide this information.
Grafana ships with built-in support for the [Amazon CloudWatch datasource](../../datasources/aws-cloudwatch/). To configure the data source, you must provide information such as the AWS ID-Key, secret access key, region, and so on. You can use Docker secrets as a way to provide this information.
Example:
@ -309,7 +309,7 @@ The following list includes the supported environment variables:
By default, the Grafana log level is set to `INFO`, but you can increase the log level to `DEBUG` mode when you want to reproduce a problem.
For more information about logging, refer to [logs]({{< relref "./configure-grafana#log" >}}).
For more information about logging, refer to [logs](../configure-grafana/#log).
### Increase log level using the Docker run (CLI) command
@ -203,13 +203,13 @@ Override log path using the command line argument `cfg:default.paths.logs`:
#### `plugins`
Directory where Grafana automatically scans and looks for plugins. For information about manually or automatically installing plugins, refer to [Install Grafana plugins]({{< relref "../../administration/plugin-management#install-grafana-plugins" >}}).
Directory where Grafana automatically scans and looks for plugins. For information about manually or automatically installing plugins, refer to [Install Grafana plugins](../../administration/plugin-management/#install-grafana-plugins).
**macOS:** By default, the Mac plugin location is: `/usr/local/var/lib/grafana/plugins`.
#### `provisioning`
Directory that contains [provisioning]({{< relref "../../administration/provisioning" >}}) configuration files that Grafana applies on startup.
Directory that contains [provisioning](../../administration/provisioning/) configuration files that Grafana applies on startup.
Dashboards are reloaded when the JSON files change.
<hr/>
@ -475,7 +475,7 @@ Set to `true` to add metrics and tracing for database queries. The default value
### `[remote_cache]`
Caches authentication details and session information in the configured database, Redis or Memcached. This setting does not configure [Query Caching in Grafana Enterprise]({{< relref "../../administration/data-source-management#query-and-resource-caching" >}}).
Caches authentication details and session information in the configured database, Redis or Memcached. This setting does not configure [Query Caching in Grafana Enterprise](../../administration/data-source-management/#query-and-resource-caching).
#### `type`
@ -783,7 +783,7 @@ The following example limits access to the backend of a single plugin:
#### `angular_support_enabled`
This is set to false by default, meaning that the angular framework and support components aren't be loaded.
This means that all [plugins]({{< relref "../../developers/angular_deprecation/angular-plugins" >}}) and core features that depend on angular support won't work.
This means that all [plugins](../../developers/angular_deprecation/angular-plugins/) and core features that depend on angular support won't work.
The core features that depend on angular are:
@ -884,7 +884,7 @@ For SQL data sources (MySql, Postgres, MSSQL) you can override the default maxim
Set to `false` to prohibit users from being able to sign up or create user accounts.
Default is `false`.
A Grafana Admin can still create users.
For more information about creating a user, refer to [Add a user]({{< relref "../../administration/user-management/server-user-management#add-a-user" >}}).
For more information about creating a user, refer to [Add a user](../../administration/user-management/server-user-management/#add-a-user).
#### `allow_org_create`
@ -954,7 +954,7 @@ If you manage users externally you can replace the user invite button for organi
This option is deprecated - assign your viewers as editors, if you are using RBAC assign the data sources explorer role to your users.
{{</admonition>}}
Viewers can access and use [Explore]({{< relref "../../explore" >}}) and perform temporary edits on panels in dashboards they have access to. They cannot save their changes. Default is `false`.
Viewers can access and use [Explore](../../explore/) and perform temporary edits on panels in dashboards they have access to. They cannot save their changes. Default is `false`.
#### `editors_can_admin`
@ -991,7 +991,7 @@ This is a comma-separated list of usernames. Users specified here are hidden in
### `[auth]`
Grafana provides many ways to authenticate users. Refer to the Grafana [Authentication overview]({{< relref "../configure-security/configure-authentication" >}}) and other authentication documentation for detailed instructions on how to set up and configure authentication.
Grafana provides many ways to authenticate users. Refer to the Grafana [Authentication overview](../configure-security/configure-authentication/) and other authentication documentation for detailed instructions on how to set up and configure authentication.
#### `login_cookie_name`
@ -1196,25 +1196,25 @@ This means the plugin can only access data and resources within that specific or
### `[auth.anonymous]`
Refer to [Anonymous authentication]({{< relref "../configure-security/configure-authentication/grafana#anonymous-authentication" >}}) for detailed instructions.
Refer to [Anonymous authentication](../configure-security/configure-authentication/grafana/#anonymous-authentication) for detailed instructions.
<hr/>
### `[auth.github]`
Refer to [GitHub OAuth2 authentication]({{< relref "../configure-security/configure-authentication/github" >}}) for detailed instructions.
Refer to [GitHub OAuth2 authentication](../configure-security/configure-authentication/github/) for detailed instructions.
<hr/>
### `[auth.gitlab]`
Refer to [GitLab OAuth 2.0 authentication]({{< relref "../configure-security/configure-authentication/gitlab" >}}) for detailed instructions.
Refer to [GitLab OAuth 2.0 authentication](../configure-security/configure-authentication/gitlab/) for detailed instructions.
<hr/>
### `[auth.google]`
Refer to [Google OAuth2 authentication]({{< relref "../configure-security/configure-authentication/google" >}}) for detailed instructions.
Refer to [Google OAuth2 authentication](../configure-security/configure-authentication/google/) for detailed instructions.
<hr/>
@ -1232,37 +1232,37 @@ Legacy key names, still in the configuration file so they work in environment va
### `[auth.azuread]`
Refer to [Azure AD OAuth2 authentication]({{< relref "../configure-security/configure-authentication/azuread" >}}) for detailed instructions.
Refer to [Azure AD OAuth2 authentication](../configure-security/configure-authentication/azuread/) for detailed instructions.
<hr/>
### `[auth.okta]`
Refer to [Okta OAuth2 authentication]({{< relref "../configure-security/configure-authentication/okta" >}}) for detailed instructions.
Refer to [Okta OAuth2 authentication](../configure-security/configure-authentication/okta/) for detailed instructions.
<hr/>
### `[auth.generic_oauth]`
Refer to [Generic OAuth authentication]({{< relref "../configure-security/configure-authentication/generic-oauth" >}}) for detailed instructions.
Refer to [Generic OAuth authentication](../configure-security/configure-authentication/generic-oauth/) for detailed instructions.
<hr/>
### `[auth.basic]`
Refer to [Basic authentication]({{< relref "../configure-security/configure-authentication#basic-authentication" >}}) for detailed instructions.
Refer to [Basic authentication](../configure-security/configure-authentication/#basic-authentication) for detailed instructions.
<hr/>
### `[auth.proxy]`
Refer to [Auth proxy authentication]({{< relref "../configure-security/configure-authentication/auth-proxy" >}}) for detailed instructions.
Refer to [Auth proxy authentication](../configure-security/configure-authentication/auth-proxy/) for detailed instructions.
<hr/>
### `[auth.ldap]`
Refer to [LDAP authentication]({{< relref "../configure-security/configure-authentication/ldap" >}}) for detailed instructions.
Refer to [LDAP authentication](../configure-security/configure-authentication/ldap/) for detailed instructions.
### `[aws]`
@ -1421,7 +1421,7 @@ Disabled by default, needs to be explicitly enabled.
### `[auth.jwt]`
Refer to [JWT authentication]({{< relref "../configure-security/configure-authentication/jwt" >}}) for more information.
Refer to [JWT authentication](../configure-security/configure-authentication/jwt/) for more information.
<hr/>
@ -1726,7 +1726,7 @@ Limit the number of query evaluation results per alert rule. If the condition qu
### `[unified_alerting]`
For more information about the Grafana alerts, refer to [Grafana Alerting]({{< relref "../../alerting" >}}).
For more information about the Grafana alerts, refer to [Grafana Alerting](../../alerting/).
#### `enabled`
@ -1858,7 +1858,7 @@ If a rule frequency is lower than this value, then this value is enforced.
### `[unified_alerting.screenshots]`
For more information about screenshots, refer to [Images in notifications]({{< relref "../../alerting/configure-notifications/template-notifications/images-in-notifications" >}}).
For more information about screenshots, refer to [Images in notifications](../../alerting/configure-notifications/template-notifications/images-in-notifications/).
#### `capture`
@ -1949,7 +1949,7 @@ Configures max number of API annotations that Grafana keeps. Default value is 0,
### `[explore]`
For more information about this feature, refer to [Explore]({{< relref "../../explore" >}}).
For more information about this feature, refer to [Explore](../../explore/).
#### `enabled`
@ -2026,7 +2026,7 @@ Short links without an expiration increase the size of the database and can't be
### `[metrics]`
For detailed instructions, refer to [Internal Grafana metrics]({{< relref "../set-up-grafana-monitoring" >}}).
For detailed instructions, refer to [Internal Grafana metrics](../set-up-grafana-monitoring/).
#### `enabled`
@ -2423,7 +2423,7 @@ Set to `true` if you want to test alpha plugins that are not yet ready for gener
Enter a comma-separated list of plugin identifiers to identify plugins to load even if they are unsigned. Plugins with modified signatures are never loaded.
We do _not_ recommend using this option. For more information, refer to [Plugin signatures]({{< relref "../../administration/plugin-management#plugin-signatures" >}}).
We do _not_ recommend using this option. For more information, refer to [Plugin signatures](../../administration/plugin-management/#plugin-signatures).
#### `plugin_admin_enabled`
@ -2431,7 +2431,7 @@ Available to Grafana administrators only, enables installing, uninstalling, and
Set to `true` by default.
Setting it to `false` hides the controls.
For more information, refer to [Plugin catalog]({{< relref "../../administration/plugin-management#plugin-catalog" >}}).
For more information, refer to [Plugin catalog](../../administration/plugin-management/#plugin-catalog).
#### `plugin_admin_external_manage_enabled`
@ -2493,7 +2493,7 @@ This option disables all preinstalled plugins. The default is `false`. To disabl
The `max_connections` option specifies the maximum number of connections to the Grafana Live WebSocket endpoint per Grafana server instance. Default is `100`.
Refer to [Grafana Live configuration documentation]({{< relref "../set-up-grafana-live" >}}) if you specify a number higher than default since this can require some operating system and infrastructure tuning.
Refer to [Grafana Live configuration documentation](../set-up-grafana-live/) if you specify a number higher than default since this can require some operating system and infrastructure tuning.
0 disables Grafana Live, -1 means unlimited connections.
@ -2501,7 +2501,7 @@ Refer to [Grafana Live configuration documentation]({{< relref "../set-up-grafan
The `allowed_origins` option is a comma-separated list of additional origins (`Origin` header of HTTP Upgrade request during WebSocket connection establishment) that is accepted by Grafana Live.
If not set (default), then the origin is matched over [root_url]({{< relref "#root_url" >}}) which should be sufficient for most scenarios.
If not set (default), then the origin is matched over [root_url](#root_url) which should be sufficient for most scenarios.
The high availability (HA) engine name for Grafana Live. By default, it's not set. The only possible value is `redis`.
For more information, refer to the [Configure Grafana Live HA setup]({{< relref "../set-up-grafana-live#configure-grafana-live-ha-setup" >}}).
For more information, refer to the [Configure Grafana Live HA setup](../set-up-grafana-live/#configure-grafana-live-ha-setup).
#### `ha_engine_address`
@ -2558,7 +2558,7 @@ Experimental. Requires the feature toggle `externalCorePlugins` to be enabled.
### `[plugin.grafana-image-renderer]`
For more information, refer to [Image rendering]({{< relref "../image-rendering" >}}).
For more information, refer to [Image rendering](../image-rendering/).
#### `rendering_timezone`
@ -2665,7 +2665,7 @@ Change the listening port of the gRPC server. Default port is `0` and uses a por
### `[enterprise]`
For more information about Grafana Enterprise, refer to [Grafana Enterprise]({{< relref "../../introduction/grafana-enterprise" >}}).
For more information about Grafana Enterprise, refer to [Grafana Enterprise](../../introduction/grafana-enterprise/).
<hr>
@ -2685,7 +2685,7 @@ Some feature toggles for stable features are on by default. Use this setting to
The options in this section configure the experimental Feature Toggle Admin Page feature, which is enabled using the `featureToggleAdminPage` feature toggle. Grafana Labs offers support on a best-effort basis, and breaking changes might occur prior to the feature being made generally available.
For more information, refer to [Configure feature toggles]({{< relref "./feature-toggles" >}}).
For more information, refer to [Configure feature toggles](feature-toggles/).
#### `allow_editing`
@ -2778,7 +2778,7 @@ Set this to `false` to disable loading other custom base maps and hide them in t
### `[rbac]`
Refer to [Role-based access control]({{< relref "../../administration/roles-and-permissions/access-control" >}}) for more information.
Refer to [Role-based access control](../../administration/roles-and-permissions/access-control/) for more information.
Custom branding enables you to replace the Grafana Labs brand and logo with your corporate brand and logo.
{{% admonition type="note" %}}
Available in [Grafana Enterprise]({{< relref "../../../introduction/grafana-enterprise" >}}) and [Grafana Cloud](/docs/grafana-cloud). For Cloud Advanced and Enterprise customers, please provide custom elements and logos to our Support team. We will help you host your images and update your custom branding.
Available in [Grafana Enterprise](../../../introduction/grafana-enterprise/) and [Grafana Cloud](/docs/grafana-cloud). For Cloud Advanced and Enterprise customers, please provide custom elements and logos to our Support team. We will help you host your images and update your custom branding.
This feature is not available for Grafana Free and Pro tiers.
For more information on feature availability across plans, refer to our [feature comparison page](/docs/grafana-cloud/cost-management-and-billing/understand-grafana-cloud-features/)
@ -39,7 +39,7 @@ With custom branding, you have the ability to modify the following elements:
> You will have to host your logo and other images used by the custom branding feature separately. Make sure Grafana can access the URL where the assets are stored.
The configuration file in Grafana Enterprise contains the following options. For more information about configuring Grafana, refer to [Configure Grafana]({{< relref "../../configure-grafana" >}}).
The configuration file in Grafana Enterprise contains the following options. For more information about configuring Grafana, refer to [Configure Grafana](../).
This page describes Grafana Enterprise-specific configuration options that you can specify in a `.ini` configuration file or using environment variables. Refer to [Configuration]({{< relref "../../configure-grafana" >}}) for more information about available configuration options.
This page describes Grafana Enterprise-specific configuration options that you can specify in a `.ini` configuration file or using environment variables. Refer to [Configuration](../) for more information about available configuration options.
## [enterprise]
@ -41,7 +41,7 @@ The license only automatically updates once per day. To immediately update the t
### license_validation_type
When set to `aws`, Grafana will validate its license status with Amazon Web Services (AWS) instead of with Grafana Labs. Only use this setting if you purchased an Enterprise license from AWS Marketplace. Defaults to empty, which means that by default Grafana Enterprise will validate using a license issued by Grafana Labs. For details about licenses issued by AWS, refer to [Activate a Grafana Enterprise license purchased through AWS Marketplace]({{< relref "../../../administration/enterprise-licensing/activate-aws-marketplace-license" >}}).
When set to `aws`, Grafana will validate its license status with Amazon Web Services (AWS) instead of with Grafana Labs. Only use this setting if you purchased an Enterprise license from AWS Marketplace. Defaults to empty, which means that by default Grafana Enterprise will validate using a license issued by Grafana Labs. For details about licenses issued by AWS, refer to [Activate a Grafana Enterprise license purchased through AWS Marketplace](../../../administration/enterprise-licensing/activate-aws-marketplace-license/).
## [white_labeling]
@ -84,7 +84,7 @@ List the link IDs to use here. Grafana will look for matching link configuration
## [usage_insights.export]
By [exporting usage logs]({{< relref "../../configure-security/export-logs" >}}), you can directly query them and create dashboards of the information that matters to you most, such as dashboard errors, most active organizations, or your top-10 most-used queries.
By [exporting usage logs](../../configure-security/export-logs/), you can directly query them and create dashboards of the information that matters to you most, such as dashboard errors, most active organizations, or your top-10 most-used queries.
### enabled
@ -184,7 +184,7 @@ Allowed domains to receive reports. Use an asterisk (`*`) to allow all domains.
## [auditing]
[Auditing]({{< relref "../../configure-security/audit-grafana" >}}) allows you to track important changes to your Grafana instance. By default, audit logs are logged to file but the auditing feature also supports sending logs directly to Loki.
[Auditing](../../configure-security/audit-grafana/) allows you to track important changes to your Grafana instance. By default, audit logs are logged to file but the auditing feature also supports sending logs directly to Loki.
### enabled
@ -409,7 +409,7 @@ Setting 'enabled' to `true` allows users to configure query caching for data sou
This value is `true` by default.
{{% admonition type="note" %}}
This setting enables the caching feature, but it does not turn on query caching for any data source. To turn on query caching for a data source, update the setting on the data source configuration page. For more information, refer to the [query caching docs]({{< relref "../../../administration/data-source-management#enable-and-configure-query-caching" >}}).
This setting enables the caching feature, but it does not turn on query caching for any data source. To turn on query caching for a data source, update the setting on the data source configuration page. For more information, refer to the [query caching docs](../../../administration/data-source-management/#enable-and-configure-query-caching).
You use feature toggles, also known as feature flags, to enable or disable features in Grafana. You can turn on feature toggles to try out new functionality in development or test environments.
This page contains a list of available feature toggles. To learn how to turn on feature toggles, refer to our [Configure Grafana documentation]({{< relref "../_index.md#feature_toggles" >}}). Feature toggles are also available to Grafana Cloud Advanced customers. If you use Grafana Cloud Advanced, you can open a support ticket and specify the feature toggles and stack for which you want them enabled.
This page contains a list of available feature toggles. To learn how to turn on feature toggles, refer to our [Configure Grafana documentation](../#feature_toggles). Feature toggles are also available to Grafana Cloud Advanced customers. If you use Grafana Cloud Advanced, you can open a support ticket and specify the feature toggles and stack for which you want them enabled.
For more information about feature release stages, refer to [Release life cycle for Grafana Labs](https://grafana.com/docs/release-life-cycle/) and [Manage feature toggles](https://grafana.com/docs/grafana/<GRAFANA_VERSION>/administration/feature-toggles/#manage-feature-toggles).
@ -231,7 +231,7 @@ Experimental features might be changed or removed without prior notice.
## Development feature toggles
The following toggles require explicitly setting Grafana's [app mode]({{< relref "../_index.md#app_mode" >}}) to 'development' before you can enable this feature toggle. These features tend to be experimental.
The following toggles require explicitly setting Grafana's [app mode](../#app_mode) to 'development' before you can enable this feature toggle. These features tend to be experimental.
@ -44,6 +44,6 @@ To complete this task, you must first deploy a socks proxy server that supports
1. Set up a data source and configure it to send data source connections through the proxy.
To configure your data sources to send connections through the proxy, `enableSecureSocksProxy=true` must be specified in the data source json. You can do this in the [API]({{< relref "../../../developers/http_api/data_source" >}}) or use [file based provisioning]({{< relref "../../../administration/provisioning#data-sources" >}}).
To configure your data sources to send connections through the proxy, `enableSecureSocksProxy=true` must be specified in the data source json. You can do this in the [API](../../../developers/http_api/data_source/) or use [file based provisioning](../../../administration/provisioning/#data-sources).
Additionally, you can set the socks5 username and password by adding `secureSocksProxyUsername` in the data source json and `secureSocksProxyPassword` in the secure data source json.
This functionality is deprecated and will be removed in a future release. For configuring SAML authentication, please use the new [SSO settings API]({{< relref "../../../developers/http_api/sso-settings" >}}).
This functionality is deprecated and will be removed in a future release. For configuring SAML authentication, please use the new [SSO settings API](../../../developers/http_api/sso-settings/).
{{% /admonition %}}
By updating settings at runtime, you can update Grafana settings without needing to restart the Grafana server.
Updates that happen at runtime are stored in the database and override
[settings from other sources]({{< relref "../../configure-grafana" >}})
[settings from other sources](../)
(arguments, environment variables, settings file, etc). Therefore, every time a specific setting key is removed at runtime,
the value used for that key is the inherited one from the other sources in the reverse order of precedence
(`arguments > environment variables > settings file`). When no value is provided through any of these options, then the value used will be the application default
@ -32,7 +32,7 @@ Currently, **it only supports updates on the `auth.saml` section.**
## Update settings via the API
You can update settings through the [Admin API]({{< relref "../../../developers/http_api/admin#update-settings" >}}).
You can update settings through the [Admin API](../../../developers/http_api/admin/#update-settings).
When you submit a settings update via API, Grafana verifies if the given settings updates are allowed and valid. If they are, then Grafana stores the settings in the database and reloads
Grafana services with no need to restart the instance.
@ -99,5 +99,5 @@ HTTP API, then the other instances are synchronized through the database and the
## Control access with role-based access control
If you have [role-based access control]({{< relref "../../../administration/roles-and-permissions/access-control" >}}) enabled, you can control who can read or update settings.
Refer to the [Admin API]({{< relref "../../../developers/http_api/admin#update-settings" >}}) for more information.
If you have [role-based access control](../../../administration/roles-and-permissions/access-control/) enabled, you can control who can read or update settings.
Refer to the [Admin API](../../../developers/http_api/admin/#update-settings) for more information.
@ -19,11 +19,11 @@ To prevent this type of exploitation from happening, we recommend that you apply
## Limit IP addresses/hostnames for data source URL
You can configure Grafana to only allow certain IP addresses or hostnames to be used as data source URLs and proxied through the Grafana data source proxy. Refer to [data_source_proxy_whitelist]({{< relref "../configure-grafana#data_source_proxy_whitelist" >}}) for usage instructions.
You can configure Grafana to only allow certain IP addresses or hostnames to be used as data source URLs and proxied through the Grafana data source proxy. Refer to [data_source_proxy_whitelist](../configure-grafana/#data_source_proxy_whitelist) for usage instructions.
## Request security
The request security configuration option allows users to limit requests from the Grafana server. It targets requests that are generated by users. For more information, refer to [Request security]({{< relref "./configure-request-security" >}}).
The request security configuration option allows users to limit requests from the Grafana server. It targets requests that are generated by users. For more information, refer to [Request security](configure-request-security/).
{{% admonition type="note" %}}
Request security is available in Grafana Enterprise v7.4 and later versions.
@ -53,7 +53,7 @@ For example, in a Grafana instance with one data source, one dashboard, and one
To address this vulnerability, you can restrict data source query access in the following ways:
- Create multiple data sources with some restrictions added in data source configuration that restrict access (like database name or credentials). Then use the [Data Source Permissions]({{< relref "../../administration/data-source-management#data-source-permissions" >}}) Enterprise feature to restrict user access to the data source in Grafana.
- Create multiple data sources with some restrictions added in data source configuration that restrict access (like database name or credentials). Then use the [Data Source Permissions](../../administration/data-source-management/#data-source-permissions) Enterprise feature to restrict user access to the data source in Grafana.
- Create a separate Grafana organization, and in that organization, create a separate data source. Make sure the data source has some option/user/credentials setting that limits access to a subset of the data. Not all data sources have an option to limit access.
## Implications of enabling anonymous access to dashboards
Audit logs are sent to the Grafana default logger. The audit logs use the `auditing.console` logger and are logged on `debug`-level, learn how to enable debug logging in the [log configuration]({{< relref "../configure-grafana#log" >}}) section of the documentation. Accessing the audit logs in this way is not recommended for production use.
Audit logs are sent to the Grafana default logger. The audit logs use the `auditing.console` logger and are logged on `debug`-level, learn how to enable debug logging in the [log configuration](../../configure-grafana/#log) section of the documentation. Accessing the audit logs in this way is not recommended for production use.
Grafana provides many ways to authenticate users. Some authentication integrations also enable syncing user permissions and org memberships.
The following table shows all supported authentication methods and the features available for them. [Team sync]({{< relref "../configure-team-sync" >}}) and [active sync]({{< relref "./enhanced-ldap#active-ldap-synchronization" >}}) are only available in Grafana Enterprise.
The following table shows all supported authentication methods and the features available for them. [Team sync](../configure-team-sync/) and [active sync](enhanced-ldap/#active-ldap-synchronization) are only available in Grafana Enterprise.
| Authentication method | Multi Org Mapping | Enforce Sync | Role Mapping | Grafana Admin Mapping | Team Sync | Allowed groups | Active Sync | Skip OrgRole mapping | Auto Login | Single Logout |
| [JWT Proxy](jwt/) | no | yes | yes | yes | no | no | N/A | no | N/A | N/A |
Fields explanation:
@ -61,7 +61,7 @@ Fields explanation:
## Configuring multiple identity providers
Grafana allows you to configure more than one authentication provider, however it is not possible to configure the same type of authentication provider twice.
For example, you can have [SAML]({{< relref "./saml" >}}) (Enterprise only) and [Generic OAuth]({{< relref "./generic-oauth" >}}) configured, but you can not have two different [Generic OAuth]({{< relref "./generic-oauth" >}}) configurations.
For example, you can have [SAML](saml/) (Enterprise only) and [Generic OAuth](generic-oauth/) configured, but you can not have two different [Generic OAuth](generic-oauth/) configurations.
> Note: Grafana does not support multiple identity providers resolving the same user. Ensure there are no user account overlaps between the different providers
@ -69,7 +69,7 @@ In scenarios where you have multiple identity providers of the same type, there
- Use different Grafana instances each configured with a given identity provider.
- Check if the identity provider supports account federation. In such cases, you can configure it once and let your identity provider federate the accounts from different providers.
- If SAML is supported by the identity provider, you can configure one [Generic OAuth]({{< relref "./generic-oauth" >}}) and one [SAML]({{< relref "./saml" >}}) (Enterprise only).
- If SAML is supported by the identity provider, you can configure one [Generic OAuth](generic-oauth/) and one [SAML](saml/) (Enterprise only).
## Using the same email address to login with different identity providers
Available in [Grafana Enterprise]({{< relref "../../../introduction/grafana-enterprise" >}}) and [Grafana Cloud]({{< relref "../../../introduction/grafana-cloud" >}}) since Grafana v10.4.
Available in [Grafana Enterprise](../../../introduction/grafana-enterprise/) and [Grafana Cloud](../../../introduction/grafana-cloud/) since Grafana v10.4.
{{% /admonition %}}
```
@ -208,7 +208,7 @@ a Grafana admin user, you can also do the same for any user from the Server Admi
### Protected roles
{{% admonition type="note" %}}
Available in [Grafana Enterprise]({{< relref "../../../introduction/grafana-enterprise" >}}) and [Grafana Cloud]({{< relref "../../../introduction/grafana-cloud" >}}).
Available in [Grafana Enterprise](../../../introduction/grafana-enterprise/) and [Grafana Cloud](../../../introduction/grafana-cloud/).
{{% /admonition %}}
By default, after you configure an authorization provider, Grafana will adopt existing users into the new authentication scheme. For example, if you have created a user with basic authentication having the login `jsmith@example.com`, then set up SAML authentication where `jsmith@example.com` is an account, the user's authentication type will be changed to SAML if they perform a SAML sign-in.
Some files were not shown because too many files have changed in this diff
Show More