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
Gareth Dawson 4e42f9b619
Loki: Add the ability to prettify logql queries (#64337)
* pushed to get help of a genius

* fix: error response is not json

* feat: make request on click

* refactor: remove print statement

* refactor: remove unnecessary code

* feat: convert grafana variables to value for API request

* use the parser to interpolate and recover the original query (#64591)

* Prettify query: use the parser to interpolate and recover the original query

* Fix typo

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* Fix typo

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>

* fix: reverse transformation not working

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Gareth Dawson <gwdawson.work@gmail.com>

* fix: bugs created from merge

* refactor: move prettify code out of monaco editor

* fix: variables with the same value get converted back to the incorect variable

* refactor

* use consistent styling with bigquery

* fix: only allow text/plain and application/json

* fix: only make the request if the query is valid

* endpoint now returns application/json

* prettify from js

* WIP: not all cases are handles, code still needs cleaning up

* WIP

* large refactor, finished support for all pipeline expressions

* add tests for all format functions

* idk why these files changed

* add support for range aggregation expr & refactor

* add support for vector aggregation expressions

* add support for bin op expression

* add support for literal and vector expressions

* add tests and fix some bugs

* add support for distinct and decolorize

* feat: update variable replace and return

* fix: lezer throws an errow when using a range variable

* remove api implementation

* remove api implementation

* remove type assertions

* add feature flag

* update naming

* fix: bug incorrectly formatting unwrap with labelfilter

* support label replace expr

* remove duplicate code (after migration)

* add more tests

* validate query before formatting

* move tests to lezer repo

* add feature tracking

* populate feature tracking with some data

* upgrade lezer version to 0.1.7

* bump lezer to 0.1.8

* add tests

---------

Co-authored-by: Matias Chomicki <matyax@gmail.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2023-07-21 13:03:56 +01:00
.bingo Chore: Update golangci-lint to v1.53.3 (#71771) 2023-07-18 10:03:35 +02:00
.changelog-archive Docs: Add missing entries to changelog for 9.4.9 (#70741) 2023-06-27 14:32:35 +03:00
.github CI: Add GitHub workflow to schedule a PR with changes to Alerting Swagger spec (#71794) 2023-07-20 22:31:20 +03:00
.husky Chore: do not run husky hooks on backend-only changes (#48439) 2022-04-29 14:01:02 +01:00
.vim Chore: Upgrade yarn and editor sdks (#42847) 2021-12-08 14:40:24 +01:00
.vscode Add debug option for Golang tests in vscode (#61983) 2023-01-24 14:44:44 +01:00
.yarn Chore: Update prettier yarn sdk (#71915) 2023-07-19 16:15:31 +03:00
conf Config: Add [aws][external_id] to ini files (#72026) 2023-07-20 10:37:41 -04:00
contribute Chore: Add auto-milestone workflow for pull-requests (#71177) 2023-07-17 09:55:35 +02:00
cue.mod Introduce "scuemata" system for CUE-based specification of Grafana objects (#32527) 2021-04-08 01:11:11 -07:00
devenv Chore: Bump devenv postgres blocks version to 11.20 (#71921) 2023-07-19 15:32:41 +02:00
docs Loki: Add the ability to prettify logql queries (#64337) 2023-07-21 13:03:56 +01:00
e2e Chore: Upgrade prettier to v3 (#71764) 2023-07-17 15:58:22 +01:00
emails Show the alertname for each alert in plain text email (#70183) 2023-06-16 10:06:43 -04:00
grafana-mixin grafana-mixin: Fix expression for GrafanaRequestsFailing alert (#63382) 2023-05-04 14:35:36 +02:00
kinds Schemas: Allow nulls in schema for +/-Infinity types (#70958) 2023-06-30 18:15:02 +03:00
local Packaging: Dockerfile copy local folder (#64766) 2023-03-14 14:44:11 -05:00
packages Loki: Add the ability to prettify logql queries (#64337) 2023-07-21 13:03:56 +01:00
packaging Build: Update plugin installation in custom Dockerfile (#68310) 2023-05-11 16:03:02 -04:00
pkg Loki: Add the ability to prettify logql queries (#64337) 2023-07-21 13:03:56 +01:00
plugins-bundled Release: Bump version to 10.1.0-pre (#67613) 2023-05-02 09:48:59 +03:00
public Loki: Add the ability to prettify logql queries (#64337) 2023-07-21 13:03:56 +01:00
scripts Kindsys: update generated doc and add check in CI (#71871) 2023-07-20 11:48:12 +02:00
tools Image Rendering: Remove PhantomJS support (#23460) 2020-04-15 22:17:41 +02:00
.betterer.results Chore: fix .eslintignore to only ignore folder paths at the root (#72032) 2023-07-21 09:17:42 +01:00
.betterer.ts Update dependency glob to v10 (#71554) 2023-07-13 17:07:10 +03:00
.bra.toml Chore: Remove redundant codegen step from .bra.tom (#62764) 2023-02-02 14:53:54 +01: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 [WIP] CI: Removes enterprise specific pipelines and steps (#70815) 2023-07-14 14:18:09 +03:00
.drone.yml Kindsys: update generated doc and add check in CI (#71871) 2023-07-20 11:48:12 +02:00
.editorconfig Chore: Enable PR testing in Drone (#26189) 2020-07-10 16:09:21 +02:00
.eslintignore Chore: fix .eslintignore to only ignore folder paths at the root (#72032) 2023-07-21 09:17:42 +01:00
.eslintrc Chore: Avoid Grafana core imports for the test data source (#71956) 2023-07-20 09:34:19 +02:00
.gitattributes CRLF (#28822) 2020-11-05 17:20:40 +01:00
.gitignore CI: Ignore .pr-body.txt file (#70798) 2023-06-28 12:12:25 +03:00
.golangci.toml Chore: Add linter rule to avoid imports from Grafana core in test datasource (#71779) 2023-07-18 15:57:31 +02:00
.linguirc I18n: Change locale format to IETF language tag (#52596) 2022-07-22 10:50:00 -04:00
.nvmrc Chore: Move to node 18 again (#62079) 2023-01-26 10:19:39 +00:00
.pa11yci-pr.conf.js Login: Show additional information when prompting to change password (#69537) 2023-06-06 11:24:46 +01:00
.pa11yci.conf.js A11y: Add Dashboard Settings to Pa11y CI and Refactor local a11y report (#54476) 2022-09-12 15:14:45 +02:00
.prettierignore Swagger: Fix circular reference (#62673) 2023-02-02 13:18:04 +02:00
.prettierrc.js Toolkit: Remove deprecated plugin:build (#67485) 2023-04-28 14:33:16 +02:00
.yarnrc.yml Update Yarn to v3.6.0 (#69437) 2023-06-05 10:43:09 +01:00
babel.config.json Revert: Babel removal and runtime update (#63641) 2023-02-23 09:22:35 -05:00
build.go Chore: move build command to importable package (#38726) 2021-09-03 11:24:21 -05:00
CHANGELOG.md Changelog: Updated changelog for 9.5.6 (#71342) 2023-07-11 12:48:05 +02:00
CODE_OF_CONDUCT.md Fixing typos (#70487) 2023-06-22 09:43:38 +01:00
CONTRIBUTING.md Docs: Correct contributing.md i18n message (#66103) 2023-04-06 18:42:40 +02:00
crowdin.yml I18n: Update crowdin config and codeowners (#57264) 2022-10-20 14:59:02 +01:00
Dockerfile Chore: Upgrade Go to 1.20.6 (#71440) 2023-07-12 15:32:40 +02:00
embed.go extract kindsys to external library (#64562) 2023-03-15 12:04:28 -04:00
go.mod Update logrus to v1.9.3 (#71571) 2023-07-21 09:37:20 +02:00
go.sum Update logrus to v1.9.3 (#71571) 2023-07-21 09:37:20 +02:00
GOVERNANCE.md Governance: Update workplace (#63997) 2023-04-03 13:54:54 +02:00
HALL_OF_FAME.md Chore: Introducing a Grafana HALL_OF_FAME.md (#45878) 2022-05-18 20:13:11 +00:00
ISSUE_TRIAGE.md ISSUE_TRIAGE.md: update (#60299) 2023-01-19 18:21:36 +01:00
jest.config.js Update dependency sinon to v15.2.0 (#71431) 2023-07-12 16:20:46 +03:00
latest.json Chore: update latest.json to 10.0.1 (#70550) 2023-06-22 16:44:43 -03:00
lerna.json Improve empty state when no ds picker were found (#67422) 2023-05-04 13:17:03 +03:00
LICENSE Re-license Grafana to AGPLv3 (#33184) 2021-04-20 19:03:30 +02:00
LICENSING.md Explore: Refactor trace view and move to core (#61938) 2023-01-27 14:13:17 +00:00
MAINTAINERS.md Add Docs maintainers (#51287) 2022-06-22 13:10:30 -07:00
Makefile Chore: Upgrade Go to 1.20.6 (#71440) 2023-07-12 15:32:40 +02:00
metadata.md Docs: Document plugin authentication in metadata schema (#32703) 2021-04-08 18:13:18 +02: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
package.json Loki: Add the ability to prettify logql queries (#64337) 2023-07-21 13:03:56 +01:00
README.md Docs: Add tested with BrowserStack to README (#70512) 2023-06-22 14:13:50 +02: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-config-sass-guidelines to v10 (#71632) 2023-07-19 16:05:06 +01: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 Bump scenes to 0.17.2 (#70893) 2023-07-05 07:24:48 -07:00
UPGRADING_DEPENDENCIES.md Bump publish docs node version (#46475) 2022-03-11 21:28:12 +01:00
WORKFLOW.md Prettier: Fix all markdown files and add markdown files to CI verify step (#39776) 2021-09-29 14:34:40 +02:00
yarn.lock Loki: Add the ability to prettify logql queries (#64337) 2023-07-21 13:03:56 +01:00

Grafana

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.