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.
Go to file
Matias Chomicki ff926c5ac5
Logs Panel: Base elements for the new visualization (#99084)
* Create base components

* Create measurement service

* Add container for list

* Use measurement to render virtualized log lines

* Match rendered styles in 2d context for measuring

* Improve virtualization initialization and handle resize

* Introduce log line processing

* Virtualization: fix measurement of lines with line endings

* Virtualization: include scrollbar width in calculation

* Remove logs

* Virtualization: optimize text measurement

* Add support for forceEscape

* Log line: properly style wrapped/unwrapped lines

* Virtualization: handle possible overflows

* Improve overflow handling

* LogList: remove scroll position ref

* Remove logs

* Remove log

* Add top/bottom navigation buttons

* Add timestamp to pre-processing

* Add showtime support

* Fix imports

* Chore: simplify dedup

* Show level

* Refactor measurement and measure level and timestamp

* Virtualization: skip unnecessary measurements

* Improve measurements to minimize overflow chance

* Introduce logline colors

* Update palette

* Remove pretiffying

* Add comment

* Remove unused variable

* Add color for info level

* Fix dependencies

* Refactor overflow to account for smaller estimations

* Debounce resizing

* Fix imports

* Further optimize height calculation

* Remove outline

* Unused import

* Use less under/overflow method

* Respond to height changes

* Refactor size adjustment to account for layout changes

* Add Logs Panel support

* Add margin bottom to log lines

* Remove unused option

* LogList: container div should never be null

Bad API design

* Log List: make app not undefined and update containerElement usages

* New Logs Panel: Create as new visualization (#99427)

* Logs Panel: clean up old panel

* Logs Panel New: create as new visualization

* Plugin: mark as alpha

* Logs panel new: hold container in a state variable

* Logs panel: fix no data state

* Create newLogsPanel feature flag

* Logs: use new feature flag

* Prettier

* Add new panel to code owners

* Logs Navigation: add translations

* Address betterer issues

* Fix import

* Extract translations

* Update virtualization.ts

* Virtualization: add DOM fallback for text measurement

* Run gen-cue

* plugins_integration_test: add logs-new to expected plugins
2025-02-04 18:40:17 +01:00
.bingo Use cog as a cli tool to generate code for kinds v2 schemas (#99044) 2025-01-16 13:18:47 +01:00
.changelog-archive Chore: Archive v8,9, and 10 CHANGELOG content (#97448) 2024-12-05 16:09:38 -07:00
.github Logs Panel: Base elements for the new visualization (#99084) 2025-02-04 18:40:17 +01:00
.husky Chore: Remove colours from old husky cleanup pre-commit hook (#73395) 2023-08-18 13:10:18 +00:00
.vim Chore: Upgrade yarn and editor sdks (#42847) 2021-12-08 14:40:24 +01:00
.vscode Chore: Add vscode ESLint debug target (#98277) 2025-01-24 09:34:32 +00:00
.yarn Update Yarn to v4.6.0 (#98562) 2025-01-07 09:47:36 +00:00
apps Grafana Advisor: Automatically generate frontend types (#99807) 2025-02-03 11:45:17 +01:00
conf Live: make maximum WebSocket message size configurable (#99770) 2025-01-30 10:24:29 +00:00
contribute Docs: Clarify dependency management (#97928) 2024-12-13 14:19:38 +01:00
cue.mod Introduce "scuemata" system for CUE-based specification of Grafana objects (#32527) 2021-04-08 01:11:11 -07:00
devenv Tempo: Fix devenv (#99750) 2025-02-03 15:14:41 +01:00
docs Logs Panel: Base elements for the new visualization (#99084) 2025-02-04 18:40:17 +01:00
e2e Chore: Manually update versions and update grafana-test-datasource to "workspace:*" (#99999) 2025-02-03 15:12:05 -07:00
emails Auth: Passwordless Login Option Using Magic Links (#95436) 2024-11-14 08:50:55 -05:00
grafana-mixin DashboardSchema: Remove old unused legacy props style and timepicker.enable (#73879) 2023-08-28 12:18:17 +02:00
hack K8s: Update from v0.31.3 to v0.32.0 (#98507) 2025-01-06 18:20:35 +03:00
kinds Dashboards: Allow custom quick time ranges specified in dashboard model (#93724) 2025-02-04 14:36:28 +00:00
kindsv2 Use cog as a cli tool to generate code for kinds v2 schemas (#99044) 2025-01-16 13:18:47 +01:00
local Packaging: Dockerfile copy local folder (#64766) 2023-03-14 14:44:11 -05:00
packages Logs Panel: Base elements for the new visualization (#99084) 2025-02-04 18:40:17 +01:00
packaging Packaging: Remove sysvinit references / support from rhel packaging (#97068) 2024-12-02 13:32:21 -06:00
pkg Logs Panel: Base elements for the new visualization (#99084) 2025-02-04 18:40:17 +01:00
public Logs Panel: Base elements for the new visualization (#99084) 2025-02-04 18:40:17 +01:00
scripts API client generation: Add verify-api-clients step to drone (#99987) 2025-02-04 09:13:44 +00:00
tools Image Rendering: Remove PhantomJS support (#23460) 2020-04-15 22:17:41 +02:00
.betterer.eslint.config.js Chore: Prevent direct path imports from workspace grafana packages (#98940) 2025-01-15 15:47:44 +02:00
.betterer.results Logs Panel: Base elements for the new visualization (#99084) 2025-02-04 18:40:17 +01:00
.betterer.ts Chore: Sort eslint betterer results by name (#98208) 2025-01-07 14:56:12 +00:00
.bra.toml Playlists: convert to use reconcilers instead (#98075) 2024-12-19 19:09:31 -08:00
.browserslistrc Babel: Target more modern browsers, updates browserlistrc (#32573) 2021-04-01 10:32:00 +02:00
.dockerignore copy .github folder into golang build container since we rely on codeowners (#62122) 2023-01-25 10:31:16 -05:00
.drone.star CI: Remove drone steps for building windows because it's done in grafana-… (#95373) 2024-10-24 17:04:25 -05:00
.drone.yml API client generation: Add verify-api-clients step to drone (#99987) 2025-02-04 09:13:44 +00:00
.editorconfig Chore: Enable PR testing in Drone (#26189) 2020-07-10 16:09:21 +02:00
.gitattributes CRLF (#28822) 2020-11-05 17:20:40 +01:00
.gitignore Dashboards: Monitor dashboard loading performance (#99629) 2025-01-28 18:36:10 +01:00
.golangci.yml feat: Add investigations app backend (#98084) 2024-12-18 10:31:03 +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: Update to node 22 (#97779) 2024-12-12 16:39:52 +00:00
.nxignore Alerting/Chore: Mock API (MSW) in browser (#89223) 2024-09-04 10:22:03 +01:00
.pa11yci-pr.conf.js Pa11y: Decrease error thresholds for PRs (#85178) 2024-03-27 12:29:54 +01:00
.pa11yci.conf.js Login: Improve accessibility of Login form (#78652) 2023-11-28 10:22:20 +00:00
.prettierignore Alerting/Chore: Mock API (MSW) in browser (#89223) 2024-09-04 10:22:03 +01:00
.prettierrc.js Toolkit: Remove deprecated plugin:build (#67485) 2023-04-28 14:33:16 +02:00
.trivyignore CI: Add Trivy GitHub Action (#88987) 2024-06-10 16:53:48 -04:00
.vale.ini Ignore spelling errors in bold formatting (#99006) 2025-01-15 15:08:20 +00:00
.yarnrc.yml Chore: Replace rc-time-picker with rc-picker (#99022) 2025-01-16 15:58:02 +00:00
build.go K8s: Update from v0.31.3 to v0.32.0 (#98507) 2025-01-06 18:20:35 +03:00
CHANGELOG.md Release: update changelog for 11.5.1 (#99956) 2025-02-03 11:15:22 +00:00
CODE_OF_CONDUCT.md Fixing typos (#70487) 2023-06-22 09:43:38 +01:00
CONTRIBUTING.md Docs: Fix link to developing plugins (#75816) 2023-10-03 09:57:53 -05:00
crowdin.yml I18n: Fix path for Crowdin upload (#81733) 2024-02-05 13:33:37 +01:00
cypress.config.js E2E: Add SMTP tester (#88392) 2024-06-18 14:32:19 +02:00
Dockerfile Docker: Use our own glibc 2.40 binaries (#99903) 2025-01-31 12:37:20 -05:00
embed.go Core: Remove thema and kindsys dependencies (#84499) 2024-03-21 11:11:29 +01:00
eslint.config.js Chore: add lint rule prevent t import from i18next (#99761) 2025-01-29 15:46:13 +00:00
go.mod Auth: Update authlib (#100041) 2025-02-04 14:36:48 +01:00
go.sum Auth: Update authlib (#100041) 2025-02-04 14:36:48 +01:00
go.work Grafana Advisor: Skeleton app (#99242) 2025-01-21 12:31:33 +01:00
go.work.sum Upgrade grafana-app-sdk to 0.31.0 (#99739) 2025-01-30 16:10:42 +02:00
GOVERNANCE.md Сorrection of spelling errors (#83565) 2024-03-01 11:00:15 +01:00
HALL_OF_FAME.md Add Gio to hall of fame (#97326) 2024-12-03 10:25:35 +01:00
jest.config.js Explore Metrics: Introduce augurs sorting options in breakdown view (#91189) 2024-11-05 08:34:09 +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: Replace Husky/Lint-staged with Lefthook (#66608) 2023-08-17 09:56:52 +00:00
lefthook.yml Chore: Remove i18n psuedo precommit hook (#86840) 2024-04-24 13:08:19 +02:00
lerna.json Chore: Manually update versions and update grafana-test-datasource to "workspace:*" (#99999) 2025-02-03 15:12:05 -07:00
LICENSE Re-license Grafana to AGPLv3 (#33184) 2021-04-20 19:03:30 +02:00
LICENSING.md Grafana packages: Remove E2E workspace (#86416) 2024-04-25 07:12:43 +02:00
MAINTAINERS.md Adds johnny as codeowner for alerting docs (#99877) 2025-02-04 13:10:57 +01:00
Makefile Alerting: Add compressed protobuf-based alert state storage (#99193) 2025-01-27 18:47:33 +01:00
NOTICE.md Prettier: Fix all markdown files and add markdown files to CI verify step (#39776) 2021-09-29 14:34:40 +02:00
nx.json Build: Nx improvements (#88341) 2024-10-15 14:25:45 +02:00
package.json Bump Scenes to 5.41.2 (#100036) 2025-02-04 13:18:37 +02:00
playwright.config.ts Add E2E smoke tests for Jaeger, PostgreSQL, Zipkin (#99515) 2025-01-24 20:21:41 +01:00
project.json Build: Nx improvements (#88341) 2024-10-15 14:25:45 +02:00
README.md Added missing period for consistency and readability (#99549) 2025-01-27 05:20:24 -05:00
ROADMAP.md Prettier: Fix all markdown files and add markdown files to CI verify step (#39776) 2021-09-29 14:34:40 +02:00
SECURITY.md Docs: Update SECURITY.md (#67985) 2023-06-21 07:34:42 +01:00
stylelint.config.js Update dependency stylelint to v16 (#83252) 2024-02-23 11:56:38 +02:00
SUPPORT.md Prettier: Fix all markdown files and add markdown files to CI verify step (#39776) 2021-09-29 14:34:40 +02:00
tsconfig.json Chore: Fix yarn generate-apis command (#97639) 2024-12-09 15:32:01 +02:00
WORKFLOW.md Minor correction done in WORKFLOW.md (#80505) 2024-04-12 17:56:10 +02:00
yarn.lock Bump Scenes to 5.41.2 (#100036) 2025-02-04 13:18:37 +02:00

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.