* Squash merge Ryans uPlot work * uPlot - wrap into composable API * Remove MicroPlot.tsx * Add missing uPlot stylesheet import * Use field config for axes config * Min selection distance for Zoom * WIP Tooltip behaviour * Some progress on rendering plot * gdev dashboard for graph ng tests * Update custom field config interface for graph options * Add support for paths in default field config setup (+2 squashed commits) Squashed commits: [93fc3afbfc] Typecheck fix [a07ef86a8b] Add support for paths in default field config setup * Include IANA timezone canonical name in TimeZoneInfo * Use correct time zone on time axis * Default axis width * Use system date time formats for time axis ticks * Graph panel layout * Respect config paths when rendering default value of field config property * Fix mismatch in field config editor types * Color field option editor * Refactor plot context to a single one * First version of new graph legend plugin * Fix mutable data frame * Multiple ui fixes, layout is still slightly problematic * Remove unused * Fix tooltip test * Some perf optimisations * Update dev dashboard * Typecheck fix * Do not use color value editor as standard property editor, add custom field config to graph panel to control series color * Update dev dashboard with correct tags * Fix undefined issues * Update devenv/dev-dashboards/panel-graph/graph-ng.json |
||
---|---|---|
.. | ||
benchmarks/ab | ||
bulk_alerting_dashboards | ||
bulk-dashboards | ||
dev-dashboards | ||
dev-dashboards-without-uid | ||
docker | ||
e2e-api-tests | ||
local-npm | ||
create_docker_compose.sh | ||
dashboards.yaml | ||
datasources_docker.yaml | ||
datasources.yaml | ||
README.md | ||
setup.sh |
Set up your development environment
This folder contains useful scripts and configuration so you can:
- Configure data sources in Grafana for development.
- Configure dashboards for development and test scenarios.
- Create docker-compose file with databases and fake data.
Install Docker
Grafana uses Docker to make the task of setting up databases a little easier. If you do not have it already, make sure you install Docker before proceeding to the next step.
Developer dashboards and data sources
./setup.sh
After restarting the Grafana server, there should be a number of data sources named gdev-<type>
provisioned as well as
a dashboard folder named gdev dashboards
. This folder contains dashboard and panel features tests dashboards.
Please update these dashboards or make new ones as new panels and dashboards features are developed or new bugs are
found. The dashboards are located in the devenv/dev-dashboards
folder.
docker-compose with databases
This command creates a docker-compose file with specified databases configured and ready to run. Each database has
a prepared image with some fake data ready to use. For available databases, see docker/blocks
directory. Notice that
for some databases there are multiple images, for example there is prometheus_mac specifically for Macs or different
version.
make devenv sources=influxdb,prometheus2,elastic5
Some of the blocks support dynamic change of the image version used in the Docker file. The signature looks like this:
make devenv sources=postgres,openldap,grafana postgres_version=9.2 grafana_version=6.7.0-beta1
Notes per block
Grafana
The grafana block is pre-configured with the dev-datasources and dashboards.
Jaeger
Jaeger block runs both Jaeger and Loki container. Loki container sends traces to Jaeger and also logs its own logs into itself so it is possible to setup derived field for traceID from Loki to Jaeger. You need to install a docker plugin for the self logging to work, without it the container won't start. See https://github.com/grafana/loki/tree/master/cmd/docker-driver#plugin-installation for installation instructions.