Go to file
Dominik Prokop 322adac5fc Dashboard migration: v14 Broken dash repro (#110405)
* Broken dash repro

* Fix V16 migration to preserve panels when rows array is empty

- Fixed bug where panels were deleted when migrating dashboards with empty rows array
- Updated v16.go to match frontend implementation behavior
- Added test case for empty rows scenario in v16_test.go
- Renamed test files to v16.empty-rows-and-panels-array.json for clarity
- All migration tests passing (419 test cases)
2025-09-01 16:19:14 +02:00
.changelog-archive Update dependency prettier to v3.6.2 (#108689) 2025-07-25 17:47:44 +01:00
.citools Dependencies: Bump Go to v1.24.5 (#108175) 2025-07-22 17:08:40 +02:00
.github CI: Run gofmt on Linting action (#110159) 2025-08-26 16:14:03 +02:00
.husky
.vim
.vscode FEMT: Basic frontend-service implementation (#104229) 2025-04-24 13:14:21 +01:00
.yarn Update Yarn to v4.9.2 (#107104) 2025-06-24 14:47:42 +01:00
apps Dashboard migration: v14 Broken dash repro (#110405) 2025-09-01 16:19:14 +02:00
conf Auth: Support JWT configs `tls_client_ca` and `jwk_set_bearer_token_file` (#109095) 2025-08-26 09:50:06 -03:00
contribute Chore: Remove Bingo as Drone is removed (#110020) 2025-08-22 13:49:44 +02:00
cue.mod
devenv Table: Color text, color background, and apply to row can co-mingle (#109939) 2025-08-25 19:47:11 +00:00
docs Correlations: Add better handling to correlation type and update documentation (#109922) 2025-08-26 10:14:05 -05:00
e2e Revert: "Accessibility: Ensure dashboard edit panel inputs have accessible labels" (#109984) 2025-08-21 15:23:23 -04:00
e2e-playwright Table: Fields and Column Widths arrays can get out-of-sync on length (#109997) 2025-08-21 20:49:53 +00:00
emails Auth: Passwordless Login Option Using Magic Links (#95436) 2024-11-14 08:50:55 -05:00
grafana-mixin Log Details: Show embedded trace if available (#109926) 2025-08-25 14:06:01 +00:00
hack Go: Update to 1.24.6 (#109313) 2025-08-07 10:27:01 +02:00
kinds Chore: Remove public dashboard cue (#109940) 2025-08-21 13:58:36 +03:00
kindsv2 Chore: Remove Bingo as Drone is removed (#110020) 2025-08-22 13:49:44 +02:00
local
packages SSE/QuerySvc: (Chore) Remove expression parser code and feature toggle (#110117) 2025-08-26 13:21:24 +00:00
packaging feat: map GF_INSTALL_PLUGINS to use preinstall plugins feature (#105145) 2025-05-22 08:23:33 -04:00
pkg fix: enforce timeout for requests run in qos (#110162) 2025-08-26 18:40:22 +02:00
public I18n: Download translations from Crowdin (#110138) 2025-08-26 08:41:06 +00:00
scripts Chore: Update betterer issue template and add script for creating issues (#110036) 2025-08-22 12:36:05 +00:00
tools Alerting: Add alertmanager integration tests (#100106) 2025-02-13 11:36:45 +01:00
.air.toml Air: Keep binary after exiting (#109103) 2025-08-04 09:58:54 +02:00
.betterer.eslint.config.js Chore: Upgrade grafana eslint config and re-enable rule of hooks rules (#110029) 2025-08-22 15:38:02 +01:00
.betterer.results Chore: fix betterer issues (#110100) 2025-08-26 14:45:27 +02:00
.betterer.ts Accessibility: Add storybook a11y tests that run in CI (#108543) 2025-07-24 16:32:02 +01:00
.bra.toml Chore: Prevent `make run` from printing all environment variables (#101924) 2025-03-13 08:59:09 +01:00
.browserslistrc
.dockerignore
.editorconfig
.gitattributes
.gitignore Provisioning: Add Standalone Job Controller Without Job Processing (#109610) 2025-08-25 08:48:40 +00:00
.golangci.yml Secrets: Add v1beta1 schema with CUE + grafana-app-sdk (#107972) 2025-07-11 13:42:46 +02:00
.ignore Remove support for Google Spanner database. (#105846) 2025-05-23 11:35:59 +02:00
.levignore.js Adds levitate levignore configuration file to prevent breaking change notifications from expected typescript symbols (#74371) 2023-09-05 15:00:13 +02:00
.nvmrc Chore: Bump node to v22.16.0 (#106758) 2025-06-16 17:29:07 +02:00
.nxignore Alerting/Chore: Mock API (MSW) in browser (#89223) 2024-09-04 10:22:03 +01:00
.prettierignore Devenv: Replace testdata UIDs with gdev-testdata (#108997) 2025-08-04 11:20:12 +01:00
.prettierrc.js
.trivyignore CI: Add Trivy GitHub Action (#88987) 2024-06-10 16:53:48 -04:00
.vale.ini Lint only Markdown files (#101533) 2025-03-04 11:00:35 +00:00
.yarnrc.yml Update Yarn to v4.9.2 (#107104) 2025-06-24 14:47:42 +01:00
CHANGELOG.md Release: update changelog for main (#109556) 2025-08-13 18:09:42 +00:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md lint CONTRIBUTING.md (#107923) 2025-07-09 18:31:14 +00:00
Dockerfile Preferences: Add module to Go workspace (#110148) 2025-08-26 13:30:15 +02:00
GOVERNANCE.md Update dependency prettier to v3.6.2 (#108689) 2025-07-25 17:47:44 +01:00
HALL_OF_FAME.md Update HALL_OF_FAME.md (#102267) 2025-03-17 08:25:02 +01:00
LICENSE
LICENSING.md Actions: Introduce actionlint (#105224) 2025-05-13 08:23:59 +02:00
MAINTAINERS.md Adds johnny as codeowner for alerting docs (#99877) 2025-02-04 13:10:57 +01:00
Makefile CI: Run gofmt on Linting action (#110159) 2025-08-26 16:14:03 +02:00
NOTICE.md
README.md Added missing period for consistency and readability (#99549) 2025-01-27 05:20:24 -05:00
ROADMAP.md
SECURITY.md Updates SECURITY.md to align with current security & bug bounty guidance (#105572) 2025-05-16 17:19:09 -04:00
SUPPORT.md
WORKFLOW.md Minor correction done in WORKFLOW.md (#80505) 2024-04-12 17:56:10 +02:00
build.go K8s: Update from v0.31.3 to v0.32.0 (#98507) 2025-01-06 18:20:35 +03:00
crowdin.yml Internationalisation: Mark up `@grafana/prometheus` package (#105861) 2025-06-12 11:29:33 +01:00
cypress.config.js e2e: improves flakiness and speed (#103533) 2025-04-16 05:21:06 +01:00
embed.go Core: Remove thema and kindsys dependencies (#84499) 2024-03-21 11:11:29 +01:00
eslint.config.js Chore: Upgrade grafana eslint config and re-enable rule of hooks rules (#110029) 2025-08-22 15:38:02 +01:00
go.mod Dashboards: Make conversion data optional (#109965) 2025-08-25 13:47:42 +03:00
go.sum Dashboards: Make conversion data optional (#109965) 2025-08-25 13:47:42 +03:00
go.work Preferences: Add module to Go workspace (#110148) 2025-08-26 13:30:15 +02:00
go.work.sum Dashboards: Make conversion data optional (#109965) 2025-08-25 13:47:42 +03:00
jest.config.js Accessibility: Make either `tooltip` or `aria-label` required when no button children present (#109131) 2025-08-05 12:04:35 +01:00
latest.json Release: Deprecate latest.json and replace with api call to grafana.com (#80537) 2024-01-16 11:19:32 +00:00
lefthook.rc Chore: Fix lefthook not running (#106196) 2025-05-29 11:06:33 +02:00
lefthook.yml Lefthook: ensure we're adding the results file in betterer precommit (#103398) 2025-04-04 11:29:28 +01:00
lerna.json Chore: bump version to 12.2.0-pre (#108623) 2025-07-24 21:25:26 -05:00
nx.json Chore: Disable tui for Nx (#109896) 2025-08-20 10:08:03 +00:00
package.json Update scenes to v6.30.4 canary and document profile isolation (#110112) 2025-08-25 20:53:50 +02:00
playwright.config.ts E2E: Add performance monitoring E2E test (#109417) 2025-08-20 19:36:54 +00:00
playwright.storybook.config.ts E2E: migrate to playwright (#107241) 2025-07-11 10:31:33 +01:00
project.json Build: Adds option to build debug frontend docker images (#108202) 2025-08-19 14:22:59 -04:00
relyance.yaml Add Relyance github action (#107012) 2025-07-11 08:44:47 +02:00
stylelint.config.js Update dependency stylelint to v16 (#83252) 2024-02-23 11:56:38 +02:00
tsconfig.json Chore: Remove @grafana/tsconfig (#109186) 2025-08-06 15:34:34 +01:00
yarn.lock Dependencies(js): Update sha.js to 2.4.12 (#110153) 2025-08-26 16:42:48 +02:00

README.md

Grafana Logo (Light) Grafana Logo (Dark)

The open-source platform for monitoring and observability

License Drone Go Report Card

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:

Get involved

This project is tested with BrowserStack.

License

Grafana is distributed under AGPL-3.0-only. For Apache-2.0 exceptions, see LICENSING.md.