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
Pete Davids 65940c7726
Dashboard: Allow shortlink generation (#27409)
* intial frontend resolution/redirection logic

* backend scaffolding

* enough of the frontend to actually test end to end

* bugfixes

* add tests

* cleanup

* explore too hard for now

* fix build

* Docs: add docs

* FE test

* redirect directly from backend

* validate incoming uids

* add last_seen_at

* format documentation

* more documentation feedback

* very shaky migration of get route to middleware

* persist unix timestamps

* add id, orgId to table

* fixes for orgId scoping

* whoops forgot the middleware

* only redirect to absolute URLs under the AppUrl domain

* move lookup route to /goto/:uid, stop manually setting 404 response code

* renaming things according to PR feedback

* tricky deletion

* sneaky readd

* fix test

* more BE renaming

* FE updates -- no more @ts-ignore hacking :) and accounting for subpath

* Simplify code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Short URLs: Drop usage of bus

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* ShortURLService: Make injectable

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Rename file

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Add handling of url parsing and creating of full shortURL to backend

* Update test, remove unused imports

* Update pkg/api/short_urls.go

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Add correct import

* Pass context to short url service

* Remove not needed error log

* Rename dto and field to denote URL rather than path

* Update api docs based on feedback/suggestion

* Rename files to singular

* Revert to send relative path to backend

* Fixes after review

* Return dto when creating short URL that includes the full url

Use full url to provide shorten URL to the user

* Fix after review

