Conflicts:
	docs/sources/installation/debian.md
	docs/sources/installation/ldap.md
pull/2502/head
Torkel Ödegaard 10 years ago
commit 5aee981590
  1. 18
      docs/mkdocs.yml
  2. 23
      docs/sources/datasources/graphite.md
  3. 20
      docs/sources/datasources/influxdb.md
  4. 26
      docs/sources/datasources/kairosdb.md
  5. 26
      docs/sources/datasources/opentsdb.md
  6. 22
      docs/sources/datasources/overview.md
  7. 96
      docs/sources/guides/basic_concepts.md
  8. 47
      docs/sources/guides/gettingstarted.md
  9. 41
      docs/sources/guides/screencasts.md
  10. 5
      docs/sources/index.md
  11. 35
      docs/sources/installation/configuration.md
  12. 40
      docs/sources/installation/debian.md
  13. 2
      docs/sources/installation/index.md
  14. 14
      docs/sources/installation/ldap.md
  15. 2
      docs/sources/installation/mac.md
  16. 2
      docs/sources/installation/performance.md
  17. 31
      docs/sources/installation/provisioning.md
  18. 2
      docs/sources/installation/rpm.md
  19. 4
      docs/sources/installation/troubleshooting.md
  20. 44
      docs/sources/project/building_from_source.md
  21. 4
      docs/sources/project/cla.md
  22. 5
      docs/sources/reference/annotations.md
  23. 37
      docs/sources/reference/dashlist.md
  24. 79
      docs/sources/reference/export_import.md
  25. 32
      docs/sources/reference/keyboard_shortcuts.md
  26. 12
      docs/sources/reference/playlist.md
  27. 50
      docs/sources/reference/search.md
  28. 4
      docs/sources/reference/singlestat.md
  29. 58
      docs/sources/reference/templating.md
  30. 28
      docs/sources/reference/timerange.md

@ -36,35 +36,39 @@ pages:
- ['installation/configuration.md', 'Installation', 'Configuration']
- ['installation/ldap.md', 'Installation', 'LDAP Integration']
- ['installation/provisioning.md', 'Installation', 'Provisioning']
- ['installation/performance.md', 'Installation', 'Performance tips']
- ['installation/performance.md', 'Installation', 'Performance Tips']
- ['installation/troubleshooting.md', 'Installation', 'Troubleshooting']
- ['installation/migrating_to2.md', 'Installation', 'Migrating from v1.x to v2.x']
- ['guides/gettingstarted.md', 'User Guides', 'Getting started']
- ['guides/basic_concepts.md', 'User Guides', 'Basic Concepts']
- ['guides/gettingstarted.md', 'User Guides', 'Getting Started']
- ['guides/whats-new-in-v2.md', 'User Guides', "What's New in Grafana v2.0"]
- ['guides/whats-new-in-v2-1.md', 'User Guides', "What's New in Grafana v2.1"]
- ['guides/screencasts.md', 'User Guides', 'Screencasts']
- ['reference/graph.md', 'Reference', 'Graph Panel']
- ['reference/singlestat.md', 'Reference', 'Singlestat Panel']
- ['reference/dashlist.md', 'Reference', 'Dashboard list Panel']
- ['reference/dashlist.md', 'Reference', 'Dashboard List Panel']
- ['reference/text.md', 'Reference', 'Text Panel']
- ['reference/sharing.md', 'Reference', 'Sharing']
- ['reference/annotations.md', 'Reference', 'Annotations']
- ['reference/timerange.md', 'Reference', 'Time range controls']
- ['reference/timerange.md', 'Reference', 'Time Range Controls']
- ['reference/search.md', 'Reference', 'Dashboard Search']
- ['reference/templating.md', 'Reference', 'Templated dashboards']
- ['reference/scripting.md', 'Reference', 'Scripted dashboards']
- ['reference/templating.md', 'Reference', 'Templated Dashboards']
- ['reference/scripting.md', 'Reference', 'Scripted Dashboards']
- ['reference/playlist.md', 'Reference', 'Playlist']
- ['reference/export_import.md', 'Reference', 'Import & Export']
- ['reference/admin.md', 'Reference', 'Administration']
- ['reference/http_api.md', 'Reference', 'HTTP API']
- ['reference/keyboard_shortcuts.md', 'Reference', 'Keyboard Shortcuts']
- ['datasources/overview.md', 'Data Sources', 'Data Source Overview']
- ['datasources/graphite.md', 'Data Sources', 'Graphite']
- ['datasources/influxdb.md', 'Data Sources', 'InfluxDB']
- ['datasources/opentsdb.md', 'Data Sources', 'OpenTSDB']
- ['datasources/kairosdb.md', 'Data Sources', 'KairosDB']
- ['project/building_from_source.md', 'Project', 'Building from source']
- ['project/building_from_source.md', 'Project', 'Building from Source']
- ['project/cla.md', 'Project', 'Contributor License Agreement']
- ['jsearch.md', '**HIDDEN**']

@ -11,13 +11,15 @@ change function parameters and much more. The editor can handle all types of gra
queries through the use of query references.
## Adding the data source to Grafana
Open the side menu by clicking the the Grafana icon in the top header. In the side menu under the `Dashboards` link you
should find a link named `Data Sources`. If this link is missing in the side menu it means that your current
user does not have the `Admin` role for the current organization.
![](/img/v2/add_Graphite.jpg)
![](/img/v2/add_datasource_graphite.png)
1. Open the side menu by clicking the the Grafana icon in the top header.
2. In the side menu under the `Dashboards` link you should find a link named `Data Sources`.
Now click the `Add new` link in the top header.
> NOTE: If this link is missing in the side menu it means that your current user does not have the `Admin` role for the current organization.
3. Click the `Add new` link in the top header.
4. Select `Graphite` from the dropdown.
Name | Description
------------ | -------------
@ -26,17 +28,21 @@ Default | Default data source means that it will be pre-selected for new panels.
Url | The http protocol, ip and port of you graphite-web or graphite-api install.
Access | Proxy = access via Grafana backend, Direct = access directory from browser.
Proxy access means that the Grafana backend will proxy all requests from the browser, and send them on to the Data Source. This is useful because it can eliminate CORS (Cross Origin Site Resource) issues, as well as eliminate the need to disseminate authentication details to the Data Source to the brower.
Direct access is still supported because in some cases it may be useful to access a Data Source directly depending on the use case and topology of Grafana, the user, and the Data Source.
## Metric editor
### Navigate metric segments
Click the ``Select metric`` link to start navigating the metric space. One you start you can continue using the mouse
or keyboard arrow keys. You can select a wildcard and still continue.
![](/img/animated_gifs/graphite_query1.gif)
### Functions
Click the plus icon to the right to add a function. You can search for the function or select it from the menu. Once
a function is selected it will be added and your focus will be in the text box of the first parameter. To later change
a parameter just click on it and it will turn into a text box. To delete a function click the function name followed
@ -70,3 +76,6 @@ You can also create nested variables that use other variables in their definitio
![](/img/v2/templated_variable_parameter.png)
## Query Reference
You can reference queries by the row “letter” that they’re on (similar to Microsoft Excel). If you add a second query to graph, you can reference the first query simply by typing in #A. This provides an easy and convenient way to build compounded queries.

@ -10,14 +10,18 @@ There are currently two separate datasources for InfluxDB in Grafana: InfluxDB 0
The API and capabilities of InfluxDB 0.9.x are completely different from InfluxDB 0.8.x which is why Grafana handles
them as different data sources.
InfluxDB 0.9 is rapidly evolving and we continue to track its API. InfluxDB 0.8 is no longer maintained by InfluxDB Inc, but we provide support as a convenience to existing users.
## Adding the data source to Grafana
Open the side menu by clicking the the Grafana icon in the top header. In the side menu under the `Dashboards` link you
should find a link named `Data Sources`. If this link is missing in the side menu it means that your current
user does not have the `Admin` role for the current organization.
![](/img/v2/add_Influx.jpg)
1. Open the side menu by clicking the the Grafana icon in the top header.
2. In the side menu under the `Dashboards` link you should find a link named `Data Sources`.
![](/img/v2/add_datasource_influxdb.png)
> NOTE: If this link is missing in the side menu it means that your current user does not have the `Admin` role for the current organization.
Now click the `Add new` link in the top header.
3. Click the `Add new` link in the top header.
4. Select `InfluxDB 0.9.x` or `InfluxDB 0.8.x` from the dropdown.
Name | Description
------------ | -------------
@ -29,8 +33,10 @@ Database | Name of your influxdb database
User | Name of your database user
Password | Database user's password
> *Note* When using Proxy access mode the InfluxDB database, user and password will be hidden from the browser/frontend. When
> using direct access mode all users will be able to see the database user & password.
> Proxy access means that the Grafana backend will proxy all requests from the browser, and send them on to the Data Source. This is useful because it can eliminate CORS (Cross Origin Site Resource) issues, as well as eliminate the need to disseminate authentication details to the Data Source to the brower.
> Direct access is still supported because in some cases it may be useful to access a Data Source directly depending on the use case and topology of Grafana, the user, and the Data Source.
## InfluxDB 0.9.x

