mirror of
https://github.com/grafana/grafana.git
synced 2024-11-21 16:38:03 -06:00
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
alertinganalyticsbusiness-intelligencedashboarddata-visualizationelasticsearchgografanahacktoberfestinfluxdbmetricsmonitoringmysqlpostgresprometheus
50244ed4a1
This adds a version of the SQLStore that includes a ReadReplica. The primary DB can be accessed directly - from the caller's standpoint, there is no difference between the SQLStore and ReplStore unless they wish to explicitly call the ReadReplica() and use that for the DB sessions. Currently only the stats service GetSystemStats and GetAdminStats are using the ReadReplica(); if it's misconfigured or if the databaseReadReplica feature flag is not turned on, it will fall back to the usual (SQLStore) behavior. Testing requires a database and read replica - the replication should already be configured. I have been testing this locally with a docker mysql setup (https://medium.com/@vbabak/docker-mysql-master-slave-replication-setup-2ff553fceef2) and the following config: [feature_toggles] databaseReadReplica = true [database] type = mysql name = grafana user = grafana password = password host = 127.0.0.1:3306 [database_replica] type = mysql name = grafana user = grafana password = password host = 127.0.0.1:3307 |
||
---|---|---|
.bingo | ||
.changelog-archive | ||
.github | ||
.husky | ||
.vim | ||
.vscode | ||
.yarn | ||
conf | ||
contribute | ||
cue.mod | ||
devenv | ||
docs | ||
e2e | ||
emails | ||
grafana-mixin | ||
hack | ||
kinds | ||
local | ||
packages | ||
packaging | ||
pkg | ||
plugins-bundled | ||
public | ||
scripts | ||
tools | ||
.betterer.results | ||
.betterer.results.json | ||
.betterer.ts | ||
.bra.toml | ||
.browserslistrc | ||
.dockerignore | ||
.drone.star | ||
.drone.yml | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc | ||
.gitattributes | ||
.gitignore | ||
.golangci.toml | ||
.levignore.js | ||
.nvmrc | ||
.pa11yci-pr.conf.js | ||
.pa11yci.conf.js | ||
.prettierignore | ||
.prettierrc.js | ||
.trivyignore | ||
.yarnrc.yml | ||
build.go | ||
CHANGELOG.md | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
crowdin.yml | ||
cypress.config.js | ||
Dockerfile | ||
embed.go | ||
go.mod | ||
go.sum | ||
go.work | ||
go.work.sum | ||
GOVERNANCE.md | ||
HALL_OF_FAME.md | ||
jest.config.js | ||
latest.json | ||
lefthook.rc | ||
lefthook.yml | ||
lerna.json | ||
LICENSE | ||
LICENSING.md | ||
MAINTAINERS.md | ||
Makefile | ||
NOTICE.md | ||
nx.json | ||
package.json | ||
playwright.config.ts | ||
project.json | ||
README.md | ||
ROADMAP.md | ||
SECURITY.md | ||
stylelint.config.js | ||
SUPPORT.md | ||
tsconfig.json | ||
WORKFLOW.md | ||
yarn.lock |
The open-source platform for monitoring and observability
Grafana allows you to query, visualize, alert on and understand your metrics no matter where they are stored. Create, explore, and share dashboards with your team and foster a data-driven culture:
- Visualizations: Fast and flexible client side graphs with a multitude of options. Panel plugins offer many different ways to visualize metrics and logs.
- Dynamic Dashboards: Create dynamic & reusable dashboards with template variables that appear as dropdowns at the top of the dashboard.
- Explore Metrics: Explore your data through ad-hoc queries and dynamic drilldown. Split view and compare different time ranges, queries and data sources side by side.
- Explore Logs: Experience the magic of switching from metrics to logs with preserved label filters. Quickly search through all your logs or streaming them live.
- Alerting: Visually define alert rules for your most important metrics. Grafana will continuously evaluate and send notifications to systems like Slack, PagerDuty, VictorOps, OpsGenie.
- Mixed Data Sources: Mix different data sources in the same graph! You can specify a data source on a per-query basis. This works for even custom datasources.
Get started
Unsure if Grafana is for you? Watch Grafana in action on play.grafana.org!
Documentation
The Grafana documentation is available at grafana.com/docs.
Contributing
If you're interested in contributing to the Grafana project:
- Start by reading the Contributing guide.
- Learn how to set up your local environment, in our Developer guide.
- Explore our beginner-friendly issues.
- Look through our style guide and Storybook.
Get involved
- Follow @grafana on Twitter.
- Read and subscribe to the Grafana blog.
- If you have a specific question, check out our discussion forums.
- For general discussions, join us on the official Slack team.
This project is tested with BrowserStack
License
Grafana is distributed under AGPL-3.0-only. For Apache-2.0 exceptions, see LICENSING.md.