* Fix relative url path when creating new short url

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Ivana <ivana.huckova@gmail.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-10-14 12:48:48 +02:00
.circleci Drone: Add release pipelines (#28083) 2020-10-07 14:22:15 +02:00
.github Automation: New label command to close issue that has no new info & activity (#28201) 2020-10-13 12:48:43 +02:00
conf Users: Expire old user invites (#27361) 2020-10-13 12:30:09 +02:00
contribute Update documentation-style-guide.md (#28038) 2020-10-05 15:57:49 -04:00
devenv Fix typos (#28074) 2020-10-07 11:29:30 +01:00
docs Dashboard: Allow shortlink generation (#27409) 2020-10-14 12:48:48 +02:00
e2e Migration: TestData Query Editor (#27997) 2020-10-14 13:08:35 +03:00
emails Chore: MEGA - Make Eslint Great Again 💅 (#26094) 2020-08-11 17:52:44 +02:00
packages Migration: TestData Query Editor (#27997) 2020-10-14 13:08:35 +03:00
packaging Docs: Refactor inconsistent unordered lists (#27826) 2020-10-02 11:02:11 -07:00
pkg Dashboard: Allow shortlink generation (#27409) 2020-10-14 12:48:48 +02:00
plugins-bundled Chore: bumped to next version 7.3.0-pre (#27476) 2020-09-09 15:43:37 +02:00
public Dashboard: Allow shortlink generation (#27409) 2020-10-14 12:48:48 +02:00
scripts Chore: Add Dockerfile for Windows CI build environment (#28241) 2020-10-14 11:22:12 +02:00
tools Image Rendering: Remove PhantomJS support (#23460) 2020-04-15 22:17:41 +02:00
.babelrc Performance/Webpack: Introduces more aggressive code-splitting and other perf improvements (#18544) 2019-09-03 09:29:02 +01:00
.bra.toml Chore: Upgrade to Go 1.14 (#23371) 2020-04-08 14:13:05 +02:00
.browserslistrc Fix: Autoprefixer is now working (#16351) 2019-04-02 18:15:30 +02:00
.dockerignore remove duplicated /tmp entry in .dockerignore 2018-08-09 09:10:53 +02:00
.drone.star Drone: Add release pipelines (#28083) 2020-10-07 14:22:15 +02:00
.drone.yml Drone: Fix test-release pipeline (#28108) 2020-10-08 13:28:20 +02:00
.editorconfig Chore: Enable PR testing in Drone (#26189) 2020-07-10 16:09:21 +02:00
.eslintignore Chore: eslint plugin react hooks fix in jeager (#27580) 2020-09-24 14:41:57 +02:00
.eslintrc Fix errors in grafana-ui's storybook files (#28004) 2020-10-03 11:53:01 +02:00
.gitignore Chore: MEGA - Make Eslint Great Again 💅 (#26094) 2020-08-11 17:52:44 +02:00
.prettierignore Migration: TestData Query Editor (#27997) 2020-10-14 13:08:35 +03:00
.prettierrc.js Prettier: Add prettier config that imports prettier from toolkit (#23729) 2020-04-21 17:23:49 +02:00
api-extractor.json Docs: added code comments for everything in the @grafana/runtime package. (#23456) 2020-04-15 10:46:51 +02:00
build.go Build: Let building of Go code work even if $GOPATH isn't set (#25805) 2020-06-25 08:38:17 +02:00
CHANGELOG.md CloudWatch: Re-implement authentication (#25548) 2020-10-12 17:58:58 +02:00
CODE_OF_CONDUCT.md Docs: Refactor inconsistent unordered lists (#27826) 2020-10-02 11:02:11 -07:00
CONTRIBUTING.md Update CONTRIBUTING.md (#27344) 2020-09-17 08:18:05 -07:00
Dockerfile Chore: Upgrade Node to 12.19.0 (#28168) 2020-10-12 07:10:50 +02:00
Dockerfile.ubuntu Chore: Upgrade Node to 12.19.0 (#28168) 2020-10-12 07:10:50 +02:00
go.mod CloudWatch: Re-implement authentication (#25548) 2020-10-12 17:58:58 +02:00
go.sum backend: use latest sdk (#28147) 2020-10-09 12:05:11 -04:00
GOVERNANCE.md Add Alex Khomenko as member (#28032) 2020-10-05 15:08:16 +03:00
Gruntfile.js Chore: MEGA - Make Eslint Great Again 💅 (#26094) 2020-08-11 17:52:44 +02:00
ISSUE_TRIAGE.md Docs: Update issue triage doc with new automation behaviors (#28181) 2020-10-12 10:09:52 +02:00
jest.config.js Include IANA timezone canonical name in TimeZoneInfo (#27591) 2020-09-17 08:59:20 +02:00
latest.json Chore: Update latest.json for 7.2.1 (#28117) 2020-10-08 16:41:26 +03:00
lerna.json Chore: bumped to next version 7.3.0-pre (#27476) 2020-09-09 15:43:37 +02:00
LICENSE Small license correction 2019-03-21 16:36:24 +01:00
MAINTAINERS.md Docs: Refactor inconsistent unordered lists (#27826) 2020-10-02 11:02:11 -07:00
Makefile Proposal to include a tidy check (#27204) 2020-09-21 10:00:44 +02:00
NOTICE.md Update NOTICE.md 2018-08-09 10:51:04 +02:00
package.json @grafana/eslint-config bump (#28230) 2020-10-13 12:45:22 -04:00
PLUGIN_DEV.md Update PLUGIN_DEV.md (#19387) 2019-09-26 12:40:47 +02:00
README.md Docs: Remove GrafanaCONline info from readme (#25655) 2020-06-17 12:57:40 +02:00
ROADMAP.md Update ROADMAP.md (#19384) 2019-09-25 07:18:35 +02:00
SECURITY.md Docs: Fix broken link (#25664) 2020-06-18 14:08:26 +02:00
SUPPORT.md Update SUPPORT.md (#19383) 2019-09-25 07:17:01 +02:00
tsconfig.json Chore: Fix all Typescript strict null errors (#26204) 2020-07-10 12:46:59 +02:00
UPGRADING_DEPENDENCIES.md Docs: Fix note format for documentation (#27940) 2020-09-30 12:45:07 -07:00
WORKFLOW.md Docs: Refactor inconsistent unordered lists (#27826) 2020-10-02 11:02:11 -07:00
yarn.lock @grafana/eslint-config bump (#28230) 2020-10-13 12:45:22 -04:00

Grafana

The open-source platform for monitoring and observability.

License Circle CI 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:

  • Visualize: Fast and flexible client side graphs with a multitude of options. Panel plugins for many different way 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

License

Grafana is distributed under the Apache 2.0 License.