grafana/README.md

163 lines
6.0 KiB
Markdown
Raw Normal View History

2017-09-01 00:16:42 -05:00
[Grafana](https://grafana.com) [![Circle CI](https://circleci.com/gh/grafana/grafana.svg?style=svg)](https://circleci.com/gh/grafana/grafana) [![Go Report Card](https://goreportcard.com/badge/github.com/grafana/grafana)](https://goreportcard.com/report/github.com/grafana/grafana)
2014-07-14 13:53:20 -05:00
================
2017-03-13 15:32:28 -05:00
[Website](https://grafana.com) |
2015-03-25 06:17:22 -05:00
[Twitter](https://twitter.com/grafana) |
2017-03-13 17:05:47 -05:00
[Community & Forum](https://community.grafana.com)
2013-01-25 22:10:28 -06:00
2015-03-25 06:03:20 -05:00
Grafana is an open source, feature rich metrics dashboard and graph editor for
2015-11-12 06:50:57 -06:00
Graphite, Elasticsearch, OpenTSDB, Prometheus and InfluxDB.
2014-07-14 13:53:20 -05:00
2017-03-13 15:32:28 -05:00
![](http://docs.grafana.org/assets/img/features/dashboard_ex1.png)
2015-03-29 06:39:51 -05:00
2015-11-12 06:50:57 -06:00
- [Install instructions](http://docs.grafana.org/installation/)
- [What's New in Grafana 2.0](http://docs.grafana.org/guides/whats-new-in-v2/)
- [What's New in Grafana 2.1](http://docs.grafana.org/guides/whats-new-in-v2-1/)
- [What's New in Grafana 2.5](http://docs.grafana.org/guides/whats-new-in-v2-5/)
- [What's New in Grafana 3.0](http://docs.grafana.org/guides/whats-new-in-v3/)
2016-11-29 12:03:33 -06:00
- [What's New in Grafana 4.0](http://docs.grafana.org/guides/whats-new-in-v4/)
- [What's New in Grafana 4.1](http://docs.grafana.org/guides/whats-new-in-v4-1/)
2017-03-23 11:04:18 -05:00
- [What's New in Grafana 4.2](http://docs.grafana.org/guides/whats-new-in-v4-2/)
2017-05-12 06:35:52 -05:00
- [What's New in Grafana 4.3](http://docs.grafana.org/guides/whats-new-in-v4-3/)
2017-07-04 18:15:42 -05:00
- [What's New in Grafana 4.4](http://docs.grafana.org/guides/whats-new-in-v4-4/)
2015-02-06 01:40:12 -06:00
2014-03-09 12:02:04 -05:00
## Features
2014-01-19 10:16:57 -06:00
2014-03-09 12:02:04 -05:00
### Graphing
2015-03-25 06:03:20 -05:00
- Fast rendering, even over large timespans
- Click and drag to zoom
2015-03-29 06:39:51 -05:00
- Multiple Y-axis, logarithmic scales
2015-03-25 06:03:20 -05:00
- Bars, Lines, Points
2015-10-30 04:07:08 -05:00
- Smart Y-axis formatting
2014-01-19 10:16:57 -06:00
- Series toggles & color selector
2015-03-25 06:03:20 -05:00
- Legend values, and formatting options
- Grid thresholds, axis labels
2015-03-29 06:30:03 -05:00
- [Annotations](http://docs.grafana.org/reference/annotations/)
- Any panel can be rendered to PNG (server side using phantomjs)
2014-01-19 10:16:57 -06:00
2014-03-09 12:02:04 -05:00
### Dashboards
- Create, edit, save & search dashboards
- Change column spans and row heights
- Drag and drop panels to rearrange
2015-03-29 06:30:03 -05:00
- [Templating](http://docs.grafana.org/reference/templating/)
- [Scripted dashboards](http://docs.grafana.org/reference/scripting/)
- [Dashboard playlists](http://docs.grafana.org/reference/playlist/)
- [Time range controls](http://docs.grafana.org/reference/timerange/)
2015-03-29 06:39:51 -05:00
- [Share snapshots publicly](http://docs.grafana.org/v2.0/reference/sharing/)
2014-03-09 12:02:04 -05:00
### InfluxDB
2015-03-29 06:30:03 -05:00
- Use InfluxDB as a metric data source, annotation source
- Query editor with field and tag typeahead, easy group by and function selection
### Graphite
- Graphite target expression parser
- Feature rich query composer
- Quickly add and edit functions & parameters
- Templated queries
- [See it in action](http://docs.grafana.org/datasources/graphite/)
### Elasticsearch, Prometheus & OpenTSDB
- Feature rich query editor UI
2014-07-14 13:53:20 -05:00
### Alerting
- Define alert rules using graphs & query conditions
- Schedule & evalute alert rules, send notifications to Slack, Hipchat, Email, PagerDuty, etc.
2014-01-19 10:16:57 -06:00
2014-08-12 02:24:58 -05:00
## Requirements
2015-03-29 06:39:51 -05:00
There are no dependencies except an external time series data store. For dashboards and user accounts Grafana can use an embedded
2015-03-29 06:30:03 -05:00
database (sqlite3) or you can use an external SQL data base like MySQL or Postgres.
2014-01-19 10:16:57 -06:00
2014-08-12 02:24:58 -05:00
## Installation
Head to [grafana.org](http://docs.grafana.org/installation/) and [download](https://grafana.com/get)
the latest release.
2014-01-19 10:16:57 -06:00
2015-03-29 06:30:03 -05:00
If you have any problems please read the [troubleshooting guide](http://docs.grafana.org/installation/troubleshooting/).
2014-08-12 02:24:58 -05:00
## Documentation & Support
2015-03-29 06:30:03 -05:00
Be sure to read the [getting started guide](http://docs.grafana.org/guides/gettingstarted/) and the other feature guides.
2014-01-20 03:57:59 -06:00
2014-08-12 02:24:58 -05:00
## Run from master
2015-09-08 15:16:51 -05:00
If you want to build a package yourself, or contribute. Here is a guide for how to do that. You can always find
2017-03-13 15:32:28 -05:00
the latest master builds [here](https://grafana.com/grafana/download)
2015-03-29 06:30:03 -05:00
### Dependencies
- Go 1.8.1
- NodeJS LTS
2015-03-29 06:30:03 -05:00
### Get Code
2016-02-10 05:08:04 -06:00
```bash
2015-03-29 06:30:03 -05:00
go get github.com/grafana/grafana
```
Since imports of dependencies use the absolute path `github.com/grafana/grafana` within the `$GOPATH`,
you will need to put your version of the code in `$GOPATH/src/github.com/grafana/grafana` to be able
to develop and build grafana on a cloned repository. To do so, you can clone your forked repository
directly to `$GOPATH/src/github.com/grafana` or you can create a symbolic link from your version
of the code to `$GOPATH/src/github.com/grafana/grafana`. The last options makes it possible to change
easily the grafana repository you want to build.
```bash
go get github.com/*your_account*/grafana
mkdir $GOPATH/src/github.com/grafana
2016-09-18 04:13:00 -05:00
ln -s $GOPATH/src/github.com/*your_account*/grafana $GOPATH/src/github.com/grafana/grafana
```
2015-03-29 06:30:03 -05:00
### Building the backend
2016-02-10 05:08:04 -06:00
```bash
2015-03-29 06:30:03 -05:00
cd $GOPATH/src/github.com/grafana/grafana
2016-09-15 06:09:33 -05:00
go run build.go setup
2015-12-03 05:03:06 -06:00
go run build.go build
2015-03-29 06:30:03 -05:00
```
### Building frontend assets
To build less to css for the frontend you will need a recent version of **node (v6+)**,
2015-03-29 06:30:03 -05:00
npm (v2.5.0) and grunt (v0.4.5). Run the following:
2016-02-10 05:08:04 -06:00
```bash
npm install -g yarn
yarn install --pure-lockfile
npm run build
2015-03-29 06:30:03 -05:00
```
To build the frontend assets only on changes:
```bash
sudo npm install -g grunt-cli # to do only once to install grunt command line interface
grunt && grunt watch
```
2015-03-29 06:30:03 -05:00
### Recompile backend on source change
2016-09-15 06:09:33 -05:00
To rebuild on source change.
2016-02-10 05:08:04 -06:00
```bash
2015-03-29 06:30:03 -05:00
go get github.com/Unknwon/bra
bra run
```
### Running
2016-02-10 05:08:04 -06:00
```bash
2015-12-01 02:23:30 -06:00
./bin/grafana-server
2015-03-29 06:30:03 -05:00
```
Open grafana in your browser (default: `http://localhost:3000`) and login with admin user (default: `user/pass = admin/admin`).
2015-03-29 06:30:03 -05:00
### Dev config
Create a custom.ini in the conf directory to override default configuration options.
You only need to add the options you want to override. Config files are applied in the order of:
1. grafana.ini
1. custom.ini
2015-03-29 06:30:03 -05:00
2015-04-29 15:35:03 -05:00
## Create a pull request
Before or after you create a pull request, sign the [contributor license agreement](http://docs.grafana.org/project/cla/).
2015-04-29 15:35:03 -05:00
## Contribute
If you have any idea for an improvement or found a bug do not hesitate to open an issue.
And if you have time clone this repo and submit a pull request and help me make Grafana
the kickass metrics & devops dashboard we all dream about!
2014-01-20 03:57:59 -06:00
2014-08-12 02:24:58 -05:00
## License
Grafana is distributed under Apache 2.0 License.
Work in progress Grafana 2.0 (with included Grafana backend)