@ -5,15 +5,20 @@ page_keywords: grafana, kairosdb, documentation
---
# KairosDB Guide
Grafana v2.1 brings initial support for KairosDB Datasources. While the process of adding the datasource is similar to adding a Graphite or OpenTSDB datasource type, Kairos DB does have a few different options for building queries.
## Adding the data source to Grafana
Open the side menu by clicking the the Grafana icon in the top header. In the side menu under the `Dashboards` link you
should find a link named `Data Sources`. If this link is missing in the side menu it means that your current
user does not have the `Admin` role for the current organization.
![](/img/v2/add_KairosDB.jpg)
1. Open the side menu by clicking the the Grafana icon in the top header.
2. In the side menu under the `Dashboards` link you should find a link named `Data Sources`.
> NOTE: If this link is missing in the side menu it means that your current user does not have the `Admin` role for the current organization.
3. Click the `Add new` link in the top header.
4. Select `KairosDB` from the dropdown.
<!-- ![](/img/v2/add_datasource_kairosdb.png) -->
Now click the `Add new` link in the top header.
Name | Description
------------ | -------------
@ -25,24 +30,23 @@ Access | Proxy = access via Grafana backend, Direct = access directory from brow
## Query editor
Open a graph in edit mode by click the title.
<!-- ![](/img/v2/kairosdb_query_editor.png) -->
![](/img/v2/kairos_query_editor.png)
For details on KairosDB metric queries checkout the offical.
- [Query Metrics - KairosDB 0.9.4 documentation](http://kairosdb.github.io/kairosdocs/restapi/QueryMetrics.html).
## Templated queries
KairosDB Datasource Plugin provides following functions in `Variables values query` field in Templating Editor to query `metric names`, `tag names`, and `tag values` to kairosdb server.
Name | Description
---- | ----
`metrics(query)` | Returns a list of metric names matching `query`. If nothing is given, returns a list of all metric names.
| ------- | --------|
`metrics(query)` | Returns a list of metric names matching `query`. If nothing is given, returns a list of all metric names.
`tag_names(query)` | Returns a list of tag names matching `query`. If nothing is given, returns a list of all tag names.
`tag_values(metric, tag)` | Returns a list of values for `tag` from the given `metric`.
`tag_values(metric,tag)` | Returns a list of values for `tag` from the given `metric`.
For details of `metric names`, `tag names`, and `tag values`, please refer to the KairosDB documentations.
- [List Metric Names - KairosDB 0.9.4 documentation](http://kairosdb.github.io/kairosdocs/restapi/ListMetricNames.html)
- [List Tag Names - KairosDB 0.9.4 documentation](http://kairosdb.github.io/kairosdocs/restapi/ListTagNames.html)
- [List Tag Values - KairosDB 0.9.4 documentation](http://kairosdb.github.io/kairosdocs/restapi/ListTagValues.html)
- [Query Metrics - KairosDB 0.9.4 documentation](http://kairosdb.github.io/kairosdocs/restapi/QueryMetrics.html).
- [Query Metrics - KairosDB 0.9.4 documentation](http://kairosdb.github.io/kairosdocs/restapi/QueryMetrics.html).

@ -5,15 +5,17 @@ page_keywords: grafana, opentsdb, documentation
---
# OpenTSDB Guide
The newest release of Grafana adds additional functionality when using an OpenTSDB Data source.
## Adding the data source to Grafana
Open the side menu by clicking the the Grafana icon in the top header. In the side menu under the `Dashboards` link you
should find a link named `Data Sources`. If this link is missing in the side menu it means that your current
user does not have the `Admin` role for the current organization.
![](/img/v2/add_OpenTSDB.jpg)
![](/img/v2/add_datasource_opentsdb.png)
1. Open the side menu by clicking the the Grafana icon in the top header.
2. In the side menu under the `Dashboards` link you should find a link named `Data Sources`.
Now click the `Add new` link in the top header.
> NOTE: If this link is missing in the side menu it means that your current user does not have the `Admin` role for the current organization.
3. Click the `Add new` link in the top header.
4. Select `OpenTSDB` from the dropdown.
Name | Description
------------ | -------------
@ -29,9 +31,12 @@ Open a graph in edit mode by click the title.
### Auto complete suggestions
You should get auto complete suggestions for tags and tag values. If you do not you need to enable `tsd.core.meta.enable_realtime_ts` in
the OpentSDB server settings. This is required for the OpenTSDB `lookup` api to work.
the OpenTSDB server settings.
> Note: This is required for the OpenTSDB `lookup` api to work.
## Templating queries
Grafana's OpenTSDB data source now supports template variable values queries. This means you can create template variables that fetch the values from OpenTSDB (for example metric names, tag names, or tag values). The query editor is also enhanced to limiting tags by metric.
When using OpenTSDB with a template variable of `query` type you can use following syntax for lookup.
@ -39,9 +44,4 @@ When using OpenTSDB with a template variable of `query` type you can use followi
tag_names(cpu) // return tag names (i.e. keys) for a specific cpu metric
tag_values(cpu, hostname) // return tag values for metric cpu and tag key hostname
For details on opentsdb metric queries checkout the official [OpenTSDB documentation](http://opentsdb.net/docs/build/html/index.html)
For details on opentsdb metric queries checkout the official [OpenTSDB documentation](http://opentsdb.net/docs/build/html/index.html)

@ -0,0 +1,22 @@
----
page_title: Data Source Overview
page_description: Data Source Overview
page_keywords: grafana, graphite, influxDB, KairosDB, OpenTSDB, documentation
---
# Data Source Overview
Grafana supports many different storage backends for your time series data (Data Source). Each Data Source has a specific Query Editor that is customized for the features and capabilities that the particular Data Source exposes.
## Querying
The query language and capabilities of each Data Source are obviously very different. You can combine data from multiple Data Sources onto a single Dashboard, but each Panel is tied to a specific Data Source that belongs to a particular Organization.
## Supported Data Sources
The following datasources are officially supported:
* [Graphite](/datasources/graphite/)
* [InfluxDB](/datasources/influxdb/)
* [OpenTSDB](/datasources/opentsdb/)
* [KairosDB](/datasources/kairosdb)
Grafana can query any Elasticsearch index for annotation events, but at this time, it's not supported for metric queries. Learn more about [annotations](/reference/annotations/#elasticsearch-annotations)

@ -0,0 +1,96 @@
----
page_title: Graphite query guide
page_description: Graphite query guide
page_keywords: grafana, graphite, metrics, query, documentation
---
# Basic Concepts
This document is a “bottom up” introduction to basic concepts in Grafana, and can be used as a starting point to get familiar with core features.
### ** Data Source **
Grafana supports many different storage backends for your time series data (Data Source). Each Data Source has a specific Query Editor that is customized for the features and capabilities that the particular Data Source exposes.
The following datasources are officially supported: [Graphite](/datasources/graphite/), [InfluxDB](/datasources/influxdb/), [OpenTSDB](/datasources/opentsdb/), and [KairosDB](/datasources/kairosdb)
The query language and capabilities of each Data Source are obviously very different. You can combine data from multiple Data Sources onto a single Dashboard, but each Panel is tied to a specific Data Source that belongs to a particular Organization.
### ** Organization **
Grafana supports multiple organizations in order to support a wide variety of deployment models, including using a single Grafana instance to provide service to multiple potentially untrusted Organizations.
In many cases, Grafana will be deployed with a single Organization.
Each Organization can have one or more Data Sources.
All Dashboards are owned by a particular Organization.
> Note: It is important to remember that most metric databases to not provide any sort of per-user series authentication. Therefore, in Grafana, Data Sources and Dashboards are available to all Users in a particular Organization.
For more details on the user model for Grafana, please refer to [Admin](/reference/admin/)
### ** User **
A User is a named account in Grafana. A user can belong to one or more Organizations, and can be assigned different levels of privileges through roles.
Grafana supports a wide variety of internal and external ways for Users to authenticate themselves. These include from its own integrated database, from an external SQL server, or from an external LDAP server.
For more details please refer to [User Auth](/reference/http_api/#users)
### ** Row **
A Row is a logical divider within a Dashboard, and is used to group Panels together.
Rows are always 12 “units” wide. These units are automatically scaled dependent on the horizontal resolution of your browser. You can control the relative width of Panels within a row by setting their own width.
We utilize a unit abstraction so that Grafana looks great on all screens both small and huge.
> Note: With MaxDataPoint functionality, Grafana can show you the perfect amount of datapoints no matter your resolution or time-range.
Utilize the [Repeating Row functionality](/reference/templating/#utilizing-template-variables-with-repeating-panels-and-repeating-rows) to dynamically create or remove entire Rows (that can be filled with Panels), based on the Template variables selected.
Rows can be collapsed by clicking on the Row Title. If you save a Dashboard with a Row collapsed, it will save in that state and will not preload those graphs until the row is expanded.
### ** Panel **
The Panel is the basic visualization building block in Grafana. Each Panel provides a Query Editor (dependent on the Data Source selected in the panel) that allows you to extract the perfect visualization to display on the Panel by utilizing the Query Editor
There are a wide variety of styling and formatting options that each Panel exposes to allow you to create the perfect picture.
Panels can be dragged and dropped and rearranged on the Dashboard. They can also be resized.
There are currently four Panel types: [Graph](/reference/graph/), [Singlestat](/reference/singlestat/), [Dashlist](/reference/dashlist/), and [Text](/reference/text/).
Panels like the [Graph](/reference/graph/) panel allow you to graph as many metrics and series as you want. Other panels like [Singlestat](/reference/singlestat/) require a reduction of a single query into a single number. [Dashlist](/reference/dashlist/) and [Text](/reference/text/) are special panels that do not connect to any Data Source.
Panels can be made more dynamic by utilizing [Dashboard Templating](/reference/templating/) variable strings within the panel configuration (including queries to your Data Source configured via the Query Editor).
Utilize the [Repeating Panel](/reference/templating/#utilizing-template-variables-with-repeating-panels-and-repeating-rows) functionality to dynamically create or remove Panels based on the [Templating Variables](/reference/templating/#utilizing-template-variables-with-repeating-panels-and-repeating-rows) selected.
The time range on Panels is normally what is set in the [Dashboard time picker](/reference/timerange/) but this can be overridden by utilizes [Panel specific time overrides](/reference/timerange/#panel-time-override).
Panels (or an entire Dashboard) can be [Shared](/reference/sharing/) easily in a variety of ways. You can send a link to someone who has a login to your Grafana. You can use the [Snapshot](/reference/sharing/#snapshots) feature to encode all the data currently being viewed into a static and interactive JSON document; it's so much better than emailing a screenshot!
### ** Query Editor **
The Query Editor exposes capabilities of your Data Source and allows you to query the metrics that it contains.
Use the Query Editor to build one or more queries (for one or more series) in your time series database. The panel will instantly update allowing you to effectively explore your data in real time and build a perfect query for that particular Panel.
You can utilize [Template variables]((reference/templating/) in the Query Editor within the queries themselves. This provides a powerful way to explore data dynamically based on the Templating variables selected on the Dashboard.
Grafana allows you to reference queries in the Query Editor by the row that they’re on. If you add a second query to graph, you can reference the first query simply by typing in #A. This provides an easy and convenient way to build compounded queries.
### ** Dashboard **
The Dashboard is where it all comes together. Dashboards can be thought of as of a set of one or more Panels organized and arranged into one or more Rows.
The time period for the Dashboard can be controlled by the [Dashboard time picker](/reference/timerange/) in the upper right of the Dashboard.
Dashboards can utilize [Templating](/reference/templating/) to make them more dynamic and interactive.
Dashboards can utilize [Annotations](/reference/annotations/) to display event data across Panels. This can help correlate the time series data in the Panel with other events.
Dashboards (or a specific Panel) can be [Shared](/reference/sharing/) easily in a variety of ways. You can send a link to someone who has a login to your Grafana. You can use the [Snapshot](/reference/sharing/#snapshots) feature to encode all the data currently being viewed into a static and interactive JSON document; it's so much better than emailing a screenshot!
Dashboards can be tagged, and the Dashboard picker provides quick, searchable access to all Dashboards in a particular Organization.

@ -5,17 +5,21 @@ page_keywords: grafana, guide, documentation
---
# Getting started
This guide will help you get started and acquainted with the Grafana user interface. It assumes you have a working
Grafana 2.0 instance, and have added at least one Grafana data source.
This guide will help you get started and acquainted with Grafana. It assumes you have a working Grafana 2.x instance, and have added at least one Grafana Data Source.
## Beginner guides
Watch the 10min [beginners guide to building dashboards](https://www.youtube.com/watch?v=sKNZMtoSHN4&index=7&list=PLDGkOdUX1Ujo3wHw9-z5Vo12YLqXRjzg2)
to get a quick intro to the dashboard & panel editing UI.
Watch the 10min [beginners guide to building dashboards](https://www.youtube.com/watch?v=sKNZMtoSHN4&index=7&list=PLDGkOdUX1Ujo3wHw9-z5Vo12YLqXRjzg2) to get a quick intro to setting up Dashboards and Panels.
##Basic Concepts
Read the [Basic Concepts](/reference/basic_concepts) document to get a crash course in key Grafana concepts.
### Top header
Let's start with creating a new Dashboard. You can find the new Dashboard link at the bottom of the Dashboard picker. You now have a blank Dashboard.
## Top header
<img class="no-shadow" src="/img/v2/v2_top_nav_annotated.png">
The image above shows you the top header for a dashboard.
The image above shows you the top header for a Dashboard.
1. Side menubar toggle: This toggles the side menu, allowing you to focus on the data presented in the dashboard. The side menu provides access to features unrelated to a Dashboard such as Users, Organizations, and Data Sources.
2. Dashboard dropdown: This dropdown shows you which Dashboard you are currently viewing, and allows you to easily switch to a new Dashboard. From here you can also create a new Dashboard, Import existing Dashboards, and manage Dashboard playlists.
@ -24,21 +28,9 @@ The image above shows you the top header for a dashboard.
5. Save dashboard: The current Dashboard will be saved with the current Dashboard name.
6. Settings: Manage Dashboard settings and features such as Templating and Annotations.
## Dashboard
Dashboards are at the core of what Grafana is all about. Dashboards are composed of individual Panels arranged on a number of Rows.
By adjusting the display properties of Panels and Rows, you can customize the perfect Dashboard for your exact needs.
Each panel can interact with data from any configured Grafana Data Source (currently InfluxDB, Graphite, OpenTSDB, and KairosDB).
This allows you to create a single dashboard that unifies the data across your organization. Panels use the time range specified
in the main Time Picker in the upper right, but they can also have relative time overrides.
## Dashboards, Panels, Rows, the building blocks of Grafana...
Dashboards are at the core of what Grafana is all about. Dashboards are composed of individual Panels arranged on a number of Rows. Grafana ships with a variety of Panels. Gafana makes it easy to construct the right queries, and customize the display properities so that you can create the perfect Dashboard for your need. Each Panel can interact with data from any configured Grafana Data Source (currently InfluxDB, Graphite, OpenTSDB, and KairosDB). The [Core Concepts](/guides/basic_concepts) guide explores these key ideas in detail.
<img src="/img/v2/dashboard_annotated.png" class="no-shadow">
1. Zoom out time range
2. Time picker dropdown. Here you can access relative time range options, auto refresh options and set custom absolute time ranges.
3. Manual refresh button. Will cause all panels to refresh (fetch new data).
4. Row controls menu. Via this menu you can add panels to the row, set row height and more.
5. Dashboard panel. You edit panels by clicking the panel title.
6. Graph legend. You can change series colors, y-axis and series visibility directly from the legend.
## Adding & Editing Graphs and Panels
@ -48,9 +40,22 @@ in the main Time Picker in the upper right, but they can also have relative time
2. To edit the graph you click on the graph title to open the panel menu, then `Edit`.
3. This should take you to the `Metrics` tab. In this tab you should see the editor for your default data source.
When you click the `Metrics` tab, you are presented with a Query Editor that is specific to the Panel Data Source. Use the Query Editor to build your queries and Grafana will visualize them in real time.
<img src="/img/v2/dashboard_annotated.png" class="no-shadow">
1. Zoom out time range
2. Time picker dropdown. Here you can access relative time range options, auto refresh options and set custom absolute time ranges.
3. Manual refresh button. Will cause all panels to refresh (fetch new data).
4. Row controls menu. Via this menu you can add panels to the row, set row height and more.
5. Dashboard panel. You edit panels by clicking the panel title.
6. Graph legend. You can change series colors, y-axis and series visibility directly from the legend.
## Drag-and-Drop panels
You can Drag-and-Drop Panels within and between Rows. Click and hold the Panel title, and drag it to its new location.
You can Drag-and-Drop Panels within and between Rows. Click and hold the Panel title, and drag it to its new location. You can also easily resize panels by clicking the (-) and (+) icons.
![](/img/animated_gifs/drag_drop.gif)

@ -7,53 +7,60 @@ no_toc: true
<div class="row">
<div class="columns medium-6">
<h3>Episode 1 - Building Graphite Queries</h3>
<div class="video-container">
<h3><strong>Episode 1</strong> - Building Graphite Queries</h3>
Learn how the Graphite Query Editor works, and how to use different graphing functions. There's also an introduction to graph display settings.
<div class="video-container" style="margin-top:10px;">
<iframe height="215" src="//www.youtube.com/embed/mgcJPREl3CU?list=PLDGkOdUX1Ujo3wHw9-z5Vo12YLqXRjzg2" frameborder="0" allowfullscreen></iframe>
</div>
</div>
<div class="columns medium-6">
<h3>Episode 2 - Templated Graphite Queries</h3>
<div class="video-container">
<h3><strong>Episode 2</strong> - Templated Graphite Queries</h3>
The screencast focuses on Templating with the Graphite Data Source. Learn how to make dynamic and adaptable Dashboards for your Graphite metrics.
<div class="video-container" style="margin-top:10px;">
<iframe height="215" src="//www.youtube.com/embed/FhNUrueWwOk?list=PLDGkOdUX1Ujo3wHw9-z5Vo12YLqXRjzg2" frameborder="0" allowfullscreen></iframe>
</div>
</div>
</div>
<br/>
<div class="row">
<div class="columns medium-6">
<h3>Episode 3 - Whats New In Grafana 2.0</h3>
<div class="video-container">
<h3><strong>Episode 3</strong> - Whats New In Grafana 2.0</h3>
This screencast highlights many of the great new features that were included in the Grafana 2.0 release.
<div class="video-container" style="margin-top:10px;">
<iframe height="215" src="https://www.youtube.com/embed/FC13uhFRsVw?list=PLDGkOdUX1Ujo3wHw9-z5Vo12YLqXRjzg2" frameborder="0" allowfullscreen></iframe>
</div>
</div>
<div class="columns medium-6">
<h3>Episode 4 - Installation & Configuration on Ubuntu / Debian</h3>
<div class="video-container">
<h3><strong>Episode 4</strong> - Installation & Configuration on Ubuntu / Debian</h3>
Learn how to easily install the dependencies and packages to get Grafana 2.0 up and running on Ubuntu or Debian in just a few mintues.
<div class="video-container" style="margin-top:10px;">
<iframe height="215" src="https://www.youtube.com/embed/JY22EBOR9hQ?list=PLDGkOdUX1Ujo3wHw9-z5Vo12YLqXRjzg2" frameborder="0" allowfullscreen></iframe>
</div>
</div>
</div>
<br/>
<div class="row">
<div class="columns medium-6">
<h3>Episode 5 - Installation & Configuration on Redhat / Centos</h3>
<div class="video-container">
<h3><strong>Episode 5</strong> - Installation & Configuration on Red Hat / CentOS</h3>
This screencasts shows how to get Grafana 2.0 installed and configured quickly on RPM-based Linux operating systems.
<div class="video-container" style="margin-top:10px;">
<iframe height="215" src="https://www.youtube.com/embed/E-gMFv84FE8?list=PLDGkOdUX1Ujo3wHw9-z5Vo12YLqXRjzg2" frameborder="0" allowfullscreen></iframe>
</div>
</div>
<div class="columns medium-6">
<h3>Episode 6 - Adding data sources, users & organizations</h3>
<div class="video-container">
<h3><strong>Episode 6</strong> - Adding data sources, users & organizations</h3>
Now that Grafana has been installed, learn about adding data sources and get a closer look at adding and managing Users and Organizations.
<div class="video-container" style="margin-top:10px;">
<iframe height="215" src="https://www.youtube.com/embed/9ZCMVNxUf6s?list=PLDGkOdUX1Ujo3wHw9-z5Vo12YLqXRjzg2" frameborder="0" allowfullscreen></iframe>
</div>
</div>
</div>
<br/>
<div class="row">
<div class="columns medium-6">
<h3>Episode 7 - Beginners guide to building dashboards</h3>
<div class="video-container">
<h3><strong>Episode 7</strong> - Beginners guide to building dashboards</h3>
For newer users of Grafana, this screencast will familiarize you with the general UI and teach you how to build your first Dashboard.
<div class="video-container" style="margin-top:10px;">
<iframe height="215" src="https://www.youtube.com/embed/sKNZMtoSHN4?list=PLDGkOdUX1Ujo3wHw9-z5Vo12YLqXRjzg2" frameborder="0" allowfullscreen></iframe>
</div>
</div>

@ -12,7 +12,8 @@ Grafana is most commonly used for Internet infrastructure and application analyt
Grafana features pluggable panels and data sources allowing easy extensibility. There is currently rich support for [Graphite](http://graphite.readthedocs.org/en/latest/), [InfluxDB](http://influxdb.org) and [OpenTSDB](http://opentsdb.net). There is also experimental support for [KairosDB](https://github.com/kairosdb/kairosdb), and SQL is on the roadmap. Grafana has a variety of panels, including a fully featured graph panel with rich visualization options.
Version 2.0 was released in April 2015: Grafana now ships with its own backend server that brings [many changes and features](../guides/whats-new-in-v2/).
Version 2.0 was released in April 2015: Grafana now ships with its own backend server that brings [many changes and features](../guides/whats-new-in-v2/).
Version 2.1 was released in July 2015 and added [even more features and enhancements](../guides/whats-new-in-v2-1/).
## Community Resources, Feedback, and Support
@ -24,7 +25,7 @@ Most of the new features and improvements that go into Grafana come from our use
If you have any trouble with Grafana, whether you can't get it set up or you just want clarification on a feature, there are a number of ways to get help:
- [Troubleshooting guide](../troubleshooting)
- [Troubleshooting guide](/installation/troubleshooting/)
- \#grafana IRC channel on the freenode network (chat.freenode.net)
- Search closed and open [issues on GitHub](https://github.com/grafana/grafana/issues)
- [Mailing list](https://groups.io/org/groupsio/grafana)

@ -18,7 +18,7 @@ specified in a `.ini` configuration file or specified using environment variable
> **Note.** If you have installed Grafana using the `deb` or `rpm`
> packages, then your configuration file is located at
> `/etc/grafana/grafana.ini`. This path is specified in the Grafana
> init.d script using `-config` file parameter.
> init.d script using `--config` file parameter.
## Using environment variables
@ -37,12 +37,12 @@ should be upper case, `.` should be replaced by `_`. For example, given these co
client_secret = 0ldS3cretKey
Then you can override that using:
Then you can override them using:
export GF_SECURITY_ADMIN_USER=true
export GF_AUTH_GOOGLE_CLIENT_SECRET=newS3cretKey
<hr>
<hr />
## [paths]
@ -63,7 +63,7 @@ file.
### http_addr
The IP address to bind to, if empty will bind to all interfaces
The IP address to bind to. If empty will bind to all interfaces
### http_port
@ -116,9 +116,9 @@ Path to the certificate file (if `protocol` is set to `https`).
Path to the certificate key file (if `protocol` is set to `https`).
<hr>
<hr />
<hr>
<hr />
## [database]
@ -158,7 +158,7 @@ The database user's password (not applicable for `sqlite3`).
For `postgres` only, either `disable`, `require` or `verify-full`.
<hr>
<hr />
## [security]
@ -184,7 +184,7 @@ Used for signing keep me logged in / remember me cookies.
Set to `true` to disable the use of Gravatar for user profile images.
Default is `false`.
<hr>
<hr />
## [users]
@ -384,29 +384,30 @@ The name of the Grafana session cookie.
### cookie_secure
Set to true if you host Grafana behind HTTPs only. Defaults to `false`.
Set to true if you host Grafana behind HTTPS only. Defaults to `false`.
### session_life_time
How long sessions lasts in seconds. Defaults to `86400` (24 hours).
<hr>
<hr />
## [analytics]
### reporting_enabled
When enabled Grafana will send anonymous usage statistics to `stats.grafana.org`.
No IP addresses are being tracked, only simple counters to track running instances,
versions, dashboard & error counts. It is very helpful to us, please leave this
enabled. Counters are sent every 24 hours. Default value is `true`.
When enabled Grafana will send anonymous usage statistics to
`stats.grafana.org`. No IP addresses are being tracked, only simple counters to
track running instances, versions, dashboard & error counts. It is very helpful
to us, so please leave this enabled. Counters are sent every 24 hours. Default
value is `true`.
### google_analytics_ua_id
If you want to track Grafana usage via Google analytics specify *your* Universal Analytics ID
here. By default this feature is disabled.
If you want to track Grafana usage via Google analytics specify *your* Universal
Analytics ID here. By default this feature is disabled.
<hr>
<hr />
## [dashboards.json]

@ -19,31 +19,32 @@ Description | Download
$ sudo dpkg -i grafana_2.1.1_amd64.deb
## APT Repository
Add the following line to your `/etc/apt/sources.list` file.
deb https://packagecloud.io/grafana/stable/debian/ wheezy main
`deb https://packagecloud.io/grafana/stable/debian/ wheezy main`
Use the above line even if you are on Ubuntu or another Debian version.
There is also a testing repository if you want beta or release
candidates.
deb https://packagecloud.io/grafana/testing/debian/ wheezy main
`deb https://packagecloud.io/grafana/testing/debian/ wheezy main`
Then add the [Package Cloud](https://packagecloud.io/grafana) key. This
allows you to install signed packages.
$ curl https://packagecloud.io/gpg.key | sudo apt-key add -
`$ curl https://packagecloud.io/gpg.key | sudo apt-key add -`
Update your Apt repositories and install Grafana
$ sudo apt-get update
$ sudo apt-get install grafana
`$ sudo apt-get update`
`$ sudo apt-get install grafana`
On some older versions of Ubuntu and Debian you may need to install the
`apt-transport-https` package which is needed to fetch packages over
HTTPS.
$ sudo apt-get install -y apt-transport-https
`$ sudo apt-get install -y apt-transport-https`
## Package details
@ -57,9 +58,9 @@ HTTPS.
## Start the server (init.d service)
You can start Grafana by running:
Start Grafana by running:
$ sudo service grafana-server start
`$ sudo service grafana-server start`
This will start the `grafana-server` process as the `grafana` user,
which was created during the package installation. The default HTTP port
@ -67,19 +68,19 @@ is `3000` and default user and group is `admin`.
To configure the Grafana server to start at boot time:
$ sudo update-rc.d grafana-server defaults 95 10
`$ sudo update-rc.d grafana-server defaults 95 10`
## Start the server (via systemd)
To start the service using systemd.
To start the service using systemd:
$ systemctl daemon-reload
$ systemctl start grafana-server
$ systemctl status grafana-server
`$ systemctl daemon-reload`
`$ systemctl start grafana-server`
`$ systemctl status grafana-server`
Enable the systemd service so that Grafana starts at boot.
sudo systemctl enable grafana-server.service
`sudo systemctl enable grafana-server.service`
## Environment file
@ -96,7 +97,7 @@ By default Grafana will log to `/var/log/grafana`
The default configuration specifies a sqlite3 database located at
`/var/lib/grafana/grafana.db`. Please backup this database before
upgrades. You can also use MySQL or Postgres as the Grafana database.
upgrades. You can also use MySQL or Postgres as the Grafana database, as detailed on [the configuration page](configuration.md#database).
## Configuration
@ -112,11 +113,10 @@ those options.
## Installing from binary tar file
Start by [downloading](http://grafana.org/download/builds) the latest
`.tar.gz` file and extract it. This will extract into a folder named
after the version you downloaded. This folder contains all files
required to run Grafana. There are no init scripts or install scripts
in this package.
Download [the latest `.tar.gz` file](http://grafana.org/download/builds) and
extract it. This will extract into a folder named after the version you
downloaded. This folder contains all files required to run Grafana. There are
no init scripts or install scripts in this package.
To configure Grafana add a configuration file named `custom.ini` to the
`conf` folder and override any of the settings defined in

@ -9,7 +9,7 @@ page_keywords: grafana, installation, documentation
Grafana is easily installed via a Debian/Ubuntu package (.deb), via
Redhat/Centos package (.rpm) or manually via a tarball that contains all
required files and binaries. If you can't find a package or binary for
your platform you might be able to build one your self, read the [build
your platform, you might be able to build one yourself. Read the [build
from source](../project/building_from_source) instructions for more
information.

@ -7,8 +7,8 @@ page_keywords: grafana, ldap, configuration, documentation, integration
# LDAP Integration
Grafana 2.1 ships with a strong LDAP integration feature. The LDAP integration in Grafana allows your
Grafana users to login with their LDAP credentials.
You can also specify mappings between LDAP group memberships and Grafana Organization user roles.
Grafana users to login with their LDAP credentials. You can also specify mappings between LDAP
group memberships and Grafana Organization user roles.
## Configuration
You turn on LDAP in the [main config file](../configuration/#authldap) as well as specify the path to the LDAP
@ -77,7 +77,7 @@ bind_password = "grafana"
### Single Bind Example
If you can provide a single bind expression that matches all possible users you can skip the second bind and bind against the user DN directly.
If you can provide a single bind expression that matches all possible users, you can skip the second bind and bind against the user DN directly.
This allows you to not specify a bind_password in the configuration file.
```
@ -87,9 +87,17 @@ bind_dn = "cn=%s,o=users,dc=grafana,dc=org"
In this case you skip providing a `bind_password` and instead provide a `bind_dn` value with a `%s` somewhere. This will be replaced with the username entered in on the Grafana login page.
The search filter and search bases settings are still needed to perform the LDAP search to retreive the other LDAP information (like LDAP groups and email).
## LDAP to Grafana Org Role Sync
## Group Mappings
In `[[servers.group_mappings]]` you can map an LDAP group to a Grafana organization and role. These will be synced every time the user logs in, with LDAP being the authoratative source.
So, if you change a user's role in the Grafana Org. Users page, this change will be reset the next time the user logs in. If you change the LDAP groups of a user, the change will take effect the next time the user logs in.
### Priority between Multiple Mappings
The first group mapping that an LDAP user is matched to will be used for the sync. If you have LDAP users that fit multiple mappings, the topmost mapping in the TOML config will be used.
## Ldap to Grafana Org Role Sync
In the `[[servers.group_mappings]]` you can map a LDAP group to a grafana organization and role. These will be synced every time the user logs in. So
if you change a users role in the Grafana Org. Users page, this change will be reset the next time the user logs in. Similarly if you
can LDAP groups for a user in LDAP the change will take effect the next time the user logs in to Grafana.

@ -6,7 +6,7 @@ page_keywords: grafana, installation, mac, osx, guide
# Installing on Mac
There is currently no binary build for Mac. But read the [build from
There is currently no binary build for Mac, but Grafana will happily build on Mac. Read the [build from
source](/project/building_from_source) page for instructions on how to
build it yourself.

@ -14,7 +14,7 @@ rendering times for large time ranges then it is most likely caused by
running Graphite 0.9.12 or lower.
The latest version of Graphite adds a `maxDataPoints` parameter to the
JSON render API, without this feature Graphite can return hundreds of
JSON render API. Without this feature Graphite can return hundreds of
thousands of data points per graph, which can hang your browser. Be sure
to upgrade to
[0.9.13](http://graphite.readthedocs.org/en/latest/releases/0_9_13.html).

@ -10,25 +10,40 @@ Here are links for how to install Grafana (and some include Graphite or
InfluxDB as well) via a provisioning system. These are not maintained by
any core Grafana team member and might be out of date.
## Puppet
Some of the linked cookbooks/manifests/etc. will install and configure Grafana 2.x, while some will only install the older Grafana 1.x versions. They've been broken apart below for your convenience.
* [forge.puppetlabs.com/bfraser/grafana](https://forge.puppetlabs.com/bfraser/grafana)
## Compatible with Grafana 2.x
## Ansible
### Puppet
* [forge.puppetlabs.com/bfraser/grafana](https://forge.puppetlabs.com/bfraser/grafana) **Note:** The current version works with Grafana 2.x. To install older versions of Grafana use the 1.x series of releases.
### Ansible
* [github.com/picotrading/ansible-grafana](https://github.com/picotrading/ansible-grafana)
### Docker
* [github.com/grafana/grafana-docker](https://github.com/grafana/grafana-docker)
### Chef
* [github.com/JonathanTron/chef-grafana](https://github.com/JonathanTron/chef-grafana) **Note:** The current version works with Grafana 2.x. To install older versions of Grafana use the 1.x series of releases.
* [github.com/Nordstrom/grafana2-cookbook](https://github.com/Nordstrom/grafana2-cookbook)
## Compatible with Grafana 1.x only
### Ansible
* [github.com/bobrik/ansible-grafana](https://github.com/bobrik/ansible-grafana)
* [github.com/bitmazk/ansible-digitalocean-influxdb-grafana](https://github.com/bitmazk/ansible-digitalocean-influxdb-grafana)
* [github.com/picotrading/ansible-grafana](https://github.com/picotrading/ansible-grafana)
## Docker
### Docker
* [github.com/kamon-io/docker-grafana-graphite](https://github.com/kamon-io/docker-grafana-graphite)
* [github.com/kamon-io/docker-grafana-influxdb](https://github.com/kamon-io/docker-grafana-influxdb)
* [github.com/tutumcloud/tutum-docker-grafana](https://github.com/tutumcloud/tutum-docker-grafana)
* [github.com/mingfang/docker-grafana](https://github.com/mingfang/docker-grafana)
## Chef
### Chef
* [github.com/JonathanTron/chef-grafana](https://github.com/JonathanTron/chef-grafana)
* [github.com/dzautner/grafana-cookbook](https://github.com/dzautner/grafana-cookbook)

@ -100,7 +100,7 @@ By default Grafana will log to `/var/log/grafana`
The default configuration specifies a sqlite3 database located at
`/var/lib/grafana/grafana.db`. Please backup this database before
upgrades. You can also use MySQL or Postgres as the Grafana database.
upgrades. You can also use MySQL or Postgres as the Grafana database, as detailed on [the configuration page](configuration.md#database).
## Configuration

@ -18,8 +18,8 @@ an error like this:
![](/img/v1/graph_timestore_error.png)
For some type of errors the `View details` link will show you error
details. But for many types of HTTP connection errors there is very
For some types of errors, the `View details` link will show you error
details. For many types of HTTP connection errors, however, there is very
little information. The best way to troubleshoot these issues is use
the [Chrome developer tools](https://developer.chrome.com/devtools/index).
By pressing `F12` you can bring up the chrome dev tools.

@ -6,16 +6,16 @@ page_keywords: grafana, build, contribute, documentation
# Building Grafana from source
Guide for creating packages from source, and for getting grafana up and running in
dev environment.
This guide will help you create packages from source and get grafana up and running in
dev environment. Grafana ships with its own required backend server; also completely open-source. It's written in [Go](http://golang.org) and has a full [HTTP API](/v2.1/reference/http_api/).
## Dependencies
- Go 1.4
- NodeJS
- [Go 1.4](https://golang.org/dl/)
- [NodeJS](https://nodejs.org/download/)
## Get Code
Create a directory for the project and set your path accordingly. Then download and install Grafana into your $GOPATH directory
```
export GOPATH=`pwd`
go get github.com/grafana/grafana
@ -24,16 +24,16 @@ go get github.com/grafana/grafana
## Building the backend
```
cd $GOPATH/src/github.com/grafana/grafana
go run build.go setup (only needed once to install godep)
$GOPATH/bin/godep restore (will pull down all golang lib dependecies in your current GOPATH)
go build .
go run build.go setup # (only needed once to install godep)
$GOPATH/bin/godep restore # (will pull down all golang lib dependecies in your current GOPATH)
go run build.go build # (or 'go build .')
```
## Building on Windows
#### Building on Windows
The Grafana backend includes Sqlite3 which requires GCC to compile. So in order to compile Grafana on windows you need
to install GCC. We recommend [TDM-GCC](http://tdm-gcc.tdragon.net/download).
## Building frontend assets
## Build the Front-end Assets
To build less to css for the frontend you will need a recent version of of node (v0.12.0),
npm (v2.5.0) and grunt (v0.4.5). Run the following:
@ -51,12 +51,24 @@ go get github.com/Unknwon/bra
bra run
```
## Running
## Running Grafana Locally
You can run a local instance of Grafana by running:
```
./grafana-server
./bin/grafana-server
```
If you built the binary with `go run build.go build`, run `./bin/grafana-server`
If you built it with `go build .`, run `./grafana`
Open grafana in your browser (default http://localhost:3000) and login with admin user (default user/pass = admin/admin).
Open grafana in your browser (default [http://localhost:3000](http://localhost:3000)) and login with admin user (default user/pass = admin/admin).
## Developing for Grafana
To add features, customize your config, etc, you'll need to rebuild on source change (requires that you executed [godep restore](#build-the-backend), as outlined above).
```
go get github.com/Unknwon/bra
bra run
```
You'll also need to run `grunt watch` to watch for changes to the front-end.
## Creating optimized release packages
This step builds linux packages and requires that fpm is installed. Install fpm via `gem install fpm`.
@ -73,6 +85,10 @@ You only need to add the options you want to override. Config files are applied
1. grafana.ini
2. custom.ini
Learn more about Grafana config options in the [Configuration section](/installation/configuration/)
## Create a pull requests
Please contribute to the Grafana project and submit a pull request! Build new features, write or update documentation, fix bugs and generally make Grafana even more awesome.
Before or after your create a pull requests, sign the [contributor license agreement](/project/cla.html).
Before or after you create a pull request, sign the [contributor license agreement](/project/cla.html).
Together we can build amazing software faster.

@ -28,7 +28,7 @@ but protects both the contributor and the company / foundation behind the projec
It also gives us the option to relicense the code with a more permissive license in the future.
If you have more questions, shoot us an email or drop by #grafana on IRC (freenode).
If you have more questions, shoot us an [email](mailto:torkel@grafana.org) or drop by #grafana on IRC (freenode).
Many thanks to [RethinkDB](http://rethinkdb.com) for permission to re-use their CLA!
@ -82,4 +82,4 @@ You are not expected to provide support for your contributions, except to the ex
The failure of either party to enforce its rights under this agreement for any period shall not be construed as a waiver of such rights. No changes or modifications or waivers to this Agreement will be effective unless in writing and signed by both parties. In the event that any provision of this agreement shall be determined to be illegal or unenforceable, that provision will be limited or eliminated to the minimum extent necessary so that this agreement shall otherwise remain in full force and effect and enforceable. This agreement shall be governed by and construed in accordance with the laws of the State of California in the United States without regard to the conflicts of laws provisions thereof. In any action or proceeding to enforce rights under this agreement, the prevailing party will be entitled to recover costs and attorneys’ fees.
<iframe src="https://docs.google.com/forms/d/1iagLZBotC4IIrz7TXvEdPU5tCtFDk__C5Rs92afXpCE/viewform?embedded=true" width="800" height="820" frameborder="0" marginheight="0" marginwidth="0">Loading CLA...</iframe>
<iframe src="https://docs.google.com/forms/d/1iagLZBotC4IIrz7TXvEdPU5tCtFDk__C5Rs92afXpCE/viewform?embedded=true" width="800" height="820" frameborder="0" marginheight="0" marginwidth="0">Loading CLA...</iframe>

@ -5,14 +5,17 @@ page_keywords: grafana, annotations, guide, documentation
---
# Annotations
![](/img/v1/annotated_graph1.png)
Annotations provide a way to mark points on the graph with rich events. When you hover over an annotation
you can get title, tags, and text information for the event.
![](/img/v1/annotated_graph1.png)
To add an annotation query click dashboard settings icon in top menu and select `Annotations` from the
dropdown. This will open the `Annotations` edit view. Click the `Add` tab to add a new annotation query.
> Note: Annotations apply to all graphs in a given dashboard, not on a per-panel basis.
## Graphite annotations
Graphite supports two ways to query annotations.

@ -7,14 +7,26 @@ page_keywords: grafana, dashlist, panel, documentation
# Dashlist Panel
## Overview
![](/img/v2/dashboard_list_panel.png)
The dashboard list panel allows you to show a list of links to other dashboards. The list
can be based on a search query or dashboard tag query. You can also configure it to show your starred
dashboards.
The dashboard list panel allows you to display dynamic links to other dashboards. The list can be configured to use starred dashbaords, a search query and/or dashboard tags.
<img class="no-shadow" src="/img/v2/dashboard_list_panels.png">
> On each dashboard load, the dashlist panel will re-query the dashboard list, always providing the most up to date results.
## Mode: Starred Dashboards
The `starred` dashboard selection displays starred dashboards, up to the number specified in the `Limit Number to` field, in alphabetical order. On dashboard load, the dashlist panel will re-query the favorites to appear in dashboard list panel, always providing the most up to date results.
<img class="no-shadow" src="/img/v2/dashboard_list_config_starred.png">
## Mode: Search Dashboards
The panel may be configured to search by either string query or tag(s). On dashboard load, the dashlist panel will re-query the dashboard list, always providing the most up to date results.
To configure dashboard list in this manner, select `search` from the Mode select box. When selected, the Search Options section will appear.
## Options
![](/img/v2/dashboard_list_panel_options.png)
Name | Description
------------ | -------------
@ -24,4 +36,17 @@ Tags | if in search mode specify dashboard tags to search for
Limit number to | Specify the maximum number of dashboards
### Search by string
To search by a string, enter a search query in the `Search Options: Query` field. Queries are case-insensitive, and partial values are accepted.
<img class="no-shadow" src="/img/v2/dashboard_list_config_string.png">
### Search by tag
To search by one or more tags, enter your selection in the `Search Options: Tags:` field. Note that existing tags will not appear as you type, and *are* case sensitive. To see a list of existing tags, you can always return to the dashboard, open the Dashboard Picker at the top and click `tags` link in the search bar.
<img class="no-shadow" src="/img/v2/dashboard_list_config_tags.png">
> When multiple tags and strings appear, the dashboard list will display those matching ALL conditions.

@ -6,5 +6,80 @@ page_keywords: grafana, export, import, documentation
# Export and Import
You find the import view in the bottom of the search dropdown. From this view you
can import local json files or migrate dashboards stored in Elasticsearch or InfluxDB.
## Exporting a dashboard
Dashboards are exported in Grafana JSON format, and contain everything you need (layout, variables, styles, data sources, queries, etc)to import the dashboard at a later time.
#### Export to file
To export a dashboard, locate the settings menu within the desired dashboard and click the gear icon. The export option will always be available, and will open a browser save-as dialog window.
<img class="no-shadow" src="/img/v2/export.gif">
#### Copy JSON
The raw JSON may be accessed directly from within the interface and copy/pasted into an editor of your choice to be saved later. To view this JSON, locate the settings menu within the desired dashboard and click the gear icon. The View JSON option will always be available, and will open the raw JSON in a text area. To copy the entire JSON file, click into the text area, the select all `CTRL`+`A` (PC, Linux) or `⌘`+`A` (Mac).
<img class="no-shadow" src="/img/v2/export-2.gif">
## Importing a dashboard
Grafana 2.0 now has integrated dashboard storage engine that can be configured to use an internal sqlite3 database, MySQL, or Postgres. This eliminates the need to use Elasticsearch for dashboard storage for Graphite users. Grafana 2.0 does not support storing dashboards in InfluxDB.
The import view can be found at the Dashboard Picker dropdown, next to the New Dashboard and Playlist buttons.
<img class="no-shadow" src="/img/v2/import.gif">
#### Import from a file
To import a dashboard through a local JSON file, click the 'Choose file' button in the Import from File section. Note that JSON is not linted or validated prior during upload, so we recommend validating locally if you're editing. In a pinch, you can use http://jsonlint.com/, and if you are editing dashboard JSON frequently, there are linter plugins for popular text editors.
#### Importing dashboards from Elasticsearch
Start by going to the `Data Sources` view (via the side menu), and make sure your Elasticsearch data source is added. Specify the Elasticsearch index name where your existing Grafana v1.x dashboards are stored (the default is `grafana-dash`).
![](/img/v2/datasource_edit_elastic.jpg)
#### Importing dashboards from InfluxDB
Start by going to the `Data Sources` view (via the side menu), and make sure your InfluxDB data source is added. Specify the database name where your Grafana v1.x dashboards are stored, the default is `grafana`.
### Import view
In the Import view you find the section `Migrate dashboards`. Pick the data source you added (from Elasticsearch or InfluxDB), and click the `Import` button.
![](/img/v2/migrate_dashboards.jpg)
Your dashboards should be automatically imported into the Grafana 2.0 back-end. Dashboards will no longer be stored in your previous Elasticsearch or InfluxDB databases.
## Troubleshooting
### Template variables could not be initialized.
When importing a dashboard, keep an eye out for template variables in your JSON that may not exist in your instance of Grafana. For example,
"templating": {
"list": [
{
"allFormat": "glob",
"current": {
"tags": [],
"text": "google_com + monkey_id_au",
"value": [
"google_com",
"monkey_id_au"
]
},
"datasource": null,
To resolve this, remove any unnecessary JSON that may be specific to the instance you are exporting from. In this case, we can remove the entire "current" section entirely, and Grafana will populate default.
"templating": {
"list": [
{
"allFormat": "glob",
"datasource": null,

@ -0,0 +1,32 @@
page_title: Kayboard Shortcuts
page_description: Kayboard Shortcuts for Grafana
page_keywords: grafana, export, import, documentation
---
# Keyboard Shortcuts
No mouse? No problem. Grafana has extensive keyboard shortcuts to allow you to navigate throughout the interface. This comes in especially handy when dealing with dealing with single-purpose machines powering on-wall displays that may not have a mouse available.
## Dashboard Keyboard Shortcuts
Press `Shift`+`?` to open the keyboard shortcut dialog from anywhere within the dashboard views.
<img class="no-shadow" src="/img/v2/Grafana-Keyboard-Shortcuts.gif" style="width:80%;">
|Shortcut|Action|
|---|---|
|`Esc`|Exit fullscreen edit/view mode, close search or any editor view|
|`CTRL`+`F`|Open dashboard search view (also contains import/playlist controls)|
|`CTRL`+`S`|Save dashboard|
|`CTRL`+`H`|Hide row controls|
|`CTRL`+`Z`|Zoom out|
|`CTRL`+`R`|Refresh (Fetches new data and rerenders panels)|
|`CTRL`+`O`|Enable/Disable shared graph crosshair|
**Note**: Grafana keyboard shortcuts are the same across operating system. For example, `CTRL`+`F` will open the dashboard picker on a Mac as well, **not** `⌘`+`F`
Have a suggestion for a new keyboard shortcut? Let us know.

@ -4,15 +4,17 @@ page_description: Playlist guide for Grafana
page_keywords: grafana, playlist, documentation
---
## About the Playlist
# Playlist
The Playlist is a special type of Dashboard that rotates through a particular list of two or more Dashboards. They can be a great way to build situational awareness or just show off your metrics to your team or visitors. Since Dashboards in Grafana automatically scale to any resolution they're perfect for big screens!
The Playlist is a special type of Dashboard that rotates through a list of Dashboards. A Playlist can be a great way to build situational awareness, or just show off your metrics to your team or visitors.
Since Grafana automatically scales Dashboards to any resolution they're perfect for big screens!
## Configuring the Playlist
The Playlist can be accessed from the main Dashboard picker. Click the 'Playlist' button at the bottom of the picker to access the Playlist functionality.
![](/img/v2/dashboard_search.jpg)
<img src="/img/v2/dashboard_search.png" class="no-shadow">
Since the Playlist is basically a list of Dashboards, ensure that all the Dashboards you want to appear in your Playlist are added here. You can search Dashboards by name (or use a regular expression).
@ -24,9 +26,9 @@ You can configure a time interval for Grafana to wait on a particular Dashboard
## Starting and controlling the Playlist
To start the Playlist, click the green "Start" button
To start the Playlist, click the green "Start" button
Playlists can also be manually controlled utilizing the Playlist controls at the top of screen when in Playlist mode.
Playlists can also be manually controlled utilizing the Playlist controls at the top of screen when in Playlist mode.
Click the stop button to stop the Playlist, and exit to the current Dashboard.
Click the next button to advance to the next Dashboard in the Playlist.

@ -1,34 +1,54 @@
----
page_title: Search guide
page_description: Search guide
page_keywords: grafana, time range, guide, documentation
page_title: Dashboard Search
page_description: Dashboard Search in Grafana
page_keywords: grafana, search, guide, documentation
---
# Search Guide
# Dashboard Search
To search and load dashboards click the open folder icon in the header or use the shortcut CTRL+F.
Dashboards can be searched by the dashboard name, filtered by one (or many) tags or filtered by starred status. The dashboard search is accessed through the dashboard picker, available in the dashboard top nav area.
## Tags
![](/img/v1/dashboards_tags2_search.png)
<img class="no-shadow" src="/img/v2/dashboard_search.png">
Click on any dashboard or use the down arrow key to navigate the search result and hit enter to open the selected dashboard.
1. `Dashboard Picker`: The Dashboard Picker is your primary navigation tool to move between dashboards. It is present on all dashboards, and open the Dashboard Search. The dashboard picker also doubles as the title of the current dashboard.
2. `Search Bar`: The search bar allows you to enter any string and search both database and file based dashbaords in real-time.
3. `Starred`: The starred link allows you to filter the list to display only starred dashboards.
4. `Tags`: The tags filter allows you to filter the list by dashboard tags.
If you have a lot of dashboards use tags to organize them. You can add tags in the dashboards settings modal.
When using only a keyboard, you can use your keyboard arrow keys to navigate the results, hit enter to open the selected dashboard.
![](/img/v1/dashboards_tags1.png)
## Find by dashboard name
After you have added tags you can now view all available tags in the search popup. Click the tags link to the right in the search box, or just hit tab and then enter. You should now see a list of all tags. You can filter the tag list by continue writing in the search box, for example: "tags!:mongodb".
<img class="no-shadow" src="/img/v2/dashboard_search_text.gif">
![](/img/v1/dashboards_tags3_search.png)
To search and load dashboards click the open folder icon in the header or use the shortcut `CTRL`+`F`. Begin typing any part of the desired dashboard names. Search will return results for for any partial string match in real-time, as you type.
Click on any tag in the tag list to show dashboards with that tag (or just down arrow key to select a tag then enter key).
Dashboard search is:
- Real-time
- *Not* case senstitive
- Functional across stored *and* file based dashboards.
## Keyboard navigation
## Filter by Tag(s)
While the search input has focus you can use your keyboard arrow keys to navigate the results, hit enter to open the selected dashboard.
Tags are a great way to organize your dashboards, especially as the number of dashbaords grow. Tags can be added and managed in the dashboard `Settings`.
To filter the dashboard list by tag, click on any tag appearing in the right column. The list may be further filtered by cliking on additional tags:
<img class="no-shadow" src="/img/v2/dashboard_search_tag_filtering.gif">
Alternately, to see a list of all available tags, click the tags link in the search bar. All tags will be shown, and when a tag is selected, the dashboard search will be instantly filtered:
<img class="no-shadow" src="/img/v2/dashboard_search_tags_all_filtering.gif">
When using only a keybaord: `tab` to focus on the *tags* link, `▼` down arrow key to find a tag and select with the `Enter` key.
**Note**: When multiple tags are selected, Grafana will show dashboards that include **all**.
## Filter by Starred
Starring is a great way to organize and find commonly used dashboards. To show only starred dashboards in the list, click the *starred* link in the search bar:
<img class="no-shadow" src="/img/v2/dashboard_search_starred_filtering.gif">
When using only a keybaord: `tab` to focus on the *stars* link, `▼` down arrow key to find a tag and select with the `Enter` key.

@ -8,7 +8,7 @@ page_keywords: grafana, singlestat, panel, documentation
![](/img/v1/singlestat_panel2.png)
The singlestat Panel allows you to show the one main summary stat of a single series (like max, min, avg, sum). It also provides thresholds to color the stat or the Panel background.
The Singlestat Panel allows you to show the one main summary stat of a SINGLE series. It reduces the series into a single number (by looking at the max, min, average, or sum of values in the series). Singlestat also provides thresholds to color the stat or the Panel background. It can also translate the single number into a text value, and show a sparkline summary of the series.
### Singlestat Panel Configuration
@ -37,7 +37,7 @@ The coloring options of the Singlestat Panel config allow you to dynamically cha
### Spark Lines
Sparklines are a great way of seeing the historical data related to the summary stat, providing valuable context at a glance. Sparklines act differently than traditional graph panels and do not include x or y axis, coordinates, a legend, or ability to interact with the graph.
Sparklines are a great way of seeing the historical data related to the summary stat, providing valuable context at a glance. Sparklines act differently than traditional Graph Panels and do not include x or y axis, coordinates, a legend, or ability to interact with the graph.
<img class="no-shadow" src="/img/v1/Singlestat-Sparklines.png">

@ -1,47 +1,75 @@
----
page_title: Templated dashboards
page_description: Templated dashboards
page_title: Dashboard Templating
page_description: Dashboard Templating
page_keywords: grafana, templating, variables, guide, documentation
---
# Templated Dashboards
# Dashboard Templating
![](/img/v2/templating_var_list.png)
## Overview
Templating allows your Dashboards to be more interactive and dynamic. You can create Template variables that can be used practically anywhere in Grafana: metric queries on individual panels, series names, and titles.
Dashboard Templating allows you to make your Dashboards more interactive and dynamic.
Quickly change Template variables to show different graphs and metrics for different server and applications.
They’re one of the most powerful and most used features of Grafana, and they’ve recently gotten even more attention in Grafana 2.0 and Grafana 2.1.
You can create Dashboard Template variables that can be used practically anywhere in a Dashboard: data queries on individual Panels (within the Query Editor), the names in your legends, or titles in Panels and Rows.
You can configure Dashboard Templating by clicking the dropdown cog on the top of the Dashboard while viewing it.
You can find and configure the Templating for a particular Dashboard by clicking the dropdown cog on the top of the Dashboard when viewing it.
## Variable types
There are three different types of Template variables. They can all be used to create dynamic variables that you can use throughout the Dashboard. They differ slightly in how they create values.
There are three different types of Template variables: query, custom, and interval.
They can all be used to create dynamic variables that you can use throughout the Dashboard, but they differ in how they get the data for their values.
### Query
> The Query type is often Data Source specific. Please consult the appropriate documentation for your particular Data Source.
> Note: The Query type is Data Source specific. Please consult the appropriate documentation for your particular Data Source.
Query is the most common type of Template variable. Use the `Query` template type to generate a dynamic list of variables, simply by allowing Grafana to explore your Data Source metric namespace when the Dashboard loads.
For example a query like `prod.servers.*` will fill the variable with all possible values that exists in that wildcard position (in the case of the Graphite Data Source).
You can even create nested variables that use other variables in their definition. For example `apps.$app.servers.*` uses the variable $app in its own query definition.
You can utilize the special ** All ** value to allow the Dashboard user to query for every single Query variable returned. Grafana will automatically translate ** All ** into the appropriate format for your Data Source.
#### Multi-select
As of Grafana 2.1, it is now possible to select a subset of Query Template variables (previously it was possible to select an individual value or 'All', not multiple values that were less than All). This is accomplished via the Multi-Select option. If enabled, the Dashboard user will be able to enable and disable individual variables.
The Multi-Select functionality is taken a step further with the introduction of Multi-Select Tagging. This functionality allows you to group individual Template variables together under a Tag or Group name.
For example, if you were using Templating to list all 20 of your applications, you could use Multi-Select Tagging to group your applications by function or region or criticality, etc.
> Note: Multi-Select Tagging functionality is currently experimental but is part of Grafana 2.1. To enable this feature click the enable icon when editing Template options for a particular variable.
<img class="no-shadow" src="/img/v2/template-tags-config.png">
Grafana gets the list of tags and the list of values in each tag by performing two queries on your metric namespace.
The Tags query returns a list of Tags.
This is the most common type of Template variable. Using the Query type to generate a dynamic list of variables, simply by allowing Grafana to explore your Data Source metric namespace when the Dashboard loads.
The Tag values query returns the values for a given Tag.
For example a query like `prod.servers.*` will fill the variable with all possible values that exists in that wildcard position (in the case of the Graphite Data Source).
Note: a proof of concept shim that translates the metric query into a SQL call is provided. This allows you to maintain your tag:value mapping independently of your Data Source.
You can even create nested variables that use other variables in their definition. For example `apps.$app.servers.*` uses the variable `$app` in its own query definition.
Once configured, Multi-Select Tagging provides a convenient way to group and your template variables, and slice your data in the exact way you want. The Tags can be seen on the right side of the template pull-down.
You can utilize the special "All" value to allow the Dashboard user to query for every single Query variable returned. Grafana will automatically translate All into the appropriate format for your Data Source.
![](/img/v2/multi-select.gif)
As of Grafana 2.1, it is now possible to select a subset of Query Template variables (previously it was possible to select an individual value or 'All', not multiple values that were less than All). This is accomplished via the Multi-Select option. If enabled, the Dashboard user will be able to enable and disable individual variables.
### Interval
Use the Interval type to create Template variables aroundr time ranges (eg. `1m`,`1h`, `1d`). There is also a special `auto` option that will change depending on the current time range, you can specify how many times the current time range should be divided to calculate the current `auto` range.
Use the `Interval` type to create Template variables aroundr time ranges (eg. `1m`,`1h`, `1d`). There is also a special `auto` option that will change depending on the current time range, you can specify how many times the current time range should be divided to calculate the current `auto` range.
![](/img/v2/templated_variable_parameter.png)
### Custom
Use the Custom type to manually create Template variables around explicit values that are hard coded in the Dashboard and not dependent on any Data Source. You can specify multiple Custom Template values by separating them with a comma.
Use the `Custom` type to manually create Template variables around explicit values that are hard-coded into the Dashboard, and not dependent on any Data Source. You can specify multiple Custom Template values by separating them with a comma.
## Utilizing Template Variables with Repeating Panels and Repeating Rows

@ -4,13 +4,13 @@ page_description: Time range user guide
page_keywords: grafana, time range, guide, documentation
---
# Dashboard time picker
# Time Range Controls
Grafana provides numerous ways to manage the time ranges of the data being visualized, both at the Dashboard-level and the Panel-level.
![](/img/v1/time_range_controls.png)
<img class="no-shadow" src="/img/v1/time_range_controls.png">
In the top right, you have the master Dashboard time picker (it's inbetween the 'Zoom out' and the 'Refresh' links).
In the top right, you have the master Dashboard time picker (it's in between the 'Zoom out' and the 'Refresh' links).
From this dropdown you can:
@ -24,10 +24,24 @@ All of this applies to all Panels in the Dashboard (except those with Panel Time
It's possible to customize the options displayed for relative time and the auto-refresh options.
From Dashboard settings, click the Timepicker tab. From here you can specify the relative and auto refresh intervals. The Timepicker tab settings are saved on a per Dashboard basis. Entries are comma separated and accept a number followed by one of the following units: s (seconds), m (minutes), h (hours), d (days), w (weeks), M (months), y (years).
From Dashboard settings, click the Timepicker tab. From here you can specify the relative and auto refresh intervals. The Timepicker tab settings are saved on a per Dashboard basis. Entries are comma separated and accept a number followed by one of the following units: `s (seconds)`, `m (minutes)`, `h (hours)`, `d (days)`, `w (weeks)`, `M (months)`, `y (years)`.
![](/img/v1/timepicker_editor.png)
<img class="no-shadow" src="/img/v2/TimePicker-TimeOptions.png">
## Panel time override
In Grafana 2.0, it's now possible for individual Panels to override the Dashboard time picker. Please check out the [whats new in 2.0 guide](../../guides/whats-new-in-v2/) for further information
## Panel time overrides & timeshift
In Grafana v2.x you can now override the relative time range for individual panels, causing them to be different than what is selected in the Dashboard time picker in the upper right. You can also add a time shift to individual panels. This allows you to show metrics from different time periods or days at the same time.
<img class="no-shadow" src="/img/v2/panel_time_override.jpg">
You control these overrides in panel editor mode and the new tab `Time Range`.
<img class="no-shadow" src="/img/v2/time_range_tab.jpg">
When you zoom or change the Dashboard time to a custom absolute time range, all panel overrides will be disabled. The panel relative time override is only active when the dashboard time is also relative. The panel timeshift override however is always active, even when the dashboard time is absolute.
The `Hide time override info` option allows you to hide the the override info text that is by default shown in the
upper right of a panel when overridden time range options.
Currently you can only override the dashboard time with relative time ranges, not absolute time ranges.

Loading…
Cancel
Save