Compare commits

...

1685 Commits

Author SHA1 Message Date
Torkel Ödegaard
5723d951af Templating: Fix undefined error when using raw interpolation format (#26818)
* Templating: Fix error when using raw interpolation format

* bumped version
2020-08-06 10:44:32 +02:00
Torkel Ödegaard
b076394cd3 BackendSrv: Fix error alert logic (#26453)
(cherry picked from commit fba329f3ac)
2020-08-05 13:48:06 +02:00
Hugo Häggmark
dbb3750610 Release v7.1.2 2020-08-05 13:48:06 +02:00
Ivana Huckova
3e4c0bf8f8 Explore: Run queries when queries imported (#26704)
(cherry picked from commit 744e108b04)
2020-08-05 13:48:06 +02:00
Ryan McKinley
de815d4746 Fields: __field.name as field name and __field.displayName as displayName (#26531)
* name vs displayName

* name vs displayName

* add __values

* add docs for displayName expressions

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: kyle <kyle@grafana.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
(cherry picked from commit ec783fbff4)
2020-08-05 13:48:06 +02:00
Ryan McKinley
a4b7050609 Test datasource: fix query editor html partial (#26788)
(cherry picked from commit 9e5fe8dbdb)
2020-08-05 13:48:06 +02:00
Ivana Huckova
d9868dc2d1 Query history: Fix search filtering if null value (#26768)
* Fix filtering if null value

* Add test coverage

(cherry picked from commit 6a86e66d76)
2020-08-05 13:48:06 +02:00
Hugo Häggmark
7402337bd1 TimePicker: Fixes app crash when changing custom range to nothing (#26775)
(cherry picked from commit 353b3822c1)
2020-08-05 13:48:06 +02:00
Sofia Papagiannaki
5d3b150687 Cloud monitoring: do not create deep link if there are no timeseries (#26737)
(cherry picked from commit 41f7bccb24)
2020-08-05 13:48:06 +02:00
Paul Sneddon
d81f6e6925 Flux: Ensure connections to InflxuDB are closed (#26735)
* Flux: Ensure connections to InflxuDB are closed

(cherry picked from commit ec756f3729)
2020-08-05 13:48:06 +02:00
Leonard Gram
89e62f985d LDAP: users without org mappings are marked as disabled (#26650)
* LDAP: users without org mappings are marked as disabled

* Update pkg/services/ldap/ldap.go

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

* LDAP: verifies that unmapped users are tagged as isDisabled

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit c266f45858)
2020-08-05 13:48:06 +02:00
Torkel Ödegaard
94b53ecc08 Inspect: Fix link to error tab from panel header (#26682)
(cherry picked from commit eb0b9de044)
2020-08-05 13:48:06 +02:00
Torkel Ödegaard
c0fe700c01 TextPanel: Remove semicolon in markup (#26680)
(cherry picked from commit 3075b71848)
2020-08-05 13:48:06 +02:00
Torkel Ödegaard
2f276f97d3 Dashboard: Fixed disable draggable panels on correct breakpoint (#26636)
(cherry picked from commit ef223d4143)
2020-08-05 13:48:06 +02:00
Alex Khomenko
f7201c7be2 Grafana-UI: Reverse TimeRangeInput range pickers (#26652)
* Grafana-UI: Reverse TimeRangeInput range pickers

* Grafana-UI: Add comment

* Grafana-UI: Update snapshots

(cherry picked from commit 0b8ad9176d)
2020-08-05 13:48:06 +02:00
Torkel Ödegaard
44665ff9fc Templating: Fixed access to system variables like __dashboard, __user & __org during dashboard load & variable queries (#26637)
* Templating: Fixed access to system variables like __dashboard, __user & __org during dashboard load & variable queries

* Fixed tests

(cherry picked from commit 34c2f440db)
2020-08-05 13:48:06 +02:00
Levente Balogh
f7d5e4a8c5 fix(Toolkit/Plugin): throw an Error instead of a string (#26618)
(cherry picked from commit bdbea6d1f2)
2020-08-05 13:48:06 +02:00
Torkel Ödegaard
03b688ce0a StatPanel: Fix stat panel display name not showing when explicitly set (#26616)
* StatPanel: Fix stat panel display name now showing when explicitly set

* StatPanel: Updarted auto mode to also take panel title into consideration

* fixed test

(cherry picked from commit cbe1d7b08c)
2020-08-05 13:48:06 +02:00
Torkel Ödegaard
a89cd8ab7f TemplateSrv: Formatting options for ${__from} and ${__to}, unix seconds epoch, ISO 8601/RFC 3339 (#26466)
* TemplateSrv: WIP date formats

* Templating: formats with arguments

* WIP docs updates

* Docs: Updated docs

* fixed spelling

* Update docs/sources/variables/global-variables.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/variables/global-variables.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/variables/global-variables.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/variables/global-variables.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
(cherry picked from commit 6c49fdb57d)
2020-08-05 13:48:06 +02:00
Torkel Ödegaard
97debfdcce Dashbard: Fix refresh interval settings to allow setting it to equal min_refresh_intereval (#26615)
(cherry picked from commit e3ea725387)
2020-08-05 13:48:06 +02:00
Torkel Ödegaard
6f93a81be0 QueryOptions: Fix not being able to change cache timeout setting (#26614)
(cherry picked from commit cc0a8464ff)
2020-08-05 13:48:06 +02:00
Torkel Ödegaard
1a545a1826 TextPanel: Fix content overflow issue (#26612)
(cherry picked from commit ae3c285312)
2020-08-05 13:48:06 +02:00
tofurky
5274070e77 Units: Remove duplicate SI prefix from mSv and µSv (#26598)
(cherry picked from commit 9d68a1fa62)
2020-08-05 13:48:06 +02:00
Torkel Ödegaard
4996803e00 TimePicker: Fix position and responsive behavior (#26570)
* TimePicker: Fix position and responsive behavior

* Updated snapshots

(cherry picked from commit 93a4b8e8e4)
2020-08-05 13:48:06 +02:00
Alex Khomenko
825c4a5ce0 Grafana-UI: Pass timeZone to TimePickerButtonLabel (#26454)
(cherry picked from commit 9c3f47aa23)
2020-08-05 13:48:06 +02:00
Alex Khomenko
2248c282be Grafana-UI: Enable empty time range (#26320)
* Grafana-UI: Enable empty time range

* Grafana-UI: Add clearable prop

* Grafana-UI: Update types

* Grafana-UI: Use InputTimeRange type

* Grafana-UI: Remove InputTimeRange type

* Grafana-UI: Fix clear icon hover color

(cherry picked from commit 7b183971fd)
2020-08-05 13:48:06 +02:00
Alex Khomenko
5e3514749b Grafana-UI: Add time range input (#26158)
* Grafana UI: Do not submit form on range change

* Grafana UI: Add TimeRangeInput

* Grafana UI: Style input

* Grafana UI: Customize content

* Grafana UI: Adjust caret style

* Grafana UI: Add mdx

* Grafana UI: Fix caret styles

* Grafana UI: Fix typo

* Grafana UI: Do not reload page on timerange change

* Grafana UI: Sync TimeRangeForm state with external value

* Grafana UI: Close overlay on apply

* Grafana UI: Remove unused props

* Grafana UI: Fix story

* Grafana-UI: Make time zone optional

* Grafana-UI: Update styles

* Grafana-UI: Extract button label props

* Grafana-UI: hideHistory => showHistory

* Grafana-UI: Fix caret styles

(cherry picked from commit 718d6fb25d)
2020-08-05 13:48:06 +02:00
David
ae3fde6c7f Explore: Don't run queries on datasource change (#26033)
- more and more datasources are having long-running queries,
automatically triggering is becoming more of a burden than a help.
- some datasource queries might actually cost money, so running queries
should be explicit.

(cherry picked from commit 081f954a2b)
2020-08-05 13:48:06 +02:00
Leonard Gram
3039f9c3bd Release v7.1.1 2020-07-24 12:08:01 +02:00
Sofia Papagiannaki
ba5886d42c DashboardImport: Fix variable interpolation when property contains multiple variable expressions (#26574)
(cherry picked from commit 5e73a92327)
2020-07-24 12:08:01 +02:00
Sofia Papagiannaki
9c7776cd58 Alerting: Change settings column type to mediumtext (#26549)
* Alerting: Change settings column type to mediumtext

* Remove unnecessary newline

(cherry picked from commit ad4f8b7091)
2020-07-24 12:08:01 +02:00
Torkel Ödegaard
5b7d1c7fe1 Dashboard: Restore panel edit permission check, fixes 26555' (#26556)
(cherry picked from commit 1df4f71197)
2020-07-24 12:08:01 +02:00
Ryan McKinley
e44acff11c Graph: support setting field units (#26529)
(cherry picked from commit ad5f1c953b)
2020-07-24 12:08:01 +02:00
Ivana Huckova
758c47e13f Fix self cloosing bracket to display input (#26552)
(cherry picked from commit 44f0200a58)
2020-07-24 12:08:01 +02:00
Agnès Toulet
100819fe09 LDAP: fix LDAP test with special chars in username (#26539)
(cherry picked from commit 2e931a0ee1)
2020-07-24 12:08:01 +02:00
Yuriy Vidineev
cada7a4eb8 change the year in email templates (#26507)
(cherry picked from commit b12d08d9de)
2020-07-24 12:08:01 +02:00
Zoltán Bedi
2d2963561a Add errorIconColor prop to TraceSpanData (#26509)
(cherry picked from commit cd8049d8a3)
2020-07-24 12:08:01 +02:00
Zoltán Bedi
754597e116 Explore: parse queryType from explore url (#26349)
* Explore: parse queryType from explore url

* Modify explore.ts parse logic

(cherry picked from commit 7b218b7198)
2020-07-24 12:08:01 +02:00
Zoltán Bedi
58a23cd27d Jaeger: Add stack trace to span detail row (#26427)
* Add stack trace to span detail row

* Modify accordian text not to have a whitespace

* Modify stackTrace to stackTraces

* Modify AccordianText ti get text component as prop

* Fix typecheck and test failure

* Span details text area do not wrap line

(cherry picked from commit ba50e96544)
2020-07-24 12:08:01 +02:00
Torkel Ödegaard
7031793d06 Dashboard: Fix empty panels after scrolling on Safari/iOS (#26495)
(cherry picked from commit 7417ff015d)
2020-07-24 12:08:01 +02:00
Ivana Huckova
7c0c77cc1c Fix matrics comparison to know when to refresh (#26382)
(cherry picked from commit 85f3a999f3)
2020-07-24 12:08:01 +02:00
Kyle Brandt
3199365ead Azure: Insights metrics - do not sort if no data (#26486)
fixes #26473

(cherry picked from commit fb5ff6a70f)
2020-07-24 12:08:01 +02:00
Ryan McKinley
3570bd0cca Azure: convert azure units to grafana units (#26429)
(cherry picked from commit 5d09e4539c)
2020-07-24 12:08:01 +02:00
Zoltán Bedi
e353e42e96 Jaeger: upstream fix for hovering on log lines (#26426)
* Jaeger: upstream fix for hovering on log lines

* Modify active style to change border color only

(cherry picked from commit 43033ddf74)
2020-07-24 12:08:01 +02:00
Ben RUBSON
65c46c08d4 Branding: Use AppTitle as document title (#26425)
* Branding: Use AppTitle as document title

* Missing Branding include

(cherry picked from commit c65cef2327)
2020-07-24 12:08:01 +02:00
Dominik Prokop
534feb1e5e Bring back scripts evaluation in TextPanel (#26413)
(cherry picked from commit 718b78c4ce)
2020-07-24 12:08:01 +02:00
Ryan McKinley
8101355285 Influx: fix flux panic. cherry picks for #26329 (#26331)
* influx fix for 7.1.0

* don't upgrade sdk

* revert go mod changes
2020-07-16 13:04:17 +02:00
Dominik Prokop
226cba97e1 Release v7.1.0 2020-07-16 13:04:17 +02:00
Marcus Efraimsson
7d7f2d9262 Provisioning: Fix bug when provision app plugins using Enterprise edition (#26340)
In OSS provisioning service init after plugin registration, but in
Enterprise it's the opposite order and installed app plugin check
fails. This adjusts service registry init priority to make sure plugins
are registered before provisioning inits.

Which issue(s) this PR fixes:
Fixes #26336

(cherry picked from commit b97d1f4170)
2020-07-16 13:04:17 +02:00
Kyle Brandt
7ac9057f71 Azure: Insights Analytics, fix possible panics and return error body (#26361)
missing return statements can result in panic

(cherry picked from commit c980f37509)
2020-07-16 13:04:17 +02:00
Ivana Huckova
8673bd4974 Update bg color based on theme (#26359)
(cherry picked from commit 21971a4df8)
2020-07-16 13:04:17 +02:00
Sofia Papagiannaki
f870bea288 Cloud monitoring: Add query parameter (#26354)
(cherry picked from commit 9d8ae39108)
2020-07-16 13:04:17 +02:00
Kyle Brandt
1ab8109892 Azure: Handle real type nan/inf values in Log/Insights Analytics (#26342)
Before this, if the user were to divide by 0.0, "Infinity" would be returned in the result and the user would get an error: "unexpected type, expected json.Number but got string". Now these values are properly set as Inf values (and also made sure to handle NaN as well).

(cherry picked from commit 590702c497)
2020-07-16 13:04:17 +02:00
Ivana Huckova
3655752bae Elasticsearch: Create Raw Doc metric to render raw JSON docs in columns in the new table panel (#26233)
* test

* WIP: Create v2 version

* Update tests, remove conosole logs, refactor

* Remove incorrect types

* Update type

* Rename legacy and new metrics

* Update

* Run request when Raw Data tto Raw Document switch

* Fix size updating

* Remove _source field from table results as we are showing each source field as column

* Remove _source just for metrics, not logs

* Revert "Remove _source just for metrics, not logs"

This reverts commit 611b6922f7.

* Revert "Remove _source field from table results as we are showing each source field as column"

This reverts commit 31a9d5f81b.

* Add vis preference for logs

* Update visualisation to logs

* Revert "Revert "Remove _source just for metrics""

This reverts commit a102ab2894.

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
(cherry picked from commit 3fd810417f)
2020-07-16 13:04:17 +02:00
Ivana Huckova
d44da8786f Docs: Add derived field datasourceUid information (#26285)
* Add datasourceUid info

* Revert "Add datasourceUid info"

This reverts commit 84dce1dcfd.

* Add datasourceUid info

* Update docs/sources/features/datasources/loki.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update derived fields info

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
(cherry picked from commit 5b2ff4498e)
2020-07-16 13:04:17 +02:00
kay delaney
2df8fe30da Docs: Add info about logs/metrics unification to What's New docs (#26325)
* Docs: Add info about logs/metrics unification to What's New docs

* Apply suggestions from code review

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
(cherry picked from commit 1de810b26a)
2020-07-16 13:04:17 +02:00
Alex Khomenko
562e811179 Admin: Update org list after delete (#26277)
(cherry picked from commit 208f95a76c)
2020-07-16 13:04:17 +02:00
Dominik Prokop
2747607805 DashboardLinks: do not over-query search endpoint (#26311)
* DashboardLinks: WIP fix for dashboard links issue

* Make the dashboard links update on change(hacky)

* Replace dashboard links with new array when updating/adding dash links

* Update snaps

* Deep clone dashboard links on save

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
(cherry picked from commit 23e93175d1)
2020-07-16 13:04:17 +02:00
Andreas Opferkuch
10a9031b1b ThemeContext: Fix useStyles memoization (#26200)
(cherry picked from commit 72cd9a3222)
2020-07-16 13:04:17 +02:00
Dominik Prokop
a74d03b807 SignIn button - use correct url (#26239)
* SignIn button - use correct url

* Fix SignIn test (#26266)

* Don't use absolute URL

* post review

* Fix snap

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
(cherry picked from commit 187612ca8d)
2020-07-16 13:04:17 +02:00
kay delaney
e621f54fe3 CloudWatch Logs: Fixes grouping of results by numeric field (#26298)
* CloudWatch Logs: Fixes grouping of results by numeric field
Closes #25721

(cherry picked from commit 54ad5b869e)
2020-07-16 13:04:17 +02:00
Zoltán Bedi
05a0019fcb PluginsListPage: More plugins button should open in new window (#26305)
Fixes #24622

(cherry picked from commit 7bbfb57dd1)
2020-07-16 13:04:17 +02:00
Mitsuhiro Tanda
dfb2119afa Implicit import symbol-observable to avoid inconsistent symbol (#26288)
(cherry picked from commit 077aec465c)
2020-07-16 13:04:17 +02:00
Kyle Brandt
e931df8ab9 Docs: Flux support in influxdb data source in 7.1 (#25551)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
(cherry picked from commit d28b62740b)
2020-07-16 13:04:17 +02:00
Harrison Shoff
1e35109d3e AdminUsers: reset page to zero on query change (#26293)
(cherry picked from commit e63028e8c6)
2020-07-16 13:04:17 +02:00
Peter Holmberg
ee35db1b8b Fix: Make the JSON in JSONCell Tooltip more visible (#26048)
* add white background to tooltip component

* remove faulty background

* new theme for tooltip

* correct colors, remove custom box-shadow

* rename theme and add documentation

* use useStyles for style memo

(cherry picked from commit 7cdbae4ae6)
2020-07-16 13:04:17 +02:00
Zoltán Bedi
236ac5c394 Prometheus: Fix prom links in mixed mode (#26244)
* Prometheus: Fix prom links in mixed mode

* Modify PromLink with code style changes

(cherry picked from commit 0dd2bc8953)
2020-07-16 13:04:17 +02:00
Torkel Ödegaard
81014a717d BarGauge: Fixed width of unfilled region not being correct when value is close to 100% (#26193)
* BarGauge: Fixed width of unfilled region not being correct when value is close to 100%

* removed accidental change

* updated snapshot

(cherry picked from commit b1e48f429f)
2020-07-16 13:04:17 +02:00
Ivana Huckova
fab8bea6f7 Chore: Fix failing master due to strictNullCheck error (#26283)
* Fix typecheck error on master

* Fix typecheck error on master

(cherry picked from commit 95bf064776)
2020-07-16 13:04:17 +02:00
Ivana Huckova
ea469bf48f Jaeger/Zipkin: URL-encode service names and trace ids for API calls (#26115)
* Encode services and id

* Encode URL for Zipkin API calls

* Add test coverage

(cherry picked from commit 73468e1481)
2020-07-16 13:04:17 +02:00
Kamal Galrani
85ca9c933b removes erroneous $ (#26257)
(cherry picked from commit c136f7da39)
2020-07-16 13:04:17 +02:00
Kamal Galrani
051c7a7c8e fixes footer inconsistency (#26255)
(cherry picked from commit f4b6abb05e)
2020-07-16 13:04:17 +02:00
Kyle Brandt
28978db293 backend: use latest go plugin sdk (0.74.0) to sort wide frames (#26207)
This makes it so results are more stable between refreshes of data and fixes sorting issues with Azure Application Insights service as well as the two Azure Analytics services.

fixes #22937

(cherry picked from commit c1ede4fc71)
2020-07-16 13:04:17 +02:00
Ivana Huckova
56a0b90559 Elastic: Fix error "e.buckets[Symbol.iterator] is not a function" when using filter (#26217)
* Add bucket to array if it is not in array

* Fix issue one level above

* Rename variable

* Move array check to processAggregationDocs

(cherry picked from commit 6d8545da63)
2020-07-16 13:04:17 +02:00
Ivana Huckova
461fc94103 Explore/Loki: Escape \ in labels for show context queries (#26116)
* Hot fix, keep the file

* Add comment

* Update public/app/plugins/datasource/loki/datasource.ts

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

* Remove script.go file

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 52f12d10c5)
2020-07-16 13:04:17 +02:00
Marcus Efraimsson
ee21c1be81 Docker: Make sure to create default plugin provisioning directory (#26017)
(cherry picked from commit e25c6db7e9)
2020-07-16 13:04:17 +02:00
Ryan McKinley
a3a9ce7f24 AppPlugin: give full control to page layout when navigation is missing (#26247)
(cherry picked from commit 5f8eb93db1)
2020-07-13 14:41:21 +02:00
Ryan McKinley
1e3265d047 Flux: use monaco query editor (#26179)
(cherry picked from commit 33acf4c056)
2020-07-13 14:41:21 +02:00
Alex Khomenko
88270a2bf8 Grafana UI: Make FileUpload button size customizable (#26013)
(cherry picked from commit c3d4e69a32)
2020-07-13 14:41:21 +02:00
Andrej Ocenas
f8bdda7adf Release v7.1.0-beta3 2020-07-13 14:41:21 +02:00
Ryan McKinley
7618fd36ac DataLinks: add internal flag in comments (#26215)
(cherry picked from commit 3d98641a45)
2020-07-13 14:41:21 +02:00
Tobias Skarhed
bca82d8814 Issue Template: @grafana/ui component request (#25981)
* Add first draft of issue template

* Remove feature request line

* Update PR feedback

* Minor tweaks

* Update .github/ISSUE_TEMPLATE/4-grafana_ui_component.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Fix punctuation

Co-authored-by: Clarity-89 <homes89@ukr.net>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
(cherry picked from commit 5a3eb413d9)
2020-07-13 14:41:21 +02:00
Andrej Ocenas
783e5d12c7 Explore: Unification of logs/metrics/traces user interface (#25890)
Removes "Metrics"/"Logs" mode switcher from Explore, allowing for both
metrics and logs queries at the same time.

Co-authored-by: kay delaney <kay@grafana.com>
(cherry picked from commit 64bc85963b)
2020-07-13 14:41:21 +02:00
Peter Holmberg
e39fef1649 Fix: Redirect to correct url after creating a folder (#26160)
(cherry picked from commit 9948e9298f)
2020-07-13 14:41:21 +02:00
kay delaney
2145633e9b Datasource/CloudWatch: More robust handling of different query modes (#25691)
* Datasource/CloudWatch: More robust handling of different query modes
A small refactor which changes how the CloudWatch datasource handles
multiple queries with different query modes. Groundwork for future
Logs/Metrics unification work.

(cherry picked from commit 2ac1bfcc79)
2020-07-13 14:41:21 +02:00
Andrej Ocenas
6503962013 Explore: Run query on splitOpen action (#26161)
(cherry picked from commit 53eb856d20)
2020-07-13 14:41:21 +02:00
Torkel Ödegaard
40a33c56c2 Templating: Fix recursive loop of template variable queries when changing ad-hoc-variable (#26191)
* Templating: Fix url sync issue with adhoc variables

* Update packages/grafana-ui/src/components/Segment/SegmentAsync.tsx

* Update packages/grafana-ui/src/components/Segment/SegmentAsync.tsx

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
(cherry picked from commit 0428f27194)
2020-07-13 14:41:21 +02:00
Ivana Huckova
42069bb254 Loki: Improve error message for unescaped \ and add LogQL link to docs (#26136)
* Add custom escaping error message

* Include regex escape error message

* Update docs, add logql link

* Refactor

(cherry picked from commit d3dcb19a5b)
2020-07-13 14:41:21 +02:00
Torkel Ödegaard
4684c7971c BarGauge: Fix space bug in single series mode (#26176)
(cherry picked from commit 7b80e300d9)
2020-07-13 14:41:21 +02:00
Kyle Brandt
903eccad20 Docs: Azure Monitor data source changes for 7.1 (#26096)
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
(cherry picked from commit c6a3afb4b8)
2020-07-13 14:41:21 +02:00
kay delaney
2bc9374a9e Backend: use latest Go plugin SDK (#26162)
(cherry picked from commit fd29b952a6)
2020-07-13 14:41:21 +02:00
Torkel Ödegaard
47e162d6b2 Templating: Fixed recursive queries triggered when switching dashboard settings view (#26137)
* Templating: Fixed recursive queries triggered when going into dashboard settings

* Fixed unused import

* use locationUtil

(cherry picked from commit cace879c96)
2020-07-13 14:41:21 +02:00
Torkel Ödegaard
b8c5174461 Dashboard: Refresh intervals should not always add the server min refresh interval (#26150)
(cherry picked from commit 8ab5d2ddd9)
2020-07-13 14:41:21 +02:00
Marcus Andersson
eedf6e53de Transform: adding missing "table"-transform and "series to rows"-transform to Grafana v7-transforms. (#26042)
* Fixed so the merge for table values works as it did before.

* wip

* fixed tests.

* merge tests are green.

* removed unused code and simplify the seriesToRows.

* added time series to rows editor.

* using getFrameDisplayName for the metric value.

* updated description of transforms.

* updated docs.

* fixed according to feedback.

* changed from images to markdown tables for the examples.

* forgot to save :P

(cherry picked from commit 17d87071e6)
2020-07-13 14:41:21 +02:00
Torkel Ödegaard
5f539230da DataLinks: Fixed interpolation of repeated variables used in data links (#26147)
(cherry picked from commit 89b56782c6)
2020-07-13 14:41:21 +02:00
Ryan McKinley
c14ac88b8d CSV: force UTF-8 encoding for download (#26145)
(cherry picked from commit b26ef1db25)
2020-07-13 14:41:21 +02:00
Dominik Prokop
9417a0c277 Do not break dashboard settings UI when time intervals end with trailing comma (#26126)
(cherry picked from commit 30a682a4da)
2020-07-13 14:41:21 +02:00
Ryan McKinley
4c27708b7b DataSourceWithBackend: add internal comment for new method (#26139)
(cherry picked from commit 2b6833d0da)
2020-07-13 14:41:21 +02:00
Kyle Brandt
763d28ad96 Azure: Restore Insights Metrics alias feature (#26098)
also fix case sensitivity for azure monitor metrics

(cherry picked from commit 9164a35240)
2020-07-13 14:41:21 +02:00
Dominik Prokop
949988219f grafana/ui: Do not rename export for InlineFormLabel (#26118)
(cherry picked from commit eb4391a228)
2020-07-13 14:41:21 +02:00
Arve Knudsen
4aa1d28683 Upgrade build pipeline tool (#26112)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit e7e854ea33)
2020-07-13 14:41:21 +02:00
Dominik Prokop
a4846ee4fd Chore: Bump rxjs to latest (#26084)
(cherry picked from commit aa671c863e)
2020-07-13 14:41:21 +02:00
Torkel Ödegaard
c2403767a0 StatPanel: Fixes issue with name showing for single series / field results (#26070)
* StatPanel: Fix text mode auto logic

* Removed import

(cherry picked from commit c9f22b72e3)
2020-07-13 14:41:21 +02:00
Peter Holmberg
fce35e7aa9 Fix: Icon and Tooltip on Variables editor (#26086)
(cherry picked from commit 8f1115c6ac)
2020-07-13 14:41:21 +02:00
Marcus Olsson
0d47601175 Docs: Add guidelines for inclusive language (#25533)
* Docs: Add guidelines for inclusive language

* Fix review comments

* Fix review comments

* Update documentation-style-guide.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
(cherry picked from commit 0f41ca620b)
2020-07-13 14:41:21 +02:00
Sofia Papagiannaki
28e50ae4fd Auth: Fix POST request failures with anonymous access (#26049)
Macaron context.QueryBool() seems to modify the request context
that causes the POST and PUT requests to fail with:
"http: proxy error: net/http: HTTP/1.x transport connection broken: http: ContentLength=333 with Body length 0"

(cherry picked from commit 44dff6fdd0)
2020-07-13 14:41:21 +02:00
Andreas Opferkuch
fc96444b23 ThemeContext: Make useStyles type-aware (#26056)
PLUS:
Make it more consise
Add unit test

(cherry picked from commit 390c80d7f5)
2020-07-13 14:41:21 +02:00
annegies
9eb16756b1 Remove break from ldap, get all groups from all the group base searches specified (#25825)
Signed-off-by: Annegies van 't Zand <ace.vtzand@gmail.com>
(cherry picked from commit a2737c0896)
2020-07-13 14:41:21 +02:00
Ryan McKinley
cde6a2de68 panel Inspect: improve structure debugging (#26065)
(cherry picked from commit af5dff8a1b)
2020-07-13 14:41:21 +02:00
Torkel Ödegaard
111c238df2 TextPanel: Fixed issue with new react text panel (#26061)
(cherry picked from commit 8be735a6ec)
2020-07-13 14:41:21 +02:00
Carl Bergquist
1630f21aee Instrument dashboard versions and annotation count (#26044)
(cherry picked from commit 26852ca788)
2020-07-13 14:41:21 +02:00
Torkel Ödegaard
c2125493a7 InfluxDB: Fixed new group by dropdown now showing (#26031)
(cherry picked from commit 66460ae740)
2020-07-13 14:41:21 +02:00
Ryan McKinley
33eec937dd Table: JSON Cell should try to convert strings to JSON (#26024)
(cherry picked from commit 3acc2a6ac2)
2020-07-13 14:41:21 +02:00
Steven Vachon
073f46e289 @grafana/e2e: close options panel before interacting with the query form (#26036)
... it's logically better, but the real reason is to appease Cypress which was cause a consistent request error for a single plugin (datadog-datasource). An error which could not be reproduced manually.

(cherry picked from commit 634d8d60d6)
2020-07-13 14:41:21 +02:00
Tobias Skarhed
7c1c0bc8c1 AdminUsersTable: Fix width (#26019)
(cherry picked from commit b06d2cf30f)
2020-07-13 14:41:21 +02:00
Josh Soref
a9fc5ff45d Graph panel: Move Stacking and null values before Hover tooltip options (#26037)
(cherry picked from commit dec76b4556)
2020-07-13 14:41:21 +02:00
Ivana Huckova
7d1f0d619d Elastic: Fix displaying of correct log message (#26020)
* Fix default field, remove redundant line field check

* Add comments

(cherry picked from commit 8b46655361)
2020-07-13 14:41:21 +02:00
Ryan McKinley
aa1cdf0a20 grafana/data: do not bundle rxjs (#26039)
(cherry picked from commit b7792de16d)
2020-07-13 14:41:21 +02:00
Alex Khomenko
0b109a1637 Forgot password: Fix styling (#26002)
(cherry picked from commit 9e47114c45)
2020-07-02 13:07:33 +03:00
Arve Knudsen
6a1f05d7ec CircleCI: Upgrade build pipeline tool (#26006)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
(cherry picked from commit 3e9e2db384)
2020-07-02 13:07:33 +03:00
Ryan McKinley
1576b16219 Monaco: check suggestions against current word (#25992)
* trigger on current word

* proper index

* test suggestsions

* test suggestsions

* fix test

(cherry picked from commit 085b2f3dbf)
2020-07-02 13:07:33 +03:00
Sofia Papagiannaki
44ba5482f1 Release v7.1.0-beta2 2020-07-02 13:07:33 +03:00
Ryan McKinley
972e07bd2e Panel Loading: spin clockwise, not counter clockwise (#25998)
* spin clockwise

* spin clockwise

(cherry picked from commit 90a5a85eb1)
2020-07-02 13:07:33 +03:00
Sebastian Widmer
22211e5bdd Loki: Allow aliasing Loki queries in dashboard (#25706)
* Loki: Add Legend field to query editor

* Loki: Basic test for legend field

* Loki: Mention legend is only for metric queries

* Loki: Fix absolute timerange never updating

(cherry picked from commit 5789f80e14)
2020-07-02 13:07:33 +03:00
Ryan McKinley
d95c494d9d Value Mappings: remove unused operator property from interface (#25989)
(cherry picked from commit 73e82af4df)
2020-07-02 13:07:33 +03:00
Ivana Huckova
6e3a9d7927 Fix href to datasources for NoDataSourceCallToAction in Explore (#25991)
(cherry picked from commit c9751707c5)
2020-07-02 13:07:33 +03:00
Dan Cech
4a68ba7b23 provide license token directly via plugin environment (#25987)
* provide license token directly via plugin environment

(cherry picked from commit b5ca2381bc)
2020-07-02 13:07:33 +03:00
Sofia Papagiannaki
74ca7121eb Fix build-in plugins failing to load in windows (#25982)
(cherry picked from commit bcaa42fbb3)
2020-07-02 13:07:33 +03:00
Marcus Andersson
4d1ea72426 release 7.1.0-beta1 2020-07-01 12:13:45 +02:00
Marcus Andersson
11385c6cfe bumped version to beta1. 2020-07-01 12:11:50 +02:00
Arve Knudsen
a7bfae67f4 CircleCI: Upgrade grabpl (#25966)
* CircleCI: Upgrade grabpl

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-07-01 12:09:57 +02:00
Dominik Prokop
19d27351e9 Fix few null checks to make master green (#25965) 2020-07-01 11:40:37 +02:00
Tobias Skarhed
bd27be1351 Docs: Update styling docs for useStyles (#25944) 2020-07-01 11:39:46 +02:00
Torkel Ödegaard
d65569f5d9 StatPanel: Option showing name instead of value and more (#25676)
* StatPanel: Option showing name instead of value and more

* rename option to textMode

* Move the logic of only showing name if more than one value to gauge and bar gauge panels

* Got tooltip working

* Updated devenv test dashboard

* Added docs for text mode

* Added migration logic

* Update docs/sources/panels/visualizations/stat-panel.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/visualizations/stat-panel.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/visualizations/stat-panel.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/visualizations/stat-panel.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/visualizations/stat-panel.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/visualizations/stat-panel.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/visualizations/stat-panel.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* docs fix

* Fixed ts issue

* review changes

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-07-01 11:06:21 +02:00
Arve Knudsen
285c22eea0 Update release notes/what's new for v7.1 (#25962)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-07-01 10:08:00 +02:00
Andrej Ocenas
2ca6df814e Elastic: Internal data links (#25942)
* Allow internal datalinks for elastic

* Add docs

* Update docs/sources/features/datasources/elasticsearch.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-07-01 09:45:21 +02:00
Ryan McKinley
1716b706da Graph Panel: use FieldConfig for displayName and DataLinks (#25917)
* graph with new controls

* graph with new controls

* Fix categories

* fix test imports

* Chore: Fix spelling (#25905)

* grafana-ui: Make output chunks correct (#25922)

* Explore/Loki: Show results of instant queries only in table and time series only in graph (#25845)

* Show results of instant queries only in table and rest in graph

* Add type to QueryResultMeta

* Update log row hover background only if context is not open

* Revert "Update log row hover background only if context is not open"

This reverts commit 144197c954.

* Explore/Loki: Fix field type in table for instant queries (#25907)

* Update field type for instant queries to number

* Remove fieldtype as in prometheus

* Revert "Remove fieldtype as in prometheus"

This reverts commit f887ad1125.

* Chore: Disable scopelint for tests (#25923)

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

* grafana/ui: Fix storybook dev (#25928)

* Minimize css and js only for storybook build

* Update CodeEditor story, make it internal

* Update storybook webpack config

* TimeZonePicker: added possibility to toggle if internal time zones should be included or not. (#25934)

* made some small adjustments after feedback.

* made the flag optional.

* Docker: Upgrade to base on Alpine 3.12 (#25936)

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

* DataLinks: Add internal links in table and allow custom query (#25613)

* Add internal links in table and with custom query

* Add specific types for internal and external link

* Change the datalink types to be more backward compatible

* Refactor the link utils for explore

* Add internal linking to table panels

* Fix derived field condition

* Prettify

* Add and fix tests

* Prettify

* Fix imports and tests

* Remove unused type

* Update packages/grafana-data/src/types/explore.ts

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update packages/grafana-data/src/types/explore.ts

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* CircleCI: Upgrade grabpl (#25939)

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

* Provisioning: Use folders structure from the file system to create desired folders in dashboard provisioning. (#23117)

Fixes #12016

* Added options to customize chart data listening (#25918)

* Explore: Remove legend formatting when switching from panel to Explore (#25848)

* Remove legend formatting when switching from panel to explore

* Add test coverage

* Query history: Add search for query history and starred queries (#25747)

* Add searching functionality to Queries tab

* Implement search for starred queries

* Update tests and add test coverage for searching

* Changes based on provided feedback

* Remove redundant storing of results

* Update naming of onSearchFilterChange function in tests

* Update filterQueriesBySearchFilter function

* Update filterQueriesBySearchFilter function

* Debounce search

* Remove console.log()

* Use useDebouncedCallback

* Update tests, remove redundant props

* When in starred, search only in starred

* Add timefilter as dependency

* Remove redundant dependency, refactor

* Grafana-UI: Add FileUpload (#25835)

* Grafana UI: Setup component

* Grafana UI: DashboardFileUpload => FileUpload

* Grafana UI: Expand docs

* Grafana UI: Add className

* Grafana UI: Update import

* Grafana UI: Clarify props

* Update packages/grafana-ui/src/components/FileUpload/FileUpload.tsx

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* Grafana UI: Style icon

* Grafana UI: Show uploaded file name

* Grafana UI: Add tests

* Grafana UI: Add useStyles + useCallback

* Grafana UI: Remove stylesFactory

* Grafana UI: Revert to useTheme

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* Fix: Value mappings match against string values (#25929)

* Use standard input for value mappings value

* add test and case for matching string values

* re add number on rangemap

* remove FieldTypeNumber required

* Docs: Changelog update 7.05 & latest.json update (#25941)

* Docs: Changelog update for 7.0.5

* Update latest.json

* Fixed alignment

* Stackdriver: Rename Stackdriver to Google Cloud Monitoring (#25807)

* Update backend

* Update frontend

* Keep old plugin id

* Update docs

* Place doc images to a new directory

* Legacy support for stackdriver-auto alignment

* Consistent plugin name

* Apply suggestions from code review

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* Update docs

* Update public/app/plugins/datasource/cloud-monitoring/README.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Add reference to the data source formerly being named Stackdriver

* Update pkg/models/datasource.go

Co-authored-by: Carl Bergquist <carl@grafana.com>

* Fix gofmt

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Carl Bergquist <carl@grafana.com>

* Fix strict null errors that resulted from search (#25950)

* Arrow: when exporting arrow use the calculated names (#25871)

* PanelHeader: Fixed loading icon position (#25949)

* PanelHeader: Fixed loading icon position

* revert back to text weak color

* Azure/Log Analytics: return more error information (#25937)

When there is an error message in the HTTP response, this copies that error so it is relayed to the user by being shown in the frontend.

This also makes it so when there is an error the interpolated query string (ExecutedQueryString) is returned so users can see it in the query inspector.

* Azure: Multiple dimension support for Azure Monitor Service (#25947)

Azure Monitor (metrics) support multiple dimensions instead of just one.

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* Docs: Update alert-list-panel.md (#25779)

Fixed minor typo and format updates

* Docs: Update add-a-panel.md (#25780)

* Linting fixes for the provisioning package (#25690)

* Chore: whatwg-fetch version bump (#25952)

* Use latest fetch polyfill/shim

* Updated lockfile

* Monaco: option to hide line numbers (#25920)

* Docs: Reorganize reference topics (#25915)

* moved annotations.md

* Update annotations.md

* moved dashboard_folders.md

* moved dashboard_history.md

* moved playlist.md

* moved search.md

* migrations test

* docs: spelling (#24383)

* Docs: spelling

* Docs: spelling (contribute/ directory)

* Drop whats-new-in changes

* migrations test

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Richard Hartmann <RichiH@users.noreply.github.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: Maksim Nabokikh <32434187+nabokihms@users.noreply.github.com>
Co-authored-by: Steven Vachon <contact@svachon.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Carl Bergquist <carl@grafana.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2020-07-01 09:39:06 +02:00
Ryan McKinley
bbd24cd93a Monaco: add suggestions for template variables (#25921)
* now with suggestions

* using suggestions API

* using variable suggestions

* using variable suggestions

* show variables

* minor cleanup

* add @alpha warning

* Do not produce data variables if panel does not support queries

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-07-01 09:36:34 +02:00
Philipp Trulson
df72344d3c Add space after comma for placeholder text (#25931) 2020-07-01 10:34:36 +03:00
Torkel Ödegaard
650ab72c88 Panel: Cancel panel query via loading spinner (#25954)
* Panel: Cancel panel query via loading spinne

* Removed unused icon
2020-07-01 09:32:27 +02:00
Marcus Andersson
83df83fa42 Docs: updated packages reference docs for 7.1.0-beta1. (#25958) 2020-07-01 09:12:35 +02:00
Ivana Huckova
e93640878d Explore/Tooltip: Fix label value in tooltip (#25940)
* Fix value name in tooltip

* Fallback to field.name

* Use getFieldDisplayName method
2020-07-01 09:07:44 +02:00
Tobias Skarhed
07df165b86 Panel Inspect: Fix crash when transform removes selected data frame (#25924) 2020-07-01 08:53:29 +02:00
Torkel Ödegaard
199f772bcf StatPanel: Add migration for singlestat tableColumn to to fields property (#25901) 2020-07-01 08:52:49 +02:00
Agnès Toulet
a02c6f2d36 Docs: Enterprise Vault feature (#25895)
* Docs: Vault integration

* Add links to vault feature doc

* Update Enterprise configuration file with vault fields

* Small fixes on vault doc

* Update docs according to PR review

* Update docs/sources/administration/configuration.md

Co-authored-by: Leonard Gram <leo@xlson.com>

* Update docs/sources/enterprise/vault.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/enterprise/vault.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Leonard Gram <leo@xlson.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-07-01 08:40:58 +02:00
Ryan McKinley
cbb9a63b9b Azure: query builder cleanup (#25956) 2020-06-30 22:55:04 -07:00
Ryan McKinley
3a9a4f4a49 InfluxDB/Flux: support timeseries with a renamed time field (#25910) 2020-06-30 16:56:03 -07:00
Sofia Papagiannaki
bb4b7381fc Stackdriver: Deep linking from Grafana panels to the Metrics Explorer (#25858)
* Add stackdriver deep link

* No deep link for SLO queries

* Add tests

* Update docs/sources/features/datasources/stackdriver.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Enforce resource type

* Navigate to google account chooser first

* Change renamed image reference

Fix misspelling in image name and change it to conform with the rest cloud monitoring images

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-07-01 01:16:20 +03:00
Josh Soref
686149966a docs: spelling (#24383)
* Docs: spelling

* Docs: spelling (contribute/ directory)

* Drop whats-new-in changes
2020-06-30 14:42:50 -07:00
Diana Payton
e07d0ae452 Docs: Reorganize reference topics (#25915)
* moved annotations.md

* Update annotations.md

* moved dashboard_folders.md

* moved dashboard_history.md

* moved playlist.md

* moved search.md
2020-06-30 14:18:38 -07:00
Ryan McKinley
d4239e6fd2 Monaco: option to hide line numbers (#25920) 2020-06-30 14:05:34 -07:00
Steven Vachon
bbce01de04 Chore: whatwg-fetch version bump (#25952)
* Use latest fetch polyfill/shim

* Updated lockfile
2020-06-30 17:04:55 -04:00
Carl Bergquist
db8d7ffbf6 Linting fixes for the provisioning package (#25690) 2020-06-30 22:46:41 +02:00
Diana Payton
891ae24f76 Docs: Update add-a-panel.md (#25780) 2020-06-30 13:36:24 -07:00
Diana Payton
885467e46e Docs: Update alert-list-panel.md (#25779)
Fixed minor typo and format updates
2020-06-30 13:36:00 -07:00
Kyle Brandt
4be56cde0d Azure: Multiple dimension support for Azure Monitor Service (#25947)
Azure Monitor (metrics) support multiple dimensions instead of just one.

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-06-30 16:26:46 -04:00
Kyle Brandt
72fa5ccb7b Azure/Log Analytics: return more error information (#25937)
When there is an error message in the HTTP response, this copies that error so it is relayed to the user by being shown in the frontend.

This also makes it so when there is an error the interpolated query string (ExecutedQueryString) is returned so users can see it in the query inspector.
2020-06-30 16:05:53 -04:00
Torkel Ödegaard
277b6add6d PanelHeader: Fixed loading icon position (#25949)
* PanelHeader: Fixed loading icon position

* revert back to text weak color
2020-06-30 20:57:57 +02:00
Ryan McKinley
7cf5172b8a Arrow: when exporting arrow use the calculated names (#25871) 2020-06-30 11:32:02 -07:00
Ivana Huckova
46540f3146 Fix strict null errors that resulted from search (#25950) 2020-06-30 18:55:31 +02:00
Sofia Papagiannaki
4bb3f66569 Stackdriver: Rename Stackdriver to Google Cloud Monitoring (#25807)
* Update backend

* Update frontend

* Keep old plugin id

* Update docs

* Place doc images to a new directory

* Legacy support for stackdriver-auto alignment

* Consistent plugin name

* Apply suggestions from code review

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* Update docs

* Update public/app/plugins/datasource/cloud-monitoring/README.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Add reference to the data source formerly being named Stackdriver

* Update pkg/models/datasource.go

Co-authored-by: Carl Bergquist <carl@grafana.com>

* Fix gofmt

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Carl Bergquist <carl@grafana.com>
2020-06-30 18:47:13 +03:00
Torkel Ödegaard
05bfd17b00 Docs: Changelog update 7.05 & latest.json update (#25941)
* Docs: Changelog update for 7.0.5

* Update latest.json

* Fixed alignment
2020-06-30 17:06:05 +02:00
Peter Holmberg
20db5680d2 Fix: Value mappings match against string values (#25929)
* Use standard input for value mappings value

* add test and case for matching string values

* re add number on rangemap

* remove FieldTypeNumber required
2020-06-30 17:03:39 +02:00
Alex Khomenko
275c37503a Grafana-UI: Add FileUpload (#25835)
* Grafana UI: Setup component

* Grafana UI: DashboardFileUpload => FileUpload

* Grafana UI: Expand docs

* Grafana UI: Add className

* Grafana UI: Update import

* Grafana UI: Clarify props

* Update packages/grafana-ui/src/components/FileUpload/FileUpload.tsx

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* Grafana UI: Style icon

* Grafana UI: Show uploaded file name

* Grafana UI: Add tests

* Grafana UI: Add useStyles + useCallback

* Grafana UI: Remove stylesFactory

* Grafana UI: Revert to useTheme

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
2020-06-30 17:48:38 +03:00
Ivana Huckova
e3bbc14feb Query history: Add search for query history and starred queries (#25747)
* Add searching functionality to Queries tab

* Implement search for starred queries

* Update tests and add test coverage for searching

* Changes based on provided feedback

* Remove redundant storing of results

* Update naming of onSearchFilterChange function in tests

* Update filterQueriesBySearchFilter function

* Update filterQueriesBySearchFilter function

* Debounce search

* Remove console.log()

* Use useDebouncedCallback

* Update tests, remove redundant props

* When in starred, search only in starred

* Add timefilter as dependency

* Remove redundant dependency, refactor
2020-06-30 16:15:46 +02:00
Ivana Huckova
6c7a452726 Explore: Remove legend formatting when switching from panel to Explore (#25848)
* Remove legend formatting when switching from panel to explore

* Add test coverage
2020-06-30 16:14:27 +02:00
Steven Vachon
75a714aa51 Added options to customize chart data listening (#25918) 2020-06-30 09:45:36 -04:00
Maksim Nabokikh
810ec4c5f8 Provisioning: Use folders structure from the file system to create desired folders in dashboard provisioning. (#23117)
Fixes #12016
2020-06-30 15:33:26 +02:00
Arve Knudsen
72e418247b CircleCI: Upgrade grabpl (#25939)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-30 15:07:50 +02:00
Andrej Ocenas
81d7cb1773 DataLinks: Add internal links in table and allow custom query (#25613)
* Add internal links in table and with custom query

* Add specific types for internal and external link

* Change the datalink types to be more backward compatible

* Refactor the link utils for explore

* Add internal linking to table panels

* Fix derived field condition

* Prettify

* Add and fix tests

* Prettify

* Fix imports and tests

* Remove unused type

* Update packages/grafana-data/src/types/explore.ts

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update packages/grafana-data/src/types/explore.ts

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-06-30 14:51:04 +02:00
Arve Knudsen
463e8ffd92 Docker: Upgrade to base on Alpine 3.12 (#25936)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-30 14:26:02 +02:00
Marcus Andersson
8e36a15968 TimeZonePicker: added possibility to toggle if internal time zones should be included or not. (#25934)
* made some small adjustments after feedback.

* made the flag optional.
2020-06-30 13:30:18 +02:00
Dominik Prokop
a47fac72bf grafana/ui: Fix storybook dev (#25928)
* Minimize css and js only for storybook build

* Update CodeEditor story, make it internal

* Update storybook webpack config
2020-06-30 11:44:38 +02:00
Arve Knudsen
3651a8e976 Chore: Disable scopelint for tests (#25923)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-30 11:05:47 +02:00
Ivana Huckova
02cd1a441f Explore/Loki: Fix field type in table for instant queries (#25907)
* Update field type for instant queries to number

* Remove fieldtype as in prometheus

* Revert "Remove fieldtype as in prometheus"

This reverts commit f887ad1125.
2020-06-30 09:25:19 +02:00
Ivana Huckova
69f9b6f945 Explore/Loki: Show results of instant queries only in table and time series only in graph (#25845)
* Show results of instant queries only in table and rest in graph

* Add type to QueryResultMeta

* Update log row hover background only if context is not open

* Revert "Update log row hover background only if context is not open"

This reverts commit 144197c954.
2020-06-30 09:25:05 +02:00
Dominik Prokop
6eabe6c29f grafana-ui: Make output chunks correct (#25922) 2020-06-30 09:22:09 +02:00
Richard Hartmann
38cb3f2cb2 Chore: Fix spelling (#25905) 2020-06-30 00:13:25 -07:00
Kyle Brandt
aee5626dca chore: fix lint breaking build (#25916) 2020-06-29 19:45:50 -04:00
Andrej Ocenas
ee5b8b3fec Explore: Add join transform for timeseries shown in table (#25906)
* Add join transform if showing timeseries only in the table

* Fix typo
2020-06-29 23:20:57 +02:00
Kyle Brandt
d243cd9421 Backend: use latest Go plugin sdk (#25909)
* backend: use latest go plugin sdk which fixes #25287
* update for Frame.Meta.Custom SDK changes
2020-06-29 16:20:24 -04:00
Steven Vachon
49e629b278 @grafana/e2e: improvements (#25908)
* Set time range when creating a dashboard

* Optionally set time range when opening a dashboard

* Default time range to 6 hours instead of 1 hour

* Minor changes
2020-06-29 16:04:38 -04:00
Hugo Häggmark
d21558231f TextPanel: Adds proper editor for markdown and html (#25618) 2020-06-29 12:17:31 -07:00
Kyle Brandt
9a8289b6d9 Azure: Application Insights metrics to Frame and support multiple query dimensions (#25849)
- The Application Insights Service now returns a dataframe. This is a "wide" formatted dataframe with a single time index.
- Multiple "group by" dimensions may now be selected instead of just one with Application Insights.
- Some types are copied / slightly altered from the Azure Go SDK but that SDK is not imported at this time.

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-06-29 15:06:58 -04:00
Ryan McKinley
1a711e7df0 Panel Inspect: use monaco for json display (#25251) 2020-06-29 10:58:47 -07:00
Arve Knudsen
dcd5752086 Chore: Upgrade macaron (#25869)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-29 19:15:11 +02:00
Ivana Huckova
4488a4cd5a Explore/Loki: Fix scrolling of context when leaving context window (#25838)
* Fix jumping layout

* Update log row hover background only if context is not open
2020-06-29 18:24:08 +02:00
Arve Knudsen
d1e6214a4a Chore: Enable scopelint Go linter (#25896)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-29 17:04:38 +02:00
Barak Kakoun
a5fb6bddbe Update panel loading icon (#25900)
Panel's loading circle is really hard to notice.
I made it a bit bigger and changed the color.
2020-06-29 16:51:28 +02:00
Ryan McKinley
c344422a68 TimeZonePicker: expose for panel configuraiton (#23523) 2020-06-29 07:50:44 -07:00
Tobias Skarhed
1378cadb68 Switch: Deprecate checked prop in favor of value (#25862) 2020-06-29 15:48:34 +02:00
Torkel Ödegaard
75d8853aac Graphite: Fix graphite tag value dropdowns not rendering (#25889) 2020-06-29 14:27:51 +02:00
Arve Knudsen
5070f7a75b Chore: Start harmonizing linting with plugin SDK (#25854)
* Chore: Harmonize linting with plugin SDK

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

* Chore: Fix linting issues

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-29 14:08:32 +02:00
Marcus Efraimsson
942a14b4ce Datasource: Make sure data proxy timeout applies to HTTP client (#25865)
For backend data sources executing in the backend (not through data proxy) make 
sure that the timeout applies to cached HTTP client.

Fixes #25863

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-06-29 14:03:18 +02:00
Peter Holmberg
6465b2f0a3 Migration: Migrate New notification channel page (#25265)
* creating page

* add types select

* adding switches

* start with converting angular templates to json

* converting more alert channels to new format

* convert remaining channels

* typing the form

* add validation, update models

* fix default value in type select

* fix type

* fix issue with validation rule

* add missing settings

* fix type errors

* test notification

* add comments to structs

* fix selectable value and minor things on each channel

* More typings

* fix strictnull

* rename ModelValue -> PropertyName

* rename show -> showWhen

* add enums and adding comments

* fix comment

* break out channel options to component

* use try catch

* adding default case to OptionElement if element not supported
2020-06-29 13:39:12 +02:00
Tobias Skarhed
61a7f6e2f3 PanelInspect: Update UI for Data display options (#25478)
* Add TableDataOptions component

* A bit along the way

* Make transforms work

* Make it work

* Add collapsed text

* Fix transformations and overflow for QueryOperationRow

* Fix layout

* Minor fixes

* Fix feedback

* Remove unused imports

* Remove unused Container

* Horizontal layout for Switches

* Fix Swicth bug

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-06-29 13:31:39 +02:00
Marcus Efraimsson
460b01f1fe Datasource: Make sure data proxy timeout applies to HTTP client (#25865)
For backend data sources executing in the backend (not through data proxy) make 
sure that the timeout applies to cached HTTP client.

Fixes #25863

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-06-29 11:22:49 +02:00
Carl Bergquist
383aa21ab6 docs: removes invalid comment (#25883) 2020-06-29 09:26:08 +02:00
Torkel Ödegaard
7e83e77dcd Theme: Fixes bug in light theme for query editor part (#25789)
* Theme: Fixes bug in light theme for query editor part

* Remove different backgrond
2020-06-28 08:29:38 +02:00
Mitsuhiro Tanda
9f82cd4713 Slack: Support use of chat.postMessage (#25818)
* set bearer token if token is provided
* update slack notification document

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-26 20:47:06 +02:00
Dominik Prokop
75706a4a8b Toolkit: fix grafana-toolkit binary path so toolkit is not run in linked mode (#25860) 2020-06-26 10:45:39 -07:00
Steven Vachon
fb3bec058a @grafana/e2e: improvements (#25708)
* Set time range when opening a dashboard

* Set UTC timezone when creating a dashboard

* Added flow for selecting options in custom select fields

* Fix flaky test
2020-06-26 13:33:05 -04:00
Emil Tullstedt
5d7cd2e9fc Teams: Add index for permission check (#25736)
* Teams: Add indices for permission check

* Teams: Remove user_id index
2020-06-26 15:13:53 +02:00
Emil Tullstedt
504b786141 Setting: Add docs for option variable expansion (#25508)
Docs for #25075
2020-06-26 13:32:05 +02:00
Marcus Andersson
9421ae93f8 adding missing namedExport for lodash. (#25857) 2020-06-26 11:18:32 +02:00
Eder Nucci
c22940fe35 MSSQL: Fix parsing of uniqueidentifier type (#25751)
Closes #17084

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-06-26 10:11:43 +02:00
Emil Tullstedt
4422ba0f2d Units: add base-pascals and rotational speed units (#22879)
* Units: Add base-Pascals and rotational speed units

* Units: Upper-case first letter in Length

* Units: Fix id of degrees per second
2020-06-26 10:02:23 +02:00
Peter A. Bigot
0e845f2bbe Units: add new unit for duration, it is optimized for displaying days, hours, minutes and seconds. (#24175) 2020-06-26 10:00:57 +02:00
Marcus Andersson
1abbb477cf TimeZone: unify the time zone pickers to one that can rule them all. (#24803)
* draft on a unified TimeZonePicker.

* most of the data structures is in place.

* wip.

* wip.

* wip: timezone selector in progress.2

* fixed so we have proper data on all timezones.

* started to add timezone into time picker.

* addeing time zone footer.

* footer is working.

* fixed so we use the timeZone picker in shared preferences.

* Added so we can change timeZone from picker.

* did some styling changes.

* will update timezone on all places that we need to update it.

* removed console.log

* removed magic string.

* fixed border on calendar.

* ignoring eslint cache.

* cleaned up the code a bit.

* made the default selectable.

* corrected so the behaviour about default works as expected.

* excluded timezone from change tracker.

* revert so default will always be the intial value.

* default will always fallback to the one in the config.

* do the country mapping on startup.

* fixed nit.

* updated snapshots for timepicker.

* fixed build errors.

* updating so snapshot tests is in sync.

* removed Date.now from prop since it will change each run in the snapshot tests.

* fixed so e2e tests works as before.

* moved files into separate folders.
2020-06-26 09:08:15 +02:00
Arve Knudsen
084542a006 Chore: Consolidate on golangci-lint (#25834)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-26 08:46:08 +02:00
Steven Vachon
10715a1c79 @grafana/e2e: added tests (#25836)
* Use at least cypress@4.9

... which has [arguably] better TypeScript definitions

* Updated lockfile

* Added tests for CLI and API

* Minor changes
2020-06-25 13:17:45 -04:00
Kyle Brandt
bc9c53389c Azure: Split insights into two services (#25410)
Azure Application Insights Analytics is no longer accessed by the edit button from within the Application Insights service. Instead, there is now an Insights Analytics option in the Service drop down.

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-06-25 12:48:18 -04:00
Bruce Sherrod
af0c73720e fix performance issue in processHistogramLabels() (#25813) 2020-06-25 17:51:42 +02:00
Marcus Andersson
7f587b209f removed the event listener on will unmount instead of adding it again. (#25844) 2020-06-25 17:04:43 +02:00
Arve Knudsen
8f66f5b1ca CircleCI: Install Google Cloud SDK from versioned archive (#25843)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-25 16:56:54 +02:00
Tobias Skarhed
62e1e78fbe DatatLinks: Fix open in new tab state mismatch (#25826) 2020-06-25 14:54:34 +02:00
Dominik Prokop
e4642de505 Update latest.json(7.0.4) (#25833) 2020-06-25 14:22:48 +02:00
Tobias Skarhed
6d8d0a6ba6 Template variable filters: Hide overflowing text (#25801)
* Add a span as a flex item

* Add max-width

* Removed old angular directive remnant

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-06-25 14:18:33 +02:00
Mohit Nain
564a34a9c8 Update docs/sources/variables/templates-and-variables.md (#25829)
* Update docs/sources/variables/templates-and-variables.md

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-25 12:54:21 +02:00
Dominik Prokop
657dc612d5 Update changelog (7.0.4) (#25823) 2020-06-25 12:25:12 +02:00
Emil Tullstedt
112c28033d Provisioning: Apply settings expanders (#25692)
* Provisioning: Apply settings expanders

Adds support for the variable expanders introduced to the configuration file in #25075 to provisioning.

* Update pkg/services/provisioning/values/values_test.go

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

* Update pkg/services/provisioning/values/values.go

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

* Provisioning: Handle errors when expanding JSON maps
2020-06-25 12:04:42 +02:00
Ivana Huckova
9a6bf88020 Explore/Loki: Fix context menu log line highlighting (#25731)
* Add stopPropragation to context

* Remove redundant stopPropagation from header

* Format comment
2020-06-25 11:14:19 +02:00
Peter Davids
5ab38e9409 Dashboard: fix promql query editor resolution field's position to prevent overflow (#25566)
* GraphPanel: fix promql query editor resolution field's max height to prevent overflow

* fix test

* move menuPlacement to bottom instead
2020-06-25 10:52:18 +02:00
Arve Knudsen
935d6b0ce1 Build: Let building of Go code work even if $GOPATH isn't set (#25805)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-25 08:38:17 +02:00
Hugo Häggmark
6e3e9b7c39 Templating: fixes variables not being interpolated after dashboard refresh (#25698)
* Templating: Moves global variables from TemplateSrv to Redux

* Refactor: renamed to meta

* Tests: fixed broken tests

* Chore: reduces strict null errors

* renamed meta variabel to system variable.

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-06-25 07:38:55 +02:00
Mohit Nain
69eb5afdf7 Docs: Typo correction (#25791)
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-25 01:45:22 +02:00
Ilya Stoliar
8ca28de305 CloudWatch: Added AWS ServiceCatalog metrics and dimensions (#25812) 2020-06-25 01:26:41 +02:00
Ryan McKinley
f59d7acee6 Arrow DataFrame: cast BigInt/UInt to numbers (#25811) 2020-06-24 14:50:24 -07:00
Ryan McKinley
629ce6897d Azure Logs: use executedQueryString in metadata (#25755) 2020-06-24 14:24:30 -07:00
Ryan McKinley
fda9b1f089 InfluxDB: add executedQueryString metadata for InfluxQL (#25786) 2020-06-24 13:52:46 -07:00
Zoltán Bedi
271cc67038 Data: Prefix trace types in data package (#25810) 2020-06-24 20:58:42 +02:00
Tobias Skarhed
615b000acd Tab: Make active tab clickable and add hyperlink functionality (#25546)
* onChangeTab for active tab and pointer mouse

* Add anchor element to tab

* Make a strict 'anchor' mode

* Add short docs

* Apply suggestions from code review

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Fix nits

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-06-24 16:58:40 +02:00
Arve Knudsen
e8e280c83e Google OAuth Docs: Fix typos (#25790)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-24 15:46:31 +02:00
Mohit Nain
2cd569219b Docs: Suggesting few changes to the document (#25435)
* Suggesting few changes to the document

* Update docs/sources/panels/visualizations/heatmap.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/visualizations/heatmap.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-06-24 06:37:37 -07:00
Dominik Prokop
a8b660d919 Improve yarn start output (#25773) 2020-06-24 14:37:36 +02:00
Tobias Skarhed
d3299796f5 Migration: Settings forms (#24741)
* Migrate shared preferences

* Remove unused import

* Migrate org name form

* Update TeamSettings

* Convert user settings

* Fix inital default values

* Update snapshots

* Fix CI errors

* Fix failing Ci

* Update snapshots

* Large spacing

* Move use Form for OrgSettings and add FieldSet

* Remove snapshots

* Add snapshots

* Remove unused prop
2020-06-24 10:55:39 +02:00
Ilya Stoliar
1e38a24b88 CloudWatch: Added AWS MediaStore metrics and dimensions (#25492)
* CloudWatch: Added AWS MediaStore metrics and dimensions

* Camel case dimensions

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2020-06-24 11:06:57 +03:00
Ivana Huckova
f704d103bb Rich history: Updates for default settings and starred queries deletion (#25732)
* Update show only queries for current data source to true

* Add confirmation modal when deleting starred queries
2020-06-24 09:50:46 +02:00
Torkel Ödegaard
b7d26b12dd Templating: Fix searchFilter issue in templating system (#25770) 2020-06-24 08:36:03 +02:00
Ryan McKinley
f16bf361d3 InfluxDB: improve test response (#25785) 2020-06-23 16:30:07 -07:00
Alexander Tymchuk
57f994712e Fix: typo in the Delete sub-header (#25781) 2020-06-23 14:55:14 -07:00
Mohit Nain
7b95984ad1 Docs: Suggesting few changes (#25774)
* Suggesting few changes

* Update docs/sources/features/explore/index.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-06-23 12:39:15 -07:00
Diana Payton
297a4ddd22 Docs: Update jaeger.md (#25634)
* Update jaeger.md

* Update jaeger.md

* Update docs/sources/features/datasources/jaeger.md

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

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Ivana <ivana.huckova@gmail.com>
2020-06-23 12:12:07 -07:00
Diana Payton
a1aeb4b50d Docs: Updated links (#25777) 2020-06-23 12:11:30 -07:00
Marcus Efraimsson
5d1508ed8c Instrumentation: Fix setting Jaeger tracing address through Grafana config (#25768)
Upgrades jaeger-client-go to v2.24.0 to resolve problem with setting Jaeger tracing 
address through Grafana config.

Fixes #25563
2020-06-23 19:23:49 +02:00
Diana Payton
78996516af Docs: Update configuration.md (#25707)
* Update configuration.md

* moved configuration.md to administration folder

* updated links

* Added quota section

* Update upgrading.md

* Update configuration.md

* Update configuration.md

* Update configuration.md

* Updating links

* Update configuration.md

* Update configuration.md

* Update configuration.md

Reworked the security options

* Update configuration.md

* Update configuration.md

* Update provisioning.md

* Update provisioning.md

* Update configuration.md

* Update configuration.md

* Update docs/sources/administration/configuration.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-06-23 09:56:44 -07:00
Peter Holmberg
4463b18ff5 Panel Edit: Clicking twice on a visualization closes the VizPicker (#25739)
* initial things

* recreate old behaviour

* adding guide to tooltip

* update text

* fix typings on render prop

* use conditional children
2020-06-23 18:20:08 +02:00
Arve Knudsen
e998f6e855 Chore: Remove es-check as dev dependency (#25772)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-23 18:08:23 +02:00
Arve Knudsen
ba6aefb6ec CircleCI: Upgrade build pipeline tool (#25741)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-23 17:10:52 +02:00
dependabot[bot]
19779bb961 Build(deps): Bump websocket-extensions from 0.1.3 to 0.1.4 (#25419)
Bumps [websocket-extensions](https://github.com/faye/websocket-extensions-node) from 0.1.3 to 0.1.4.
- [Release notes](https://github.com/faye/websocket-extensions-node/releases)
- [Changelog](https://github.com/faye/websocket-extensions-node/blob/master/CHANGELOG.md)
- [Commits](https://github.com/faye/websocket-extensions-node/compare/0.1.3...0.1.4)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-06-23 16:24:04 +02:00
Tobias Skarhed
f5de4f1fb1 ForgottenPassword: Move view to login screen (#25366)
* Add forgot password to login screen

* Add ForgottenPassword component

* Add spacing

* Generate new emails and handle resetCode

* Fix animation and small UX issues

* Extract LoginLayout and add route for reset mail

* Reset email template

* Add ChangePasswordPage

* Remove resetCode

* Move style into variable

* Fix strict null
2020-06-23 16:17:54 +02:00
Alex Khomenko
1bde4de827 Grafana UI: Unbind graph only if initialised (#25762) 2020-06-23 10:43:19 +03:00
Ryan McKinley
46df05fd9d InfluxDB: flux query editor cleanup (#25753) 2020-06-22 16:36:58 -07:00
Ryan McKinley
740a9ad5f9 InfluxDB: support aggregate results (#25726) 2020-06-22 13:44:41 -07:00
Ryan McKinley
8d1ed33e20 InfluxDB: different config UI for 1x vs 2x (#25723) 2020-06-22 13:03:34 -07:00
Torkel Ödegaard
0797fe88a1 Units: Custom unit suffix and docs for custom units (#25710)
* Units: Custom units updates and docs

* Fixed codespell

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Peter Holmberg <peterholmberg@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-06-22 21:30:37 +02:00
Ryan McKinley
0c61ff7672 DataSourceWithBackend: remove unused function (#25727) 2020-06-22 10:27:02 -07:00
Ryan McKinley
05ed781184 InfluxDB: use released client 1.3.0 (#25725) 2020-06-22 10:19:26 -07:00
Agnès Toulet
b5b019dfcf Notifications: fix reply-to option for emails (#25748) 2020-06-22 18:56:49 +02:00
Carl Bergquist
703f728c0c Dashboards: Make path to default dashboard configurable (#25595)
Closes #25463

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-06-22 18:00:39 +02:00
Marcus Efraimsson
cc95754e0d Provisioning: Adds support for enabling app plugins (#25649)
Adds support for enabling app plugins using provisioning. 

Ref #11409

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-06-22 17:49:13 +02:00
Diana Payton
602dd1e226 Docs: Update time-range-controls.md (#25745) 2020-06-22 08:30:02 -07:00
Marcus Efraimsson
58cefe73ee Datasources: Handle URL parsing error (#25742)
Adds handling of error returned from URL parsing.

Fixes #25714
2020-06-22 16:34:40 +02:00
Zoltán Bedi
c16890c22d Chore: use fork-ts-checker plugin for eslint check (#25631)
* Use fork-ts-checker for eslint check

* Fix lint issue

* Add packages to lint

* Add comments to webpack configs
2020-06-22 16:15:29 +02:00
Torkel Ödegaard
95d53f03a0 Explore: Use merge transform instead of DataFrame -> Table -> Merge -> toDataFrame (#25694) 2020-06-22 15:30:16 +02:00
Josh Soref
eb734a2f6e Chore: spelling - ui (#24435) 2020-06-22 15:02:58 +02:00
Kaveet Laxmidas
b5b1b9d64e Docs: Fix broken link to Slack documentation (#25720)
This change fixes a link broken due to link formatting on the docs.

The issue is present here, in the last sentence: https://grafana.com/docs/grafana/latest/alerting/notifications/#slack
2020-06-22 11:18:33 +02:00
Philipp Trulson
b8d49999b7 Units: Match 'length' case with other categories (#25702) 2020-06-22 08:36:08 +02:00
kay delaney
3b383149db CloudWatch Logs: Adds template variable support to log groups (#25604)
* CloudWatch Logs: Adds template variable support to log groups
Closes #25099
2020-06-18 15:54:29 +01:00
Alex Khomenko
47a2ee5b24 Grafana UI: Apply disabled styles to LinkButton (#25693)
* Grafana UI: Apply disabled styles to LinkButton

* Grafana UI: Add disabled knob
2020-06-18 16:22:57 +03:00
Dominik Prokop
e5d21461a0 Refactor panel inspector (#24480)
* Inspect: Should not subscribe to transformed data

* PQR- allow controll whether or not field overrides and transformations should be applied

* UI for inspector data options

* fix

* Null check fix

* Refactor PanelInspector

* TS fix

* Merge fix

* fix test

* Update public/app/features/dashboard/components/Inspector/InspectDataTab.tsx

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* review batch 1

* Update API of usePanelLatestData

* css

* review batch 2

* Update usePanelLatestData hook

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
2020-06-18 14:31:30 +02:00
Richard Hartmann
4a30c65a5e Docs: Fix broken link (#25664)
Signed-off-by: Richard Hartmann <richih@richih.org>
2020-06-18 14:08:26 +02:00
Kyle Brandt
36fd746c5d Influx/flux: include interpolated query with error (#25665)
with execution errors, return a Frame that has Meta.ExecutedQueryString.
2020-06-18 07:45:55 -04:00
Hugo Häggmark
e2ba0731e2 Chore: Upgrades jQuery and @types/jQuery (#25651)
* Chore: upgrades jQuery and @types/jQuery

* Chore: reduce strict null errors

* Fixed issue in graphite func editor

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-06-18 11:35:11 +02:00
Alexander Zobnin
eb792490d6 Types: add reportGrid to the feature toggles (#25689)
* Types: add reportGrid to the feature toggles

* Chore: add reportGrid to the default config
2020-06-18 12:28:41 +03:00
Agnès Toulet
4853770db3 Datasources: add new tab and feature toggle (#25663)
* Datasources: add insights tab

* Config: add feature flag
2020-06-18 09:37:13 +02:00
kay delaney
1479786fb8 Datasource/Influx: Fixes issue where toggling editor mode would cause error (#25660)
Closes #25659
2020-06-18 09:27:27 +02:00
Steven Vachon
5b5b247cb1 @grafana/e2e: improvements (#25677)
* Minor changes

* Fixed data source selection issue

… where it appeared as though the wrong one was selected

* Fixed “executing a canceled action” issue

... thrown from RxJS
2020-06-17 15:39:39 -04:00
Diana Payton
cf109df887 Docs: Update overview.md (#25672)
Updated a link.
2020-06-17 11:15:41 -07:00
Arve Knudsen
ea2bb7036c Auth proxy: Ignore stale cache entries (#23979)
* Auth proxy: Retry without cache if failing to get user
2020-06-17 18:43:16 +02:00
Torkel Ödegaard
491b8680f7 Footer: Add back footer to login page (#25656) 2020-06-17 14:33:09 +02:00
Alex Khomenko
157e54067d Docs: Remove GrafanaCONline info from readme (#25655) 2020-06-17 12:57:40 +02:00
Torkel Ödegaard
d6ed8c522c Dashboard: Redirects for old edit & view panel urls (#25653) 2020-06-17 12:51:41 +02:00
Ryan McKinley
d1b230f84a Chore: upgrade to Typescript 3.9.3 (#25154)
* upgrade to typescript 3.9.3

* Fix errors that surfaced with update

* Null check fixs

* FIx null checks

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-06-17 12:26:01 +02:00
Arve Knudsen
d352c213b3 API: Recognize MSSQL data source URLs (#25629)
* API: Recognize MSSQL URLs

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

* Move MSSQL URL validation into mssql package

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-17 11:17:11 +02:00
Sofia Papagiannaki
e6a5e88054 Stackdriver: Fix creating Label Values datasource query variable (#25633) 2020-06-17 12:05:06 +03:00
Lukas Siatka
7b7000c5bc Explore: updates ExploreItemState type, reduces strict null errors count to 702 (#25250)
* Chore: changes null values to undefined in explore reducer

* Chore: changes sortLogsResult param type from null to undefined

* Chore: changes null values to undefined in explore reducer

* Chore: updates strict null errors count

* Revert "Chore: changes null values to undefined in explore reducer"

This reverts commit b82d841611.

* Revert "Chore: changes sortLogsResult param type from null to undefined"

This reverts commit 21073b5d30.

* Revert "Chore: changes null values to undefined in explore reducer"

This reverts commit 798559688c.

* Chore: updates ExploreItemState type

* Chore: updates initial ExploreItemState in Explore reducer

* Chore: updates strict null errors count to 699

* Chore: changed ExploreMode and Emitter type in ExploreStateItem

* Revert "Chore: changed ExploreMode and Emitter type in ExploreStateItem"

This reverts commit 7e0e2027fc.
2020-06-17 10:08:19 +02:00
Marcus Efraimsson
03f7fd0527 Elasticsearch: Support using a variable for histogram and terms min doc count (#25392)
Support using a variable for histogram and terms min doc count. 
This is an addition to #21064.

Ref #21052
Ref #21064
2020-06-17 10:04:38 +02:00
Arve Knudsen
048f6f5301 CircleCI: Upgrade Grafana build image (#25624)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-17 09:53:39 +02:00
Carl Bergquist
4949869356 add richih to governance (#25537) 2020-06-17 09:34:20 +02:00
Hugo Häggmark
c7be689b0c Chore: cleans up unused files (#25647) 2020-06-17 09:21:38 +02:00
Alexandre de Verteuil
0fa096e0d4 Docs: Quick fix on default license_path in docs (#25641) 2020-06-17 07:53:28 +02:00
Emil Tullstedt
80e9546cec Settings: Add setting for hiding version number for anonymous users (#24919)
* Settings: Add setting for hiding version number for anonymous users

Fixes #12925

* Hide version string from footer when unavailable

* Settings: Test frontend settings with hide version for anonymous users

* Settings: Add hide version variable to frontend settings

* Make AnonymousHideVersion non-global

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

* Settings: Improve test neighbor friendliness, reset state before and after

* Settings: Use T.Cleanup

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-17 07:39:50 +02:00
Richard Hartmann
370791d50b Add WORKFLOW.md (#25461)
Add WORKFLOW.md

Signed-off-by: Richard Hartmann <richih@richih.org>
2020-06-16 20:47:08 +02:00
Steven Vachon
fe74abfaae @grafana/e2e: improvements (#25610)
* Added dependency for attaching files to forms

* Fixed closing of panel options

* Updated lockfile
2020-06-16 12:42:35 -04:00
Torkel Ödegaard
2288609195 Dashboard: Refactor container css to use flex for height instead of calc (#24009)
* Dashboard: Ability to hide dashboard toolbar

* Updated snapshot
2020-06-16 16:33:25 +02:00
Sofia Papagiannaki
fefbbc65a8 Auth: Add support for forcing authentication in anonymous mode and modify SignIn to use it instead of redirect (#25567)
* Forbid additional redirect urls

* Optionally force login in anonymous mode

* Update LoginCtrl page to ignore redirect parameter

* Modify SignIn to set forceLogin query instead of redirect

* Pass appUrl to frontend and use URL API for updating url query

* Apply suggestions from code review

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

* Fix SignIn test

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-16 16:33:44 +03:00
Harrison Shoff
b4136c1eca GraphPanel: fix annotations overflowing panels (#25606) 2020-06-16 15:27:12 +02:00
Carl Bergquist
35e2b87b61 removes text about alert messages supporting variables (#25622)
fixes #25605
2020-06-16 14:50:52 +02:00
Torkel Ödegaard
aa5fb20cfd Variables: Adding dashboard to test updating variables from data link (#25192) 2020-06-16 13:58:18 +02:00
Alex Ashley
4aff2d7469 Stackdriver: Use default project name if project name isn't set on the query (#25413)
* Get default project if not defined on query

* Log when using default project name

* Set query result error
2020-06-16 14:08:35 +03:00
Ben RUBSON
cd75dc93f6 Branding: Use AppTitle as document title (#25271) 2020-06-16 12:13:03 +02:00
Alex Khomenko
e6460b31df Docs: Fix typos in the issue triage doc (#25627) 2020-06-16 12:56:40 +03:00
Torkel Ödegaard
146ca7a486 Docs: Update upgrading doc with more backup details (#25512)
* Docs: Update upgrading doc with more backup details

Fixes #9159

* Update docs/sources/installation/upgrading.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/installation/upgrading.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-06-16 11:23:52 +02:00
Alex Khomenko
531e658123 Search: support URL query params (#25541)
* Search: connect DashboardSearch

* Search: set url params

* Search: handle tag params

* Search: handle sort params

* Search: use getLocationQuery

* Search: fix type errors

* Docs: Save query params for manage dashboards

* Search: extract connect

* Search: add layout to URL params

* Search: update options

* Search: simplify options loading

* Search: Fix strict null errors

* Search: Change params order

* Search: Add tests

* Search: handle folder query
2020-06-16 11:52:10 +03:00
Marcus Andersson
a5b38b799a Build: scripts to build and measure packages reference docs (#24876)
* added script to check docs metrics.

* added information link on how to add code comments.

* added script for build and measure code comment metrics.

* fixed issues according to shellcheck.

* Added so we build the metrics if report folder is missing.

* added some spacing and a devider.

* Added so we can send metrics to grafana.

* added shellcheck attribute.

* Fixed spelling according to feedback.

* see if shellcheck passes.

* fixed issue with shellcheck.

* Explore/Logs: Fix tooltip display for log graph (#25544)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2020-06-16 09:33:23 +02:00
Arve Knudsen
3e81a626a4 ci-build: Upgrade Dockerfile to latest Debian Stretch (#25590)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-16 09:31:41 +02:00
Alexandre de Verteuil
b44c8b6f6e Add Root URL info under License file management (#24712)
* Add Root URL info under License file management

Edited through GitHub, not tested on development web server.

* Update docs/sources/enterprise/_index.md

Make updating root_url instructions more straightforward, with action first and explanation second.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/enterprise/_index.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/enterprise/_index.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-06-16 08:57:01 +02:00
Torkel Ödegaard
54284ed9f7 Slider: Update rc-slider component (#25617) 2020-06-16 08:36:51 +02:00
Marcus Andersson
989a1a3d5d fixed failing test. (#25619) 2020-06-16 08:02:55 +02:00
Marcus Andersson
fb7d036fa4 Typescript: Fixed strict null errors. (#25609) 2020-06-16 07:34:27 +02:00
kay delaney
bd76c66e50 Explore/Logs: Fix tooltip display for log graph (#25544) 2020-06-15 15:06:43 +01:00
Ivana Huckova
8fcbea2c2f Alerting: Replace icons on for alerting (#25599)
* Update Alerting icons

* Keep critical red for alerting
2020-06-15 15:42:42 +02:00
Marcus Andersson
093383eb83 Transform: added merge transform that will merge multiple series/tables into one table (#25490)
* wip: added draft of series to rows.

* wip: building dataFrame structure first and then adding data.

* wip: added some refactorings of the seriesToRows transformer.

* did some refactorings to make the code easier to follow.

* added an editor for the transform.

* renamed some of the test data.

* added docs.

* fixed according to feedback.

* renamved files.

* fixed docs according to feedback.

* fixed so we don't keep labels or config values from.

* removed unused field.

* fixed spelling errors.

* fixed docs according to feedback.
2020-06-15 15:03:13 +02:00
Harrison Shoff
66f6b05d5e GraphPanel: Make legend values clickable series toggles (#25581)
fixes: #25402
2020-06-15 14:39:02 +02:00
Arve Knudsen
91c24e1f56 Chore: Upgrade Jest to latest (#25591)
* Chore: Upgrade Jest to latest

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

* Chore: reduces strict null errors

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-06-15 13:06:37 +02:00
kay delaney
b1dee9392b CloudWatch Logs: "limit" query command now respected (#25486)
Closes #25182
2020-06-15 11:29:04 +01:00
Hugo Häggmark
bd44d973cd Variables: Fixes maximum call stack bug for empty value (#25503) 2020-06-15 11:49:38 +02:00
Arve Knudsen
cf2343fac8 package.json: Depend on es-check since we need it for CI (#25593)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-15 10:35:32 +02:00
Hugo Häggmark
258092ec7f TextPanel: Removes text mode (#25589) 2020-06-15 10:17:46 +02:00
Arve Knudsen
7a27dfdffa Include golangci-lint with grafana/build-container (#25587)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-15 09:44:53 +02:00
Hugo Häggmark
c0139b7d42 Azure Monitor: fixes undefined is not iterable (#25586)
* Azure Monitor: fixes undefined is not iterable

* Update public/app/plugins/datasource/grafana-azure-monitor-datasource/azure_log_analytics/response_parser.test.ts

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

* Update public/app/plugins/datasource/grafana-azure-monitor-datasource/azure_log_analytics/response_parser.test.ts

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

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-15 09:20:02 +02:00
Arve Knudsen
04e0ee5cfc package.json: Upgrade Volta's Node version (#25209)
* package.json: Upgrade Volta's Node version
2020-06-13 13:13:43 +02:00
Marcus Efraimsson
bd8a04a6a5 InfluxDB: Fix invalid memory address or nil pointer dereference when schema is missing in URL (#25565)
Add guard if parsing url fails in influxdb backend data source.

Fixes #25242
2020-06-12 16:04:09 +02:00
Steven Vachon
4c8ad8d031 @grafana/e2e: improvements (#25497)
* Minor changes

* Use UI for removing dashboards and datasources

… with an optional “quick” mode that instead does so via a request

* Improved URL helpers

* Simplified test teardown

* Added support for multiple tests

... instead of being forced to cram everything into a single test because the session was cleared
2020-06-11 16:31:49 -04:00
Robbert Gurdeep Singh
034abaa73a Security: Use Header.Set and Header.Del for X-Grafana-User header (#25495)
This ensures that the X-Grafana-User header can be trusted.
If the configuration enabled the setting of this header, the
server can now trust that X-Grafana-User is set/unset by Grafana.
Before this, an anonymous user could simply set the X-Grafana-User
header themselves (using the developer tool for example)
2020-06-11 21:15:17 +02:00
Daniel Lee
1e88e50822 docs: remove racially charged words (#25535)
ref #18841
2020-06-11 18:17:11 +02:00
Diana Payton
035497c7bd Docs: Edit plugin signature topics (#25491)
* Update sign-a-plugin.md

* Update plugin-signature-verification.md

* Update docs/sources/plugins/plugin-signature-verification.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update docs/sources/plugins/plugin-signature-verification.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-06-11 08:33:27 -07:00
Mohit Nain
28ff9d2832 Docs: Typo Correction (#25538) 2020-06-11 08:06:41 -07:00
Marcus Efraimsson
c0f3b2929c Backend plugins: Refactor to allow shared contract between core and external backend plugins (#25472)
Refactor to allow shared contract between core and external backend plugins 
allowing core backend data sources in Grafana to be implemented in same 
way as an external backend plugin.
Use v0.67.0 of sdk.
Add tests for verifying plugin is restarted when process is killed.
Enable strict linting for backendplugin packages
2020-06-11 16:14:05 +02:00
Andrej Ocenas
40b3473a10 Explore: Add tracing switch (#25539)
* Add tracing switch to explore

* Prettify
2020-06-11 14:54:02 +02:00
Alex Khomenko
85d5d8a0e6 Docs: Fix intro to timeseries URL (#25530)
* Docs: Fix intro to timeseries URL

* Update docs/sources/developers/plugins/data-frames.md

Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>

Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>
2020-06-11 15:15:50 +03:00
kay delaney
12d2f2c026 UI/Switch: Makes Switch ID generation more stable (#25542) 2020-06-11 12:47:49 +01:00
Marcus Olsson
79fea5df2a Docs: Update guide on authenticating data source plugins (#24884)
* Update guide on authenticating data source plugins

* Fix broken references
2020-06-11 12:12:27 +02:00
Sam Coren
9aef680e66 Updated URL for developing plugins (#25521)
The existing link for developing plugins was redirecting to the legacy plugin docs page for developers. I updated it to the new link for latest post-7.0 release. 👍
2020-06-11 10:43:20 +02:00
Overcooked Panda
d3c57ac251 Units: Added bitcoin units milli-bitcoin (mBTC) and micro-bitcoin (μBTC) (#24182)
* Update Bitcoin Currency to use proper symbol, add mBTC and μBTC

* Apply suggestions from code review

Co-authored-by: Marcus Andersson <systemvetaren@gmail.com>

* Revert Bitcoin to use '฿'

Co-authored-by: Marcus Andersson <systemvetaren@gmail.com>
2020-06-11 09:13:03 +02:00
Barak Kakoun
1b65e889be Typo (#25516)
dashboard instead of dashboad
2020-06-11 09:24:15 +03:00
Ryan McKinley
5f1f820bb9 Influx: Support flux in the influx datasource (#25308)
* add flux 
* add token to datasource config editor
* add backend for flux
* make the interpolated query available in query inspector
* go mod tidy
* Chore: fixes a couple of strict null errors in influxdb plugin

Co-authored-by: kyle <kyle@grafana.com>
Co-authored-by: Lukas Siatka <lukasz.siatka@grafana.com>
2020-06-10 15:26:24 -04:00
Torkel Ödegaard
c7aac1fd40 Gauge: Hide orientation option in panel options (#25511) 2020-06-10 17:27:59 +02:00
Diana Payton
ed694fd88a Docs: Update _index.md (#25121) 2020-06-10 07:31:05 -07:00
Emil Tullstedt
e8b5f2330d Settings: Expand variables in configuration (#25075) 2020-06-10 14:58:42 +02:00
Hugo Häggmark
55f304f15d TextPanel: Removes Angular Text Panel (#25504)
* TextPanel: Removes Angular Text Panel

* Tests: updates snapshots
2020-06-10 14:35:30 +02:00
Lukas Siatka
aa3d893079 Chore: adds core datasources to codeowners (#25501)
* Chore: adds core datasources to codeowners

* Chore: updates opentsdb to be under backend platform team
2020-06-10 11:02:51 +02:00
Lukas Siatka
282cb73d3a Chore: adds policy interpolation in influxdb queries (#25500) 2020-06-10 10:03:32 +02:00
Theo Schlossnagle
b15a401efa Fix dense y-axis labels in heatmap using tsbuckets (#24351)
* Fix dense y-axis labels in heatmap using tsbuckets

This change emulates the non-tsbuckets Y-axis tick count by making
the y-axis label formatter treat a dense set as a sparse set.

fixes #11342

* have d3 do the work

* Update public/app/plugins/panel/heatmap/rendering.ts

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
2020-06-10 10:44:50 +03:00
Hugo Häggmark
72b8300571 Table: Adds adhoc filtering (#25467)
* Table: Adds adhoc filtering

* Refactor: changes after PR comments

* Refactor: hides filtering for data sources that do not support modifyQuery in Explore

* Refactor: fixes strict null error

* Changed tooltip position to above icon

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-06-10 07:09:02 +02:00
Mohit Nain
1040d824c5 Docs: Typo Correction (#25475) 2020-06-09 15:44:11 -07:00
Christian
9ff551edc8 Docs: Add dependencies for debian stretch to image rendering plugin documentation (#25408) 2020-06-09 15:42:59 -07:00
Zoltán Bedi
5f923be2bf Plugins: move jaeger trace type to grafana data (#25403)
* Plugins: move jaeger trace type to grafana data

* Remove unnecessary type from tsconfig
2020-06-09 22:08:51 +02:00
Brian Candler
ce127acf84 Docs: Document the front-end proxy path for live log tailing with Loki (#25440) 2020-06-09 12:55:07 -07:00
Mohit Nain
35602099d7 Docs: Typo Correction (#25477) 2020-06-09 12:54:40 -07:00
Mohit Nain
2e68425ad7 Docs: Some correction in line 58 (#25474)
All screen sizes is correct terminology to use
2020-06-09 12:53:53 -07:00
Mohit Nain
40986f3015 Docs: Typo Correction (#25437) 2020-06-09 12:51:14 -07:00
Mohit Nain
a7bdc92fd7 Docs: Couple of typos corrected (#25432) 2020-06-09 12:43:05 -07:00
Mohit Nain
47c3ae1f44 Docs: Typo Correction in line 36 (#25429) 2020-06-09 12:34:46 -07:00
Torkel Ödegaard
6fe9982ff0 Table: Support custom date formats via custom unit (#25195)
* Table: Custom date formating via custom unit

* FieldConfig: Changed so that shouldApply is not called for overrides and added unit test

* Updated
2020-06-09 17:43:29 +02:00
Lukas Siatka
1ea8346644 Elastic: prevents datasource from throwing unexpected errors for invalid JSON (#24999)
* Chore: adds error handling to get requests in elasticsearch datasource

* Chore: updates elasticsearch datasource response parsing checks

* Chore: updates elasticsearch non-json errors description

* Chore: removes error catching from query methods to move it to the request method in elasticsearch

* Chore: fixes a typo in elastic response error message

* Chore: moves elasticsearch error handling to request method

* Chore: replaces datasource url in mock elasticsearch datasource
2020-06-09 17:32:47 +02:00
David Wittman
a9d34a3e6f Docs: Images in alerts require an ext provider (#25466)
Be more explicit about the fact that providing images in alert notifications requires an external image storage provider. Previously this read as if it was only necessary for publicly accessible images, but even if they are served from Grafana, the administrator must set up the "local" image provider in the configuration.
2020-06-09 07:28:23 -07:00
Marcus Efraimsson
53175a41c9 Make tsdb dataframes response able to carry encoded/decoded frames (#25454)
Make tsdb dataframes response able to carry encoded and/or decoded frames
2020-06-09 13:13:06 +02:00
mikkokupsu
de1dc57242 CloudWatch: Added AWS WAFV2 metrics (#24048)
* Add metrics and dimensions for AWS/WAFV2

* Update pkg/tsdb/cloudwatch/metric_find_query.go

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

* Fix metric names

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-09 09:51:02 +03:00
Mohit Nain
920362537d Docs: Typo Identified (#25438) 2020-06-08 14:27:09 -07:00
Galdin Raphael
94984627ea Docs: Fix typo in GitHub Auth Doc page (#25335)
https://grafana.com/docs/grafana/latest/auth/github/#enable-github-in-grafana
2020-06-08 12:49:53 -07:00
Amal
77be352c7e Docs: Inserting a comma for better readability (#25337) 2020-06-08 12:48:13 -07:00
Amal
029b1db0d1 Docs: Grammatical correction (#25336) 2020-06-08 12:46:58 -07:00
Amal
8309e8e31a Docs: Typo fix (#25247)
* Update stackdriver.md

* Update stackdriver.md

* Update stackdriver.md

* Update index.md

* Update whats-new-in-v2.md
2020-06-08 12:46:08 -07:00
Amal
ee1be75b7b Docs: Update zipkin.md (#25246) 2020-06-08 12:44:44 -07:00
Amal
be41589b70 Docs: Correcting abbreviation (#25225)
* Correcting abbreviation

* Update azuread.md

* Update whats-new-in-v6-3.md

* Update enterprise-configuration.md

* Update enterprise-configuration.md
2020-06-08 12:43:46 -07:00
Amal
e63b548c5d Docs: Minor grammatical correction (#25224) 2020-06-08 11:42:21 -07:00
Shavonn Brown
5293c9dd84 Convert remaining profile bits to React (#24310)
* reactify user sessions

* all reactified

* more cleanup

* comment edit

* Profile: Fix casing

* Profile: Add Page wrapper

* Profile: New form styles for UserProfileEditForm

* Profile: Use new form styles for SharedPreferences

* Profile: Use radioButtonGroup for SharedPreferences

* Grafana UI: Add FieldSet

* Grafana UI: Add story

* Grafana UI: Add docs

* Grafana UI: Export FieldSet

* Profile: USe FieldSet

* Profile: Sort sessions

Co-authored-by: Clarity-89 <homes89@ukr.net>
2020-06-08 18:19:00 +03:00
Torkel Ödegaard
8474794aaa Dashboard: Fix loading custom home dashboard (#25447)
* Dashboard: Fix loading custom home dashboard

* Updated and added test
2020-06-08 17:15:56 +02:00
Dominik Prokop
c53435f7a7 Graph: Fix XSS vulnerability with series overrides (#25401)
* Fix XSS vulnerability with Graph series overrides

* Update public/app/plugins/datasource/testdata/partials/query.editor.html
2020-06-08 17:13:01 +02:00
Besart Berisha
c7e38fd47f Replace link with button component (#25446) 2020-06-08 16:09:55 +02:00
Steven Vachon
d62926b5a3 @grafana/e2e: improvements (#25342)
* Minor changes

* Remove console.* logger plugin

... as it doesn't work in Electron

* Only open/close panel editor options and groups when state is inverted

... meaning, only open when closed and only close when open. This avoids unpredictable states, causing inconsistent results.

* Support for adding multiple datasources and dashboards

... and having them all auto-removed when tests are completed

* Avoid page errors when removing dashboards and datasources [keep?]

* Wait for chart data before saving panel

... so that everything is ready when returning to the dashboard
2020-06-08 09:52:34 -04:00
Speak Your Code
5f767e2c9a TablePanel: Sort numbers correctly (#25421)
* Table sortType to basic to be able to sort negative numbers

* Table sortType based on field type
2020-06-08 14:28:45 +02:00
mueslo
70038bfd5b Fix byte-format data rates (#25424) 2020-06-08 07:23:09 +02:00
Besart Berisha
293ecbdd4f Fix scss variable typo (#25398) 2020-06-05 20:28:50 +02:00
Kyle Brandt
ef61a64c46 Azure Monitor: Log Analytics response to data frames (#25297)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-06-05 12:32:10 -04:00
Alex Khomenko
c3549f845e Grafana UI: Add prop table (#25387) 2020-06-05 17:29:37 +03:00
Hugo Häggmark
e55756066b Docs: updates frontend style guides (#25391)
* Update frontend.md

* Update contribute/style-guides/frontend.md

Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>

Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>
2020-06-05 13:54:27 +02:00
Fabien Wernli
93a93b5031 Elasticsearch: Add support for template variable in date histogram min_doc_count (#21064)
Fixes #21052
2020-06-05 11:41:18 +02:00
Hugo Häggmark
54565349c5 e2e: uses e2e() instead of cy to make things consistent (#25390) 2020-06-05 11:23:20 +02:00
Josh Soref
05a5a66e2f Chore: spelling - theme (#24434)
* Chore: spelling - theme

* Chore: drop phantomjs comments

* Chore: remove old phantomjs hack

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-06-05 10:53:57 +02:00
James Wang
4cf146a29d Docs: Fix loadAsyncOptions usage (#25371)
Fixed `loadAsyncOptions` in the `AsyncSelect` component usage so that works
2020-06-05 09:40:43 +02:00
Daniel Lee
fd93764784 Add Jeroen Op 't Eynde to the Grafana team (#25376)
* Add Jeroen Op 't Eynde to the Grafana team

Jeroen Op 't Eynde has been proposed as a new team member and the vote achieved the super majority required.

* Governance - sort alphabetically
2020-06-05 09:11:01 +02:00
Ilya Stoliar
cb78104db5 CloudWatch: Added AWS SDKMetrics metrics and dimensions (#25150)
* CloudWatch: Added AWS SDKMetrics metrics and dimensions
2020-06-05 10:10:38 +03:00
Daniel Lee
7c36209513 Add Malcolm Holmes to the Grafana team (#25377)
* Add Malcolm Holmes to the Grafana team

Malcolm Holmes has been proposed as a new team member and the vote achieved the super majority required.

* Governance - sort names alphabetically
2020-06-05 08:25:04 +02:00
Nagle Zhang
1b4fd9ad3c Update team.md (#25277)
document didn't metion teams can assign an orgId.
2020-06-05 07:42:53 +02:00
Hugo Häggmark
29598d83ce e2e: waits for requests to minimize flakiness (#25368) 2020-06-05 06:53:47 +02:00
Daniel Lee
69b366977a Add Chris Trott to the Grafana team (#25378)
* Add Chris Trott to the Grafana team

Chris Trott has been proposed as a new team member and the vote achieved the super majority required.

* Governance - should be alphabetical
2020-06-05 00:20:49 +02:00
Alex Khomenko
03f241a674 Grafana UI: Add FieldSet component (#25348)
* Grafana UI: Add FieldSet

* Grafana UI: Add story

* Grafana UI: Add docs

* Grafana UI: Export FieldSet

* Grafana UI: Fix issues
2020-06-04 16:52:52 +03:00
Alex Khomenko
1790ece4d5 Search: Only move dashboards into expanded folders UI-wise (#25363)
* Search: Ony move dashboards into expanded folders UI-wise

* Search: Add tests
2020-06-04 16:28:50 +03:00
Hugo Häggmark
acae33edf9 Chore: removes unused e2e packages (#25364) 2020-06-04 14:58:25 +02:00
Ryan McKinley
a65f7d666d DataSourceWithBackend: use datasource id when datasource property is not set (#25338)
* use the instance datasource id if not specified

* better tests
2020-06-04 14:46:26 +02:00
Hugo Häggmark
00a9af00fc Templating: removes old Angular variable system and featureToggle (#24779)
* Chore: initial commit

* Tests: fixes MetricsQueryEditor.test.tsx

* Tests: fixes cloudwatch/specs/datasource.test.ts

* Tests: fixes stackdriver/specs/datasource.test.ts

* Tests: remove refrences to CustomVariable

* Refactor: moves DefaultVariableQueryEditor

* Refactor: moves utils

* Refactor: moves types

* Refactor: removes variableSrv

* Refactor: removes feature toggle newVariables

* Refactor: removes valueSelectDropDown

* Chore: removes GeneralTabCtrl

* Chore: migrates RowOptions

* Refactor: adds RowOptionsButton

* Refactor: makes the interface more explicit

* Refactor: small changes

* Refactor: changed type as it can be any variable type

* Tests: fixes broken test

* Refactor: changes after PR comments

* Refactor: adds loading state and call to onChange in componentDidMount
2020-06-04 13:44:48 +02:00
Lukas Siatka
6b4d1dceb0 Explore: updates key and refId reassignment on query row operations in Explore reducer (#25249)
* Chore: adds query keys and refId reassignment on query row removal

* Chore: updates explore reducer tests to cover query row adding, removal, refId and key reassignment

* Chore: changes refId value in explore reducer from undefined to string to avoid introducing new strict null errors

* Chore: fixes a small nitpick with array spread in Explore reducer

* Chore: removes unnecessary dispatches in query row tests in Explore reducer test
2020-06-04 12:33:16 +02:00
Hugo Häggmark
e65dbcfea1 Variables: enables cancel for slow query variables queries (#24430)
* Refactor: initial commit

* Tests: updates tests

* Tests: updates snapshots

* Chore: updates after PR comments

* Chore: renamed initVariablesBatch

* Tests: adds transactionReducer tests

* Chore: updates after PR comments

* Refactor: renames cancelAllDataSourceRequests

* Refactor: reduces cancellation complexity

* Tests: adds tests for cancelAllInFlightRequests

* Tests: adds initVariablesTransaction tests

* Tests: adds tests for cleanUpVariables and cancelVariables

* Always cleanup dashboard on unmount, even if init is in progress. Check if init phase has changed after services init is completed

* fixed failing tests and added some more to test new scenario.

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-06-04 08:59:57 +02:00
Dominik Prokop
0f5b894256 Provide correct field scoped vars for data links interpolation (#25318) 2020-06-04 08:35:15 +02:00
Josh Soref
ed92b41d47 Chore: spelling - misc (#24438)
* Chore: spelling - misc

* fix master merge
2020-06-04 06:51:30 +02:00
Ivana Huckova
cb2d1b5f93 Fix typo (#25332) 2020-06-03 22:19:14 +02:00
Marcus Andersson
927e698993 Chore: Updates CHANGELOG.md for 7.0.3 (#25331)
* Update CHANGELOG.md

* updated according to feedback.

* Update CHANGELOG.md

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2020-06-03 20:25:21 +02:00
Marcus Andersson
83065c9a2c updated latest.json. (#25333) 2020-06-03 19:52:29 +02:00
Ivana Huckova
2298bb951e Fix Query Field, remove unnecessary scrollbar (#25315) 2020-06-03 17:35:21 +02:00
Marcus Efraimsson
ba953be95f Only allow 32 hexadecimal digits for the avatar hash (#25322)
(cherry picked from commit 7a9c0e31ec)
2020-06-03 15:56:13 +02:00
Marcus Efraimsson
e5414f44aa 7.0.2 updates (#25323) 2020-06-03 15:47:24 +02:00
Alexander Zobnin
c4eca530ce Fix active LDAP sync (#25321)
* LDAP: sync only users with 'ldap' module as a most recent auth module

* LDAP: tests for searching ldap users
2020-06-03 16:28:13 +03:00
Sofia Papagiannaki
63463e0e46 Docs: Add upgrade note for modification of the cookie path (#25221)
* Add note for modification in the cookie path

* Update docs/sources/installation/upgrading.md

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

* Update docs/sources/installation/configuration.md

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-03 15:33:44 +03:00
Harrison Shoff
5d6af607d7 Variables: change VariableEditorList row action Icon to IconButton (#25217)
Fixes #21807
2020-06-03 13:32:44 +02:00
Sofia Papagiannaki
467348bded Cloudwatch: Fix dimensions of of DDoSProtection (#25317) 2020-06-03 12:58:05 +03:00
Sofia Papagiannaki
d040daa1cd Alerting: Add confirmation modals for deleting notifier (#25303)
* Add confirm modals for deleting notifier
* Update public/app/features/alerting/NotificationsListPage.tsx

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-06-03 11:04:38 +03:00
Kyle Brandt
17d3bb4287 backend: use latest Go sdk (#25304)
* uses plugin-sdk-go v0.66.0, which adds adds the ExecutedQueryString property to FrameMeta and changes s/Title/DisplayName in FieldConfig
* go mod tidy
2020-06-03 04:03:37 -04:00
Marcus Andersson
689425059f Build: adding a couple of things to try to improve the quality of the bug reports (#25282) 2020-06-03 09:52:39 +02:00
Steven Vachon
104c99f1b0 @grafana/e2e: improvements (#25307)
* Added more interaction to addPanel

* Use latest Cypress 4.x

* Updated lockfile
2020-06-02 21:08:09 -04:00
Sofia Papagiannaki
1e543d5ac1 Alerting: Ignore obsolete notification channels referenced by alerts (#25302)
* Ignore obsolete notification channel

* Fix tests

* Update pkg/services/alerting/rule.go
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-06-02 19:33:13 +03:00
Marcus Efraimsson
24673dc7d1 Docs: Adds plugin signature verification pages (#25257)
Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>
2020-06-02 16:44:02 +02:00
Hugo Häggmark
4c92bd1539 e2e: disables variables tests (#25296) 2020-06-02 16:05:31 +02:00
Josh Soref
e4fcc39e55 Chore: spelling in Go code (#24433) 2020-06-02 14:42:34 +02:00
Dominik Prokop
b12df9d64c Do not show alerts tab when alerting is disabled (#25285)
* Do not show alerts tab when alerting is disabled

* Add tests
2020-06-02 13:21:49 +02:00
Marcus Andersson
add1bcb59c Variable: removed __user.name/___.user.email from global variables and added docs for the rest of the __user variable. (#25275)
* added docs for new global variable.

* reverting the name + email so we only expose the bare minumum that should be enough for most cases.
2020-06-02 12:05:05 +02:00
Arve Knudsen
1d9f47b6a6 release_publisher: Fix Debian/RPM naming (#25276)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-02 11:01:40 +02:00
aidanmountford
f98e176d7b Templating: Add bult in __user {name, id, login, email} variable to templating system (#23378)
* Updated templating code to support the $__user variable to expose the current
userid, username, email and login.

Fixed the $__org variable as it was returning the user id instead of the ordId.

Updated the documentation to match

* Updated solution to retrieving $__user variables to pull directly from user record (thereby allowing future access to properties that
might not exist in the contextSvr).

Replicated this initialisation in the variables feature

Corrected typo's in documentation.

* Repaired typecheck issues.

* Updated patch to pull entirely from contextSrv without API calls.

* ... And removed the redundant comments.

* Updated documentation.
2020-06-02 08:47:54 +02:00
Alex Khomenko
10158c90e3 Search: uncheck dashboards after moved (#25256) 2020-06-02 09:36:04 +03:00
Kevin Retzke
51d1261a4b Elasticsearch: Adds cumulative sum aggregation support (#24820)
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-06-01 23:55:15 +02:00
Arve Knudsen
b2745c3e23 CircleCI: Fix builds of forked PRs (#25272)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-01 20:32:18 +02:00
Steven Vachon
df7647b268 @grafana/e2e: improvements and dumb fixes for #25203 (#25269)
* Fix type definitions

* Fix typo

* Added support for fetch() within tests
2020-06-01 13:55:37 -04:00
Kyle Brandt
376a9d35e4 Azure Monitor: Change response to be dataframes (#25123)
note: This is just Azure Monitor within the Azure Monitor datasource (not insights, insights analytics, or log analytics yet).

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-06-01 12:37:39 -04:00
Arve Knudsen
07582a8e85 Chore: Fix various spelling errors in back-end code (#25241)
* Chore: Fix various spelling errors in back-end code
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>>
2020-06-01 17:11:25 +02:00
Marcus Andersson
13787294c6 Variables: fix so the variable picker will remember selected options between filtering (#25119)
* added tests to verify flow.

* refactoring picker reducer.

* made all the tests green.

* removed console.log's

* fixed toggle all and making sure the correct values are set on picker open.

* added more tets.

* refactored and added table tests.

* fixed so we select values from selectedValues instead of options.

* fixed so you can navigate and select even after you have filtered a variable.

* adding tests to verify flows when toggling by highlight.

* fixed so enter always selects value before closing.

* improved the code for tags.
2020-06-01 15:06:51 +02:00
Sofia Papagiannaki
8f72d621bf Docs: Add example for updating dashboard panel alert rule (#25260) 2020-06-01 15:53:22 +03:00
Steven Vachon
78febbbeef @grafana/e2e: screenshots and panel flow (#25203)
* Cleanup

* addPanel now supports (optional) custom dashboardUid

* addPanel now supports (optional) visualization name

* Added CLI option for updating screenshot fixtures

* Added support for console.* functions within tests

* Refactored screenshot command for greater simplicity

* addPanel now sets a unique title

* Updated lockfile
2020-06-01 08:48:23 -04:00
Arve Knudsen
01ecbae2ee CircleCI: Upgrade to Go 1.14.3 and Node 12.17.0 (#25215)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-06-01 11:21:57 +02:00
Ivana Huckova
e4832fa1ee Explore: Fix very narrow Query fields on mobile (#25148)
* Fix Loki and Prometheus query fields on mobile devices

* Add min widt to Elasticsearch Query Field

* Remove width for Elastic, works nicely without updating it

* Update public/app/plugins/datasource/loki/components/LokiQueryFieldForm.tsx

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2020-06-01 10:52:57 +02:00
Utkarsh Bhatnagar
3e5d721d9c Update GOVERNANCE.md (#25177) 2020-05-31 22:03:41 +02:00
Ryan McKinley
2760889501 Chore: cleanup after previous commits) 2020-05-31 07:45:39 -07:00
Ryan McKinley
53b9f325c0 OptionsUI: support string list (#25134) 2020-05-29 13:03:45 -07:00
Ryan McKinley
d526647005 Stats: include all fields (#24829) 2020-05-29 12:36:15 -07:00
Ryan McKinley
2a6ac88a73 QueryInspector: add common way to show the raw query (#25204) 2020-05-29 11:06:33 -07:00
David Kaltschmidt
c563633870 Fix strict null error 2020-05-29 20:01:01 +02:00
Ryan McKinley
57a9e422b0 FieldConfig: implement color picker (#24833) 2020-05-29 10:09:46 -07:00
Arve Knudsen
b703f21622 CircleCI: Upgrade grafana/build-container in order to fix arm32v7-musl (#25213)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-29 16:17:00 +02:00
David
57abf39f25 Logs: Use result range instead of timepicker range for log histogram (#25027)
* Logs: Use result range instead of timepicker range for log histogram

If a logs datasource does not send histogram data for the requested
time range, the logs model computes a timeseries based on the log row
counts, bucketed by an automcatically calculated time interval. Even
when this histogram time series did not span the whole requested time
range it was still rendered in the graph across the whole range, leaving
an empty area at its start. Users find this confusing and are lead to
believe their log data is missing.

This change fixes this by anchoring the start of the timeseries on the
first log row's timestamp from the result, and adds this smaller range
as `visibleRange` to the logs model and passes it through to the logs
component that optionally takes it into account to not render the empty
area.
The interval (bucket size) is also adjusted to account for a potentially
finer resolution on the shorter visible time interval.
The bucketsize multiplier was also changed from 10 to 20 to account for
the space between the chart's bars.

* Aligned visible range with buckets

* Extract bucket size calculation and add test
2020-05-29 15:39:13 +02:00
Arve Knudsen
f0eb124278 CircleCI: Upgrade build image (#25189)
* CircleCI: Upgrade build image
* CircleCI: Upgrade grabpl

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-29 11:39:30 +02:00
Torkel Ödegaard
3532d08cbf Docs: Update template variable overview to contain the preferred variable syntax (#25176)
* Update templates-and-variables.md

Fixes #13744

* Update templates-and-variables.md

* Update templates-and-variables.md

* Update docs/sources/variables/templates-and-variables.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/variables/templates-and-variables.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/variables/templates-and-variables.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-28 17:28:24 +02:00
Diana Payton
6191e08080 Docs: Update stat-panel.md (#25191) 2020-05-28 08:18:49 -07:00
Rémy G
07208d05ba Docs: Fixed invalid JSON (#25153) 2020-05-28 07:35:19 -07:00
Marcus Efraimsson
34d5ffa562 Configuration: Fix env var override of sections containing hyphen (#25178)
Fixes so that ini-sections containing hyphen is replaced with 
underscore. Fixes an issue with backend plugin settings.

Ref grafana/grafana-image-renderer#147
2020-05-28 16:17:55 +02:00
Arve Knudsen
3de3115dec CircleCI: Fix GitHub API rate limiting (#25188)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-28 16:11:20 +02:00
Ivana Huckova
9be7d5867f Add truthy rawQuery as we are interpolating raw query only (#25110) 2020-05-28 14:28:56 +02:00
Carl Bergquist
328ea80cca switches default value for security settings (#25175)
closes #25163
2020-05-28 10:38:22 +02:00
Torkel Ödegaard
3833aa416d Transformations: Fixed transformation crash issue (#25152)
* Transformations: Fixed transformation crash issue

* Updated
2020-05-28 08:06:24 +02:00
Diana Payton
6a4f45625c Update menu.yaml (#25159) 2020-05-27 12:54:47 -07:00
Alex Khomenko
4c02e9d7ea Storybook: update dark mode addon (#25151)
* Grafana UI: Remove dark mode addon from deps

* Grafana UI: Update lockfile
2020-05-27 18:03:00 +03:00
Lukas Siatka
9d04dfe41a Explore: adds table result dataframes sorting to get response columns order based on queries order (#25131)
* Chore: updates Explore result processor to sort dataframes based on their refId so results are displayed in a correct order

* Chore: adds types to Explore ResultProcessor getTableResult DataFrames
2020-05-27 16:45:53 +02:00
Diana Payton
da027bb49f Docs: Update stat-panel.md (#25147) 2020-05-27 07:08:32 -07:00
Lukas Siatka
03a5e5348d Chore: fixes jaeger duration value in cascader option label - using milliseconds now instead of microseconds (#25129) 2020-05-27 15:44:41 +02:00
Marcus Andersson
f795a1577c Fix: make sure that we the gauge panel can handle scenario with no data. (#24938)
* make sure that we can handle the empty data scenario in the gauge.

* reverted Guague.tsx and set default values on no data.
2020-05-27 14:51:15 +02:00
DanielLyons178
47b2650a99 Postgres: Add postgres versions 11 and 12 to version selector (#24750)
Closes #24320
2020-05-27 13:51:34 +02:00
Erik
3a63044f19 CloudWatch: Add Route53 DNSQueries metric and dimension (#25125)
Co-authored-by: Ilya Stoliar <52413756+ilyastoli@users.noreply.github.com>
2020-05-27 12:00:25 +02:00
Hugo Häggmark
4cd7a88e59 Chore: updates latest.json to 7.0.1 (#25112) 2020-05-27 06:52:40 +02:00
Ilya Stoliar
d3a23a617f CloudWatch: Added AWS RoboMaker metrics and dimensions (#25090) 2020-05-26 23:58:57 +02:00
Kyle Brandt
81e3f93677 Backend Readme: Add section on avoiding simplejson (#25116) 2020-05-26 14:32:00 -04:00
Kyle Brandt
fcb9dcb0b8 AzureMonitor: Types for front-end queries (#24937) 2020-05-26 10:52:33 -04:00
Sofia Papagiannaki
139be3d7ba grafana/toolkit: Modify close milestone task to remove label from more than 100 pull requests and add dry run option (#25108)
* Fix close milestone to remove label from all the required pull requests

There used to be a limit to 100 pull requests.

* Add dry run option in close-milestone task
2020-05-26 17:26:16 +03:00
Arve Knudsen
170abf2e3d Build container: Base build image on Debian Stretch (#24967)
* scripts/build/ci-build: Fix Makefile
* scripts/build/ci-build: Base Docker image on Debian Stretch
* scripts/build/ci-build: Modify Dockerfile for fewer RUN directives
2020-05-26 15:45:49 +02:00
Zoltán Bedi
7f6b75af70 Explore: fix update url on mode change (#25084) 2020-05-26 14:54:18 +02:00
Hugo Häggmark
b1cee7a424 Update CHANGELOG.md
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-26 14:50:43 +02:00
Hugo Häggmark
9648a09a8b Update CHANGELOG.md
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-26 14:50:43 +02:00
Hugo Häggmark
4af16e7673 Update CHANGELOG.md
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-26 14:50:43 +02:00
Hugo Häggmark
012fe80607 Update CHANGELOG.md 2020-05-26 14:50:43 +02:00
Torkel Ödegaard
ac38dd872d PluginsListPage: More plugins button should open in new window (#24635)
* PluginsListPage: More plugins button should open in new window

Fixes #24622

* Updated snapshot
2020-05-26 09:33:10 +02:00
Peter Holmberg
7e5f525473 Dashboard: Get panels in collapsed rows (#25079) 2020-05-26 08:56:21 +02:00
Patrick Hemmer
231a32c4a3 Postgres: Fix add button (#25087)
Previously the add button on the postgres UI would break after the first usage. This was due to the button not being fully reset after use.
2020-05-26 06:38:49 +02:00
Steven Vachon
2724f05d5e @grafana/e2e: Avoid Cypress' issue with JSON file reporter (#25092)
https://github.com/cypress-io/cypress/issues/6406
2020-05-25 19:28:35 -04:00
Steven Vachon
68154cf98d @grafana/e2e: generate JSON report file (#25033)
* Output JSON report from Cypress

* Updated lockfile
2020-05-25 15:07:28 -04:00
Andrew Burian
a0e5f51d05 Alerting: Remove message from PagerDuty summary field (#24813)
closes #16930
2020-05-25 21:01:29 +02:00
Marcus Efraimsson
374fbdf9b6 Docker: Fix nightly vulnerability scan (#25083)
* Run each trivy scan as a separate step

* Fail build only on high and critical vulnerability

* Remove temporary job to use nightly schedule only
2020-05-25 18:56:35 +02:00
Lukas Siatka
7bf5b395b6 Chore: fixes throwing errors on 200 response with influxdb datasource (#24848)
* Chore: fixes throwing errors on 200 response with influxdb datasource

* Chore: changes influxdb error prefix from error to influxdb error
2020-05-25 17:56:16 +02:00
Sofia Papagiannaki
1e4e2642bf Fix AWS WAF and AWS DDoSProtection metrics (#25071) 2020-05-25 18:14:28 +03:00
kay delaney
f5a9b23d83 Explore/Table: Keep existing field types if possible (#24944)
* Explore/Table: Keep existing field types if possible
2020-05-25 15:54:24 +01:00
Hugo Häggmark
83d933d010 DashboardLinks: variables are resolved and limits to 100 (#25076) 2020-05-25 15:47:11 +02:00
ilyastoli
6a7cbd968f CloudWatch: Added AWS DataSync metrics and dimensions (#25054)
* CloudWatch: Added AWS DataSync metrics and dimensions
2020-05-25 16:05:52 +03:00
Peter Holmberg
0da72131b9 Table: Make last cell value visible when right aligned (#24921)
* add some padding to accommodate for vertical scrollbar

* use theme spacing

* Move padding to inner div and make it use actual scrollbar width

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-05-25 14:26:44 +02:00
Peter Holmberg
880a11773b Transform: Display correct field name when using reduce transformation (#25068)
* fix field names

* add dataframes argument and fix tests
2020-05-25 14:26:03 +02:00
Torkel Ödegaard
923faf78f1 PanelEditor: Overrides name matcher still show all original field names even after Field default display name is specified (#24933)
* FieldConfigOverrides: Should not apply defaults in override UI options

* Missed change
2020-05-25 14:05:43 +02:00
Torkel Ödegaard
3a469f6ca2 MoveDashboard: Fix for moving dashboard caused all variables to be lost (#25005)
* MoveDashboard: Fix moving caused all variables to be lost

* fix typescript issue
2020-05-25 13:33:44 +02:00
Lukas Siatka
60e7b63c33 Loki/Prometheus: updates addLabelToQuery method to prevent it from adding labels outside of selector when using Loki datasource (#25059)
* Chore: updates add label to query method in prometheus datasource to fix loki label insert

* Chore: adds addLabelToQuery test covering differences between adding label to loki vs non-loki queries

* Chore: adds an additional comment to addLabelToQuery

* Chore: renames isLokiDatasource to hasNoMetrics in addLabelToQuery
2020-05-25 12:23:35 +02:00
Dominik Prokop
9a59f387d9 Organize transformer: Use display name in field order comparer (#24984)
* Use display name in field order comparer

* Post review
2020-05-25 11:54:33 +02:00
Dominik Prokop
10041bca99 Chore: Add frontend platform ownership (#25066) 2020-05-25 11:42:43 +02:00
Zoltán Bedi
dca03a3b4a Explore: fix word break in type head info (#25014)
fixes #24154
2020-05-25 11:38:50 +02:00
Sofia Papagiannaki
a1ee62877e Stackdriver: Fix creating Service Level Objectives (SLO) datasource query variable (#25023)
* Fetch SLOs on SLO service change

* Prevent querying for SLOs if SLO service is empty

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2020-05-25 12:34:44 +03:00
Ryan McKinley
81d1f6653f Download CSV: format the dates (#24992)
* export formatted dates

* remove if(true)

* display processor
2020-05-25 11:12:53 +02:00
Dominik Prokop
ad870c07cf DataLinks: Bring back variables interpolation in title (#24970) 2020-05-25 10:24:50 +02:00
Lukas Siatka
8c1307e704 Explore: refactors LogRowContextProvider to get rid of unnecessary dimensions (#24899)
* Chore: refactors LogRowContextProvider to get rid of unnecessary array dimensions

* Chore: removes unnecessary array dimensions from LogRowContextProvider test

* Chore: changes LogRowContextProvider test to use jest mock

* Chore: updates LogRowContextProvider test

* Chore: removes unnecessary wrapper variable in LogRowContextProvider test
2020-05-25 03:44:37 +02:00
Ron Klein
57273a8d0c typo (#25050)
ENABLE_UPD_LISTENER ==> ENABLE_UDP_LISTENER
2020-05-24 18:18:03 +02:00
Chad
4b8c4b2826 Fix URL of CLA in CONTRIBUTING doc (#24962) 2020-05-23 12:46:20 +02:00
Josh Soref
a5deabbe53 Chore: spelling - grafana-data (#24436) 2020-05-22 20:06:39 +02:00
Tobias Skarhed
5f4526ca64 PanelMenu: Make menu disappear on button press (#25015)
* Fix button press outside

* Add a prop to toggle button press

* Add comments

* Remove public
2020-05-22 16:20:48 +02:00
Tobias Skarhed
84031649e3 LoginPage: Fix hover color for service buttons (#25009)
* Set explicit hover color

* Use cx
2020-05-22 16:20:28 +02:00
Carl Bergquist
b5bf54f5ac updates broken link to time range docs (#25008) 2020-05-22 15:17:19 +02:00
Ivana Huckova
4d18bda2e1 Prometheus: Fix recording rules expansion (#24977)
* First pass solution

* Refactor solution

* Add test coverage, update tests

* Fix behaviour for multiple labels, add test for this

* Add recordin rules to devenv prometheus

* Update devenv/prometheus2 instead of devenv/prometheus

* Add newlines

* Fix label matching if labels include comma, add test coverage

* Refactor

* Refactor, simplify
2020-05-22 15:16:01 +02:00
kay delaney
4f1bbdfc0a Chore: Add IAM to list of ignored terms for codespell (#25013) 2020-05-22 10:56:11 +01:00
Stephanie Closson
b7d5912ca8 Chore: Toolkit fixes to use toolkit for release (#24951)
* Various fixes and requests for toolkit:
1) Added toolkit to the alpine docker image, so we can get latest fixes without having to re-release
2) Removed cp from e2d docker image
3) Change github client to allow to specify an owner so it's not "grafana" only
4) Toolkit refers to grafana-ui and grafana-data "next", rather than canary

* added toolkit to e2e docker image

* Added tools to the e2e image for building/deploying oracle

* added shasum

* removing toolkit from images
2020-05-21 09:41:15 -06:00
Diana Payton
ff465396ab Docs: added content to _index.md pages (#24949) 2020-05-21 08:31:06 -07:00
Diana Payton
a85e05cc23 Docs: Fixed broken links (#24946)
* fixed links

* Update menu.yaml
2020-05-21 07:19:35 -07:00
kay delaney
e1f4287f70 Datasource/CloudWatch: Better handling of stats grouping (#24789)
* Datasource/CloudWatch: Better handling of stats grouping
2020-05-21 15:18:09 +01:00
Ivana Huckova
44ca05272a Query history: Add keyboard shortcut support for commenting (#24736)
* Shorten filter history label

* Add keyboard shortcuts for update comment in Query history

* Add test coverage for new keyboard shortcuts

* Update changed aria-label in tests

* Add test scenario for enter and ctr key
2020-05-21 14:51:18 +02:00
Arve Knudsen
21425f7e26 CircleCI: Fix typos (#24976)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-21 13:28:36 +02:00
Andrej Ocenas
8b267c94ec CloudWatch: Add docs for Logs (#23651)
* First draft

* Update docs/sources/features/datasources/cloudwatch.md

Co-Authored-By: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* Update docs/sources/features/datasources/cloudwatch.md

Co-Authored-By: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* Update docs/sources/features/datasources/cloudwatch.md

Co-Authored-By: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* Update docs/sources/features/datasources/cloudwatch.md

Co-Authored-By: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* Apply suggestions from code review

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* More additions and changes to CloudWatch docs

* Branding changes

* Update documentation references

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: kay delaney <kay@grafana.com>
2020-05-21 10:40:38 +02:00
Arve Knudsen
d4d9af9c96 CircleCI: Upgrade build pipeline tool (#24968)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-21 10:26:16 +02:00
Zoltán Bedi
77633db00e Dashboard: Render PanelChrome on refresh (#24940)
Fixes #23306
2020-05-21 09:55:58 +02:00
d10n
0681729e92 Docs: Fix grammar where your should be you're (#24966) 2020-05-21 09:43:31 +02:00
Steven Vachon
4c62689bc2 @grafana/e2e: fixes (#24960)
* Resolve Cypress bin path

... instead of expecting it to be in a place that it may not be, depending on de-duping/flattening of nested dependencies

* Remove dashboard before removing datasource

... it makes more sense and it fixes random issues, perhaps something to do with how the backend is implemented.

* Updated lockfile
2020-05-20 20:49:36 -04:00
Ryan McKinley
9edd8b7c7e Toolkit: update the artifact download calculation (#24828) 2020-05-20 15:59:25 -07:00
Torkel Ödegaard
8aedf81133 Graph: Legend decimals now work as expected (#24931)
* Graph: Legend decimals now work as expected

* removed new test that I could not get green
2020-05-20 17:28:41 +02:00
Mohit Nain
6099398c37 Docs: Improve wording in field configuration options docs (#24909)
* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-20 16:53:43 +02:00
Mohit Nain
25bdadab04 Fix language in docs/sources/panels/queries.md
* Update docs/sources/panels/queries.md

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-20 16:52:49 +02:00
Hugo Häggmark
0b5d818771 PanelInspector: hides unsupported data display options for Panel type (#24918) 2020-05-20 14:15:06 +02:00
Hugo Häggmark
460847f3ed Panel: shows correct panel menu items in view mode (#24912) 2020-05-20 13:56:28 +02:00
Dominik Prokop
bb099cb141 PanelEditor Fix missing labels and description if there is only single option in category (#24905) 2020-05-20 13:54:42 +02:00
kay delaney
0f174de760 Datasource/CloudWatch: Field suggestions no longer limited to prefix-only (#24855) 2020-05-20 12:25:21 +01:00
Ivana Huckova
966b0a97b1 Explore: Fix wrap lines toggle for results of queries with filter expression (#24915)
* Add pre-wrap to highlighter only for wrapped lines option

* Remove duplicated styling
2020-05-20 13:18:24 +02:00
Henry Muru Paenga
01de35d4db Jaeger datasource typo (#24920) 2020-05-20 13:14:17 +02:00
Marcus Andersson
731deb9628 Fix: adding missing icons in the elastic query editor and the single stat editor. (#24914)
* fixed issue that the icon was missing in es group by.

* fixed missing icon in the single stat value mappings.
2020-05-20 12:04:48 +02:00
Ivana Huckova
4f6fb2d46e LogsPanel: Fix scrollbar (#24850)
* Fix scrolling, besides context (wip)

* Remove autoHide

* Revert "Remove autoHide"

This reverts commit 3572718cab.

* Revert "Fix scrolling, besides context (wip)"

This reverts commit 8e11d89612.

* Fix scrolling in Logs Panel

* Rename passed prop to disableCustomHorizontalScroll
2020-05-20 11:20:45 +02:00
Lukas Siatka
de46dc7af0 Explore: adds an ability to exit log row context with ESC key (#24205)
* Chore: adds event listeners allowing to exit log row context with ESC key

* Chore: updates LogRows styles to prevent it from rendering context provider inappropriately

* Revert "Chore: updates LogRows styles to prevent it from rendering context provider inappropriately"

This reverts commit 59b06424c4.
2020-05-20 10:42:35 +02:00
Hugo Häggmark
5a6026a8c0 PanelInspect: makes sure Data display options are shown (#24902) 2020-05-20 10:07:35 +02:00
Alcarin
ad589c3201 Docs: InfluxDB variable in query (#24861)
First example of the use of a variable in influxdb query should not use a regex query but a simple one. A first time influxdb user (like me) could think that the proper way to use variable in a dashboard template is to use regex query, but it's not true. Also "=~ /$region/" may be erroniously thought identical to "= '$region'" while instead "=~ /^$region$/" is identical to "= '$region'", and for that type of query is useless (if not slower) use a regex query.
2020-05-20 10:03:08 +02:00
Mohit Nain
ead259f26d Docs: Couple of minor tweaks for better readability (#24908) 2020-05-20 10:01:25 +02:00
Kamal Galrani
e2368e623e Dashboard/Links: Fixes dashboard links by tags not working (#24773)
* Fixes dashboard links by tags not working

* removes code duplication
2020-05-20 09:54:04 +02:00
Ryan McKinley
793299af14 Transformations: Allow numbers (#24752) 2020-05-20 09:31:00 +02:00
Ivana Huckova
2f28823a42 Docs: Remove beta text from What is new in Grafana 7 (#24860)
* Remove beta text from What is new in Grafana 7

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-20 09:16:15 +02:00
Richard Hartmann
ec08881e81 GOVERNANCE.md: Fix broken links, add more links (#24817)
Signed-off-by: Richard Hartmann <richih@richih.org>
2020-05-20 09:16:00 +02:00
Diana Payton
95fdae6499 Docs: Update transformations.md (#24869) 2020-05-20 09:14:37 +02:00
Caleb Collins-Parks
5d23f0a295 Docs: fix order of arguments (#24888) 2020-05-20 09:13:51 +02:00
Diana Payton
a677cac74f Docs: Update index.md (#24887) 2020-05-20 09:13:24 +02:00
Diana Payton
22f2961cfd Docs: Update menu.yaml (#24867) 2020-05-20 09:12:56 +02:00
Victor Coutellier
3a0f2dc160 Alerting: Adds support for multiple URLs in Alertmanager notifier (#24196)
* Alerting: Adds support for multiple URLs in Alertmanager notifier

Adds support for multiple URLs in Alertmanager notifier following
alertmanager documentation for high availability setup.
Update the documentation for alertmanager notifier.

Closes #24195

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: bergquist <carl.bergquist@gmail.com>
2020-05-20 08:49:53 +02:00
crazyscience
50b2f26d80 Fixed grammar error (#24903) 2020-05-20 08:17:27 +02:00
john159753
71271ea5f4 Docs: The URL variables url returned a 404 on Data Links page (#24870)
* The URL variables link returned a 404

Im not quite sure if what i put down is the right syntax - but im trying to help and get that link updated to 
https://grafana.com/docs/grafana/latest/variables/url-variables/

* Update docs/sources/linking/data-links.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-19 13:18:58 -07:00
Diana Payton
37ae7c3af1 Docs: Update thresholds.md (#24826) 2020-05-19 07:08:24 -07:00
Zoltán Bedi
29afc2feb8 Explore: fix undo in query editor (#24797)
* Explore: fix undo in query editor

* Add e2e test for regression
2020-05-19 15:41:52 +02:00
Carl Bergquist
c62591e77b Provisioning: Makes file the default dashboard provisioner type (#24856)
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-19 15:01:04 +02:00
kay delaney
2f01f1320f Datasource/CloudWatch: Makes CloudWatch Logs query history more readable (#24795)
Now just displays query expression rather than stringified JSON
2020-05-19 11:43:43 +01:00
Pandelis Zembashis
cbf68c8ecc awsie -> advise (#24846) 2020-05-19 12:40:25 +02:00
Andrej Ocenas
220590cb54 Docs: Trace view, jaeger and zipkin (#24297)
* Add docs for trace view, jaeger and zipkin

* Update docs/sources/features/datasources/jaeger.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/jaeger.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/jaeger.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/zipkin.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/zipkin.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/zipkin.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/zipkin.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update data source docs

* Update docs/sources/features/explore/index.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Split trace UI description across multiple sections

* Update docs/sources/features/datasources/jaeger.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/jaeger.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Add screenshots

* Fix image params

* Fix params

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-19 12:26:09 +02:00
Rob Russo
9fa551cc32 Alerting: updating the victorops alerter to handle the no_data alert type (#23761) 2020-05-19 09:58:57 +02:00
Tobias Skarhed
54ee4f4f72 Migration: Select org (#24739)
* Add SelectoOrgPage

* Remove old code

* Remove import
2020-05-19 09:55:04 +02:00
Ivana Huckova
f0a161807a Docs: Remove beta info from what's new in 6.7 (#24787)
* Remove beta info from what's new in 6.7

* Remove white space edits
2020-05-19 09:53:03 +02:00
Torkel Ödegaard
b709f6ad71 TablePanel: Adding sort order persistance (#24705)
* TablePanel: Adding sort order persistance

* adds panel test dashboard for table panel
2020-05-19 09:23:25 +02:00
Marcus Olsson
6b29c11776 Add guide for streaming data sources (#24786) 2020-05-19 09:05:48 +02:00
Marcus Olsson
c5950d6380 Update plugin metadata (#24791) 2020-05-19 09:05:38 +02:00
Agnès Toulet
e79b2a3f66 Core: add location option to parse timerange (#24796)
* Core: add location option to parse timerange

* Extensions: add go-datemath to not break Enterprise
2020-05-19 08:52:43 +02:00
Sofia Papagiannaki
a40760a434 Fix spelling (#24838) 2020-05-19 09:50:55 +03:00
Andrew Rodgers
ce7b142d64 Toolkit: Update tsconfig to clear linter errors (#24824) 2020-05-18 16:00:02 -07:00
Amal
820eb5c80e Docs: Correcting abbreviations (#24748)
* Correction in abbreviation

* Minor correction in abbreviation

* Correcting abbreviation

* Correction in abbreviation

* Correcting abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Update stack_guide_graphite.md

* Update whats-new-in-v4-6.md

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Update ldap.md

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Correction in abbreviation

* Update docs/sources/guides/whats-new-in-v5.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-18 13:56:23 -07:00
Diana Payton
62a233c9bf Docs: Add 7.0 topics to menu (#24805)
* Update menu.yaml

* Update menu.yaml

* Update whats-new-in-v7-0.md

* Revert "Update whats-new-in-v7-0.md"

This reverts commit ca7a0e5a16.

* Update menu.yaml

* fixing links

* added data-links to menu, deleted old topic

* Update docs/sources/menu.yaml

Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>

* Update menu.yaml

* Update menu.yaml

* Delete links.md

Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>
2020-05-18 12:56:18 -07:00
Daniel Lee
6aeb00a859 docs: fixes ambiguous links (#24811) 2020-05-18 20:47:31 +02:00
Arve Knudsen
157c79872d Update latest.json (#24804)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-18 20:34:20 +02:00
Julien Pivotto
d4d51db21b Governance: Move projects to a sub-list (#24809)
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-05-18 20:06:48 +02:00
Richard Hartmann
9f019d5603 Give Grafana a public governance (#24802)
Signed-off-by: Richard Hartmann <richih@richih.org>
2020-05-18 19:26:35 +02:00
Boyko
1e74037eae React: refactor away from unsafe lifecycle methods (#21291)
* refactor aliasBy and PopoverCtrl components

* refactor Aggregations component

* refactor MetricSelect component

* refactor UserProvider

* popoverCtr: remove redundant logic

* simplified the MetricsSelect a bit.

* skipping testing of internal component logic.

* changed to componentWillMount.

* changed elapsed time to a functional component.

* rewrote the tests.

* fixed missing test title.

* fixed a tiny issue with elapsed time.

* rename of field.

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-05-18 18:03:29 +02:00
Marcus Efraimsson
44fae66bc0 Grafana v7.0 changelog update (#24737)
* Grafana v7.0 changelog update

* enterprise changelog

* docs: white-labeling login title and subtitle

* Add backend plugins breaking change regarding plugin signing

* Update CHANGELOG.md

Co-authored-by: Kyle Brandt <kyle@grafana.com>

* Update docs/sources/installation/upgrading.md

Co-authored-by: Kyle Brandt <kyle@grafana.com>

* Update docs/sources/installation/upgrading.md

Co-authored-by: Leonard Gram <leo@xlson.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
2020-05-18 17:52:59 +02:00
Marcus Andersson
cadadb6290 Docs: fixing link issue with time range controls in "what's new". (#24794) 2020-05-18 17:17:59 +02:00
Marcus Efraimsson
23610fbc3b Docs: Update index page with link to What's new in v7.0 (#24793) 2020-05-18 17:15:28 +02:00
Diana Payton
3818e521f1 Docs: Update menu.yaml (#24792) 2020-05-18 17:14:48 +02:00
Josh Soref
4db782fd5b ci-build: spelling (#24386) 2020-05-18 16:41:06 +03:00
zhulongcheng
9ccdd4b824 TSDB: show influxdb error message (#24393)
Closes #21647

Signed-off-by: zhulongcheng <zhulongcheng.dev@gmail.com>
2020-05-18 13:56:23 +02:00
Arve Knudsen
cc6df0ac6b CloudWatch: Clean up code (#24666)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-18 12:25:58 +02:00
Alex Khomenko
7b6deef46d Search: make anchor full-height (#24783) 2020-05-18 11:31:10 +03:00
Rydez
de1ce049e8 Docs: Align naming with Grafana.com (#24745)
* Rename to Grafana Cloud Account

* Rename 'hosted x'
2020-05-18 10:23:12 +02:00
Šimon Podlipský
9106f2f68a Makefile: Build should build bundled plugins 2020-05-18 10:22:45 +02:00
Ryan McKinley
9622536a98 Dashboard: Remove isTimezoneUtc (#24754) 2020-05-18 10:21:21 +02:00
Daniel Lee
2b23f81929 docs: add links and updates to whats new 7.0 (#24715)
* docs: add links and updates to whats new 7.0

* Apply suggestions from code review

Co-authored-by: Jessica <4947705+jessabe@users.noreply.github.com>
Co-authored-by: Carl Bergquist <carl@grafana.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Jessica <4947705+jessabe@users.noreply.github.com>

* docs: link for time zones in what's new

* Backend plugins update

Co-authored-by: Jessica <4947705+jessabe@users.noreply.github.com>
Co-authored-by: Carl Bergquist <carl@grafana.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-05-18 09:44:54 +02:00
Kamal Galrani
7b18b101b4 Dashboard/Links: Fixes open in new window for dashboard link (#24772)
* fixes target in dashboard link

* Update DashboardLinks.tsx

* Revert "Update DashboardLinks.tsx"

This reverts commit 2b23db8dc4.
2020-05-18 09:36:31 +02:00
Kamal Galrani
319051c70e Capitalize Grafana in test email notification (#24770) 2020-05-17 13:57:43 +02:00
Diana Payton
150d9b2a77 Docs: fixing links (#24757) 2020-05-15 14:33:37 -07:00
Diana Payton
0e53b15375 Docs: Update links for 7.0 (#24751)
* update menu

* updated alert list

* Update alert-list-panel.md

* Update alert-list-panel.md

* Update bar-gauge-panel.md

* Delete bar_gauge.md

* Delete dashlist.md

* Update dashboard-list-panel.md

* deleted old panels

* Update gauge-panel.md

* Update graph-panel.md

* Update heatmap.md

* Update logs-panel.md

* Update news-panel.md

* Updated stat panel

* Update table-panel.md

* Update text-panel.md

* Fixed broken links

* Update _index.md

* Update alerts-overview.md

* Update add-a-panel.md

* Update field-configuration-options.md

* removed beta text

* Update inspect-panel.md

* Update panel-editor.md

* Update thresholds.md

* Update transformations.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update transformations.md
2020-05-15 13:58:39 -07:00
Diana Payton
26964b383f Docs: Update time range controls (#24709)
* moved file and updated menu

* Delete timerange.md

* Update menu.yaml

* Update time-range-controls.md

* fixed links

* Update time-range-controls.md

* content updates

* Update time-range-controls.md

* Apply suggestions from code review

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update docs/sources/dashboards/time-range-controls.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update time-range-controls.md

* Update docs/sources/dashboards/time-range-controls.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update docs/sources/dashboards/time-range-controls.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update docs/sources/dashboards/time-range-controls.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update time-range-controls.md

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-05-15 09:53:51 -07:00
Diana Payton
f8801952bf Docs: New panel editor documentation (#24711)
* Create panel-editor.md

* content updates

* Update panels-overview.md

* Update panel-editor.md

* Update panel-editor.md

* Update menu.yaml

* Update whats-new-in-v7-0.md

* Update docs/sources/panels/panel-editor.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update _index.md

* Update docs/sources/panels/panel-editor.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: sarlinska <sarlinska@gmail.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: sarlinska <sarlinska@gmail.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: sarlinska <sarlinska@gmail.com>

* Update docs/sources/panels/panel-editor.md

Co-authored-by: sarlinska <sarlinska@gmail.com>

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: sarlinska <sarlinska@gmail.com>
2020-05-15 09:49:30 -07:00
Diana Payton
2a54398e43 Docs : Add heatmap visualization topic (#24456)
* Create heatmap.md

* Update heatmap.md

* Docs: add missing heatmap fields description.

* Update heatmap.md

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
2020-05-15 09:06:55 -07:00
Diana Payton
5a5575ef38 Docs: Create gauge-panel.md (#24698)
* Create gauge-panel.md

* Create field-configuration-options.md

* Revert "Create field-configuration-options.md"

This reverts commit 65e62d8d1f.

* Update gauge-panel.md

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2020-05-15 08:36:08 -07:00
fuku
5ddc72fb95 Docs: fix using oauth login with OneLogin (#24722) 2020-05-15 08:25:58 -07:00
Arve Knudsen
e598664be1 CircleCI: Upgrade build pipeline tool (#24740)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-15 17:16:04 +02:00
Ivana Huckova
3cdbeffdce Add displayname to TextArea component (#24734) 2020-05-15 16:20:19 +02:00
Alexander Zobnin
0fc9ad1d67 Docs: guide how to set up SAML with Okta (#24613)
* Docs: Okta SAML guide

* Apply suggestions from code review

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Docs: review fixes

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-15 16:37:35 +03:00
Arve Knudsen
7a44034d1c CircleCI: Upgrade build pipeline tool (#24732)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-15 14:15:09 +02:00
Arve Knudsen
bd42407620 CircleCI: Fix test release pipeline (#24701)
* CircleCI: Fix test release pipeline
* CircleCI: Ensure that we don't release NPM packages when testing
2020-05-15 10:02:50 +02:00
Torkel Ödegaard
7fcf2615e1 Metrictank: Fixed updated schema and dedupe strategy (#24685)
* Metrictank: Fixed updated schema and dedupe strategy

* revert schema change

* fix
2020-05-15 07:42:29 +02:00
Ryan McKinley
b73d237bf8 Query: do not require datasource name and id (#24718) 2020-05-14 20:05:16 -07:00
Marcus Andersson
6a0abf895e Docs: generated a 7.0 version of the packages reference docs. (#24708)
* fixes so we match the transformer based on name properly.

* changed the signature on the FieldMatcher.

* introduced a names option so you can filter in name specificly.

* changed so the matcher UI uses the new options format.

* moved the exported functions together.

* changing editors a bit.

* made the filter by name work with both regex and name filtering.

* fixed failing tests and make sure we always parse regex the same way.

* removed unused code.

* simplified to make the existing field overrides still working.

* fixed issue reported by hugo.

* added tests for the name matcher.

* added tests for filter by name.

* added more tests.

* generated new version of the packages docs.

* fixed spelling error.

* regenerated the docs.
2020-05-14 21:34:59 +02:00
Diana Payton
713fe39b1f Docs: Add graph panel (#24460)
* Create graph-panel.md

* Update _index.md

* Create panels-overview.md

* Update graph-panel.md

* Applied Torkel's edits

* Update graph-panel.md

* Update panels-overview.md

* Update _index.md

* Update graph-panel.md

* Create add-a-panel.md

* Update add-a-panel.md

* Update add-a-panel.md

* Revert "Update add-a-panel.md"

This reverts commit 6d51ee8712.

* Update add-a-panel.md

* Update graph-panel.md
2020-05-14 12:24:26 -07:00
Marcus Andersson
98d5633601 Fix: changing so we are using date/time values in UTC during test. (#24707) 2020-05-14 20:59:42 +02:00
Marcus Andersson
96f26cbd5b Transform: fixes so we match the field based on the proper name. (#24659)
* fixes so we match the transformer based on name properly.

* changed the signature on the FieldMatcher.

* introduced a names option so you can filter in name specificly.

* changed so the matcher UI uses the new options format.

* moved the exported functions together.

* changing editors a bit.

* made the filter by name work with both regex and name filtering.

* fixed failing tests and make sure we always parse regex the same way.

* removed unused code.

* simplified to make the existing field overrides still working.

* fixed issue reported by hugo.

* added tests for the name matcher.

* added tests for filter by name.

* added more tests.
2020-05-14 20:48:43 +02:00
kay delaney
0e8638ec92 Datasource/CloudWatch: Allows a user to search for log groups that aren't there initially (#24695)
Closes #24554
2020-05-14 19:41:38 +01:00
Andrej Ocenas
bc8c05137b CloudWatch/Logs: Fix query error when results are sparse (#24702) 2020-05-14 20:36:06 +02:00
Peter Holmberg
bf1e5aa16c PanelInspect: Make header names reflect the field name in the exported CSV file (#24624)
* fix header names and filename

* use panel title as filename

* add frame argument

* escaping double quotes

* wrapping header name in  quotes

* Fix replace

* Add test for csv double quotes escaping

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-14 20:14:23 +02:00
Robby Milo
ce8b5030c1 Docs: fix links (#24704)
* fix broken links

* fix another link
2020-05-14 20:08:32 +02:00
kay delaney
1b29d3460e Datasource/CloudWatch: Handle invalidation of log groups when switching datasources (#24703) 2020-05-14 20:06:20 +02:00
Lukas Siatka
d3a8f6d026 Explore: fixes loading more logs in logs context view (#24135) 2020-05-14 18:55:30 +02:00
Tobias Skarhed
e4cbeb5cb3 Docs: Panel inspector release highlights (#24686)
* Add Panel inspector highlight

* Update CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-14 18:23:17 +02:00
Diana Payton
59ffe4f413 Docs: Rewrite alerting docs (#24653)
* updated menu and added alerts-overview.md

* Delete metrics.md

* Update menu.yaml

* changed file name and updated menu

* Update create-alerts.md

* added file and link

* Create view-alerts.md

* added content and links

* Update pause-an-alert.md

* added content and links

* edited notification content

* updated link

* Update docs/sources/alerting/create-alerts.md

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Applied marcus e. edits

* Update docs/sources/alerting/alerts-overview.md

Co-authored-by: Carl Bergquist <carl@grafana.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Carl Bergquist <carl@grafana.com>
2020-05-14 09:19:15 -07:00
Diana Payton
28344c145f Docs: Add field config documentation (#24647)
* Create field-config.md

* Update field-config.md

* updated intros

* Update field-config.md

* changed file name

* Update whats-new-in-v7-0.md

* added links and content

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/field-configuration-options.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update field-configuration-options.md

* Update field-configuration-options.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-14 09:18:56 -07:00
Marcus Olsson
6efa3f95ae Add warning about plugin.json docs being auto-generated (#24692) 2020-05-14 17:52:13 +02:00
Lukas Siatka
ee12f5e742 Strict null fixes: updates return type of getMessageFromError, fixes QueryOperationAction props (#24690)
* Chore: updates getMessageFromError return type

* Chore: updates the position of incorrectly placed bang operator

* Chore: updates typing on dropdown typeahead directive

* Chore: updates QueryOperationAction props to require title

* Revert "Chore: updates QueryOperationAction props to require title"
2020-05-14 17:08:52 +02:00
David
25e1238022 Logs: Fix total bytes process calculation (#24691)
- log stats for Loki are per query
- this change tracks the query stats by refId, preventing the summing of
    the same stats across multiple series of the same response.
2020-05-14 16:27:26 +02:00
Jess
405145fdd3 @grafana/ui: Checkbox docs (#23141)
* Add "When to use" info to Checkbox.mdx

Added info about how checkboxes generally work and when to use another component instead.

* Replaced words with proper component names

* Update Checkbox.mdx

Elaborate on explanations. Add examples for how to use checkboxes the user-friendliest way.

* Apply suggestions from code review

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-14 16:17:34 +02:00
Agnès Toulet
7fbed90b89 Datasources: fix pre styles (#24687) 2020-05-14 16:04:53 +02:00
Torkel Ödegaard
c59f5436c0 TablePanel: Do not include angular options in options when switching from angular panel (#24684) 2020-05-14 16:03:27 +02:00
Andrej Ocenas
2b9cc8ba30 CloudWatch/Logs: Fix autocomplete after by keyword (#24644) 2020-05-14 15:52:47 +02:00
Marcus Efraimsson
0c8ee5b2c9 Add deprecation note about the unofficial first version of backend plugins (#24675) 2020-05-14 15:37:44 +02:00
David
01bbcf4eea Editor: New line on Enter, run query on Shift+Enter (#24654)
* Editor: New line on Enter, run query on Shift+Enter

- default Enter behavior on query editor fields should be a new line
- special behavior should require a special key: running a query is now
done on Shift-Enter
- Plugins order had to be changed because when typeahead is shown, Enter
is accepting the suggestion

* Run with ctrl-enter, hint in query placeholder

* Fix Kusto field behavior for Enter

* Fix Kusto field behavior for default suggestion
2020-05-14 15:13:45 +02:00
Lukas Siatka
e11504dcd2 Datasources: fixes async mount errors (#24579)
* Chore: updates Elasticsearch DataLinks test async wrapper mount

* Chore: updates Loki DervidedFields test async wrapper mount

* Chore: fixes typecheck issues

* Chore: small strict-null fix
2020-05-14 14:25:52 +02:00
Marcus Olsson
b4044e3e51 Docs: Update Explore plugin docs (#24667)
* Update Explore plugin docs

* Fix review comment
2020-05-14 14:15:18 +02:00
Andrej Ocenas
e754bcdcf9 CloudWatch: Unify look of query mode select between dashboard and explore (#24648) 2020-05-14 14:12:11 +02:00
Peter Holmberg
abfa1b5d74 Docs: Updated instructions on screens for Dashboard Import (#24584)
* change text and image links

* Review feedback

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* uppercase JSON

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-14 14:10:57 +02:00
Andrej Ocenas
c60765a178 CloudWatch/Logs: Fix panic on multiple aggregations queries (#24683) 2020-05-14 14:10:23 +02:00
Marcus Olsson
141c21c906 Docs: Clean up plugin.json schema (#24682) 2020-05-14 14:05:08 +02:00
Hugo Häggmark
51509bb2ff Units: adds scale symbol for currencies with suffixed symbol (#24678) 2020-05-14 13:49:21 +02:00
Dominik Prokop
cfac591234 SaveDashboard: Allow editing provisioned dashboard JSON and add confirmation when JSON is copied to dashboard (#24680) 2020-05-14 13:45:26 +02:00
Zoltán Bedi
660f2b4e99 Fallback to process.cwd() when PWD is not present (#24677)
Fixes #24582 - Error running yarn dev command
2020-05-14 13:36:25 +02:00
Marcus Efraimsson
77148ef616 Docs: Backend plugins conceptual overview (first iteration) (#24668)
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>
2020-05-14 13:21:26 +02:00
Carl Bergquist
7610d5717a Provisioning: Use proxy as default access mode in provisioning (#24669)
fixes #24591
fixes #19501
2020-05-14 12:40:00 +02:00
Torkel Ödegaard
2f22781cd8 Orgs: Add future deprecation notice (#24502)
* Orgs: Fist draft of orgs deprecation infobox

* adds warning about potentially deprecating orgs (#24512)

* Updates

* Fixed ts issue

Co-authored-by: Carl Bergquist <carl@grafana.com>
2020-05-14 12:16:26 +02:00
Tobias Skarhed
85ae144a87 Changelog and Readme: Update packages to beta and add Select breaking change (#24670) 2020-05-14 11:58:26 +02:00
Hugo Häggmark
9481b7bcf2 Datasource Config: adds back correct styles for autofill fields (#24671) 2020-05-14 11:56:00 +02:00
Jess
54a90166a5 @grafana/ui: Buttons documentation (#23144)
* Add info: when to use which and how to mix buttons

* Update description for Button.mdx

- add note about scenario without primary action
- add note about secondary button being the default

* Refine docs info for secondary and destructive

Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
2020-05-14 11:39:34 +02:00
Marcus Olsson
e323f7be51 Update plugin metadata (#24633) 2020-05-14 11:21:31 +02:00
Tobias Skarhed
37a2ac20c3 Search: Fix select item pressing enter 404 (#24634)
* Remove appSubUrl for navigation

* stripBaseFromUrl

* Remove unused imports
2020-05-14 11:17:09 +02:00
Jess
f1386c7892 @grafana/ui: Update RadioButtonGroup documentation (#23143)
* Add "When to use" info to RadioButtonGroup.mdx

* Clarify more clearly when to use 'Select' instead

* Update RadioButtonGroup.mdx

Add line explaining why we want select for more than four options instead of a radio button group

* Update RadioButtonGroup.mdx

remove part about when elements are triggering changes.

Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
2020-05-14 10:51:14 +02:00
Leonard Gram
c066c6047e Docs: adds SAML and Okta to What's new in 7.0 (#24629)
* Docs: adds SAML and Octa to What's new in 7.0

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>

* Docs: review fixes

* Docs: review feedback

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
2020-05-14 10:47:24 +02:00
Dominik Prokop
f769ed035d PanelEdit: Make sure side pane is displayed with tabs by default (#24636)
* Make sure side pane is displayed with tabs by default

* Update e2e tests for
2020-05-14 09:55:40 +02:00
Hugo Häggmark
083a2ce220 Templating: fixes filtering options with more than 1000 entries (#24614)
* Templating: fixes filtering options with more then 1000 entries

* Chore: reduces strict null errors by 2
2020-05-14 08:09:21 +02:00
Hugo Häggmark
622246d56d Templating: fixes so Textbox variables get value from url (#24623) 2020-05-14 07:41:42 +02:00
Diana Payton
f97d021c58 Docs: Create table-panel.md (#24457)
* Create table-panel.md

* Update docs/sources/panels/visualizations/table-panel.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/visualizations/table-panel.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update table-panel.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-13 16:30:49 -07:00
Amal
6c32a5b9bc Docs: Minor typo correction (#24649) 2020-05-13 14:34:10 -07:00
Amal
033e5e53da Docs: Grammatical corrections (#24646)
* Grammatical corrections

* Grammatical correction
2020-05-13 14:33:37 -07:00
Arve Knudsen
0860dfe45d CloudWatch: Fix variable naming (#24650)
* CloudWatch: Fix variable naming
2020-05-13 21:17:06 +02:00
Dan Bond
792e99918c tsdb/cloudwatch: always return underlying metrics query errors (#24632)
* tsdb/cloudwatch: always return underlying errors
2020-05-13 20:36:01 +02:00
Andrej Ocenas
0f964c0214 Zipkin: Fix error when span contains remoteEndpoint (#24524) 2020-05-13 19:32:45 +02:00
Arve Knudsen
8e5a3a578a CloudWatch: Don't assume that errors are awserr.Error instances (#24641)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-13 18:57:23 +02:00
Diana Payton
4cdd8bd933 Docs: Add transformations documentation (#24597)
* Create transformations.md

* Update transformations.md

* Create calculations-list.md

* Update transformations.md

* Update menu.yaml

* Update transformations.md

* Update calculations-list.md

* updated menu

* Delete text.md

Deleted old text panel topic

* Update transformations.md

* added content

* Update transformations.md

* Update whats-new-in-v7-0.md

* Update transformations.md

* Update docs/sources/panels/transformations.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/transformations.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/transformations.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/calculations-list.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/transformations.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update transformations.md

* fixed broken links

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-13 08:29:49 -07:00
thameezb
16297da298 Email Notifications: Add StartTLSPolicy config flag (#24574) 2020-05-13 16:33:40 +02:00
Ivana Huckova
285ea7595d Explore: Fix rendering of react query editors (#24593)
* Fix rendering of react query editors

* Refactor solution for improved readability

* Update

* Add test coverage

* Refactor
2020-05-13 15:56:22 +02:00
Diana Payton
f29b70b442 Docs: Create add-a-panel.md (#24598)
* Create add-a-panel.md

* Update add-a-panel.md
2020-05-13 06:52:12 -07:00
Amal
8e0ba46d50 Typo correction in docs (#24551)
* Typo correction in docs

* Minor typo correction
2020-05-13 15:47:45 +02:00
Amal
c075576f3a Minor correction in documentation (#24472) 2020-05-13 15:46:27 +02:00
Amal
c8bae5fd3a Minor change in docs (#24471) 2020-05-13 15:45:11 +02:00
Amal
cfaf3e309c Minor typo correction (#24552) 2020-05-13 15:43:56 +02:00
Amal
85add88b8d Grammatical correction (#24550) 2020-05-13 15:42:54 +02:00
kay delaney
bfd337dd00 Datasource/CloudWatch: Correctly interpolate variables in CloudWatch Logs queries (#24619)
Closes #24603
2020-05-13 14:38:42 +01:00
kay delaney
277aee8642 Datasource/CloudWatch: Prevents hidden dataframe fields from displaying in tables (#24580)
* Datasource/CloudWatch: Prevents hidden dataframe fields from displaying in tables
2020-05-13 14:34:23 +01:00
Agnès Toulet
cd9cbe5e16 SharedPreferences: fixes so UI Theme can be set back to Default (#24628) 2020-05-13 15:08:49 +02:00
Diana Payton
c1b057a57d Docs: Add linking topics (#24408)
* Create _index.md

* Create linking-overview

* Create dashboard-links

* Update linking-overview

* Added content, renamed files

* Moved and renamed files

* renamed file

* Update link-panels.md

* Added URL variables and changed content

* Delete links.md

Content moved to other files

* Update menu.yaml

* Delete timerange.md

Content moved to URL variables

* content updates

* updated links

* Revert "Delete timerange.md"

This reverts commit 662672c03b.

* Create data-links.md

* Revert "Delete links.md"

This reverts commit c83ba7eed3.

* content updates

* Added data links topic

* Update _index.md

* Update _index.md

* Update docs/sources/linking/data-links.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update data-links.md

* Update data-links.md

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-13 06:08:11 -07:00
Emil Tullstedt
87c2e58dfd Reporting: Update docs to link to API where mentioned (#24621) 2020-05-13 13:58:55 +02:00
Marcus Efraimsson
aa63404211 Docs: Add scale query string parameter to share panel (#24599)
Document the new scale query string parameter introduced in #23625.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-13 13:39:24 +02:00
Ryan McKinley
97e2837d7c Transformers: fix binary operation (#24604)
* check the display name

* remove unchanged line

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-13 13:12:08 +02:00
Torkel Ödegaard
f23ecc40b4 Inspect: Allow showing data without transformations and field config is applied (#24314)
* Inspect: Should not subscribe to transformed data

* PQR- allow controll whether or not field overrides and transformations should be applied

* UI for inspector data options

* fix

* Null check fix

* Update public/app/features/dashboard/components/Inspector/InspectDataTab.tsx

* Update public/app/features/dashboard/components/Inspector/InspectDataTab.tsx

* Apply transformations by default

* Update panel inspect docs

* Fix apply overrides

* Apply time formatting in panel inspect

* fix ts

* Post review update

* Update docs/sources/panels/inspect-panel.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* lazy numbering

* fix ts

* Renames

* Renames 2

* Layout update

* Run shared request without field config

* Minor details

* fix ts

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-13 13:03:34 +02:00
Dominik Prokop
9e24c0944f Transformations: Make transform dropdowns not cropped (#24615) 2020-05-13 13:01:10 +02:00
Emil Tullstedt
ab12c908d8 Reporting: Document layouts (#24338) 2020-05-13 11:50:43 +02:00
Agnès Toulet
8e8aae06a3 Docs: Enterprise improvements (#24395)
* Docs: fix LDAP link

* Docs: add License Expiration behavior for usage insights

* Docs: update auth overview with a features matrix

* Docs: refactor Enterprise overview

* Docs: updates team sync supported providers

* Docs: add auth feature matrix missing versions

* Docs: fix license expiration indent

* Docs: small improvements

* Docs: apply PR feedbacks

* Docs: fix typo

* Docs: fix typo Oauth -> OAuth
2020-05-13 11:23:01 +02:00
Alex Khomenko
04c75265b5 Fix Safari Icon alignment (#24610) 2020-05-13 11:08:19 +02:00
Arve Knudsen
03940c8471 CircleCI: Upgrade grabpl in order to fix package publishing (#24609)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-13 10:46:29 +02:00
Peter Holmberg
1848900070 Chore: Fix strict null errors on getting started (#24605)
* fix strict nulls

* fix typings
2020-05-13 10:02:20 +02:00
Amal
5f45a039b2 Grammatical correction (#24592) 2020-05-13 09:45:03 +02:00
Peter Holmberg
36fa54a288 Onboarding: New getting started panel (#23826)
* image and card component

* change height of getting started panel

* progress

* setup basic step

* advanced steps

* step forward and backward

* do checks

* fix button size

* minor styling on butttons

* add correct links

* save tutorial click in localstorage

* types and gradients

* fix gradients

* use spacing variable

* lots of responsiveness

* add links to help

* Getting started work

* redo according to split panel design

* minor touch ups

* new background images

* split up docs card to different hrefs

* welcome bar touch ups

* hide icon on small screens

* transparent false on welcome banner

* fix urls

* source tag in welcome urls

* move images to panel dir, removed unused images

* Nicer loading message

* make the cards look nicer on wide screens

* append utm tag on render instead

* replace width with margin

* new background image for light

* remove target on a element

* removing buttonselect, add tag to href

* more polishing

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-05-13 08:00:40 +02:00
Marcus Andersson
cab066f8ce TimePicker: some fixes and polish after testing feedback (#24585)
* make sure we render the delaynow value from dashboard to the time picker settings.

* Added the time zone in the tooltip.
2020-05-13 07:26:03 +02:00
Hugo Häggmark
2d19c046f2 Table: fixes Cannot read property subRows of null (#24578) 2020-05-13 05:46:05 +02:00
Andrej Ocenas
5feef22034 CloudWatch/Logs: Make stats hint show consistently (#24392) 2020-05-13 00:13:16 +02:00
Marcus Olsson
75de6165fc Docs: Add guides to plugin overview (#24560)
* Add guides to plugin overview

* Update docs/sources/developers/plugins/_index.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-12 23:31:36 +02:00
Arve Knudsen
824eb94efe CircleCI: Update grabpl to 0.4.5 in order to include manifest with GEL (#24577)
* CircleCI: Update grabpl to 0.4.5
* GEL: Upgrade version
2020-05-12 21:06:24 +02:00
Alex Malott
846142eebd Emails: Fixed a (very small) typo (#24586) 2020-05-12 18:09:24 +02:00
kay delaney
c1919944ea Datasource/CloudWatch: Fixes various autocomplete issues (#24583) 2020-05-12 16:32:48 +01:00
Andrej Ocenas
a50cb6aa1f Loki: Allow multiple derived fields with the same name (#24437) 2020-05-12 17:20:00 +02:00
Marcus Olsson
0ac006edf5 Docs: Add Explore guide for plugins (#24547)
* Add Explore guide for plugins

* Fix review comments
2020-05-12 17:06:14 +02:00
Tobias Skarhed
0c1f1dd8fd OrgUsersTable: Fix width when there are long cells in table (#24533)
* Set width for cells and text overflow

* Add title and update snapshot
2020-05-12 16:47:38 +02:00
Alex Khomenko
15ac76a47b Search: Safari UI fixes (#24567)
* Search: Add height: 100% to page containers

* Search: Reset TagOption display to block

* Search: Add title to result list

* Search: Use flex-basis vs height

* Search: Remove IconButton

* Search: Do not shrink select options

* Search: Fix hasEditPermissionInFolders

* Search: Update tests

* Search: Fix prop

* Remove select wrapper class

* Update snapshot
2020-05-12 17:10:48 +03:00
Arve Knudsen
892f9f789c Plugins: Fix manifest verification (#24573) 2020-05-12 15:48:24 +02:00
Andrej Ocenas
20f0ee2f22 Do not set insertText if the same as label (#24581) 2020-05-12 14:23:10 +01:00
Torkel Ödegaard
8de10a8b9f Field: UI & Code consistency Title -> Display name (#24507)
* Field: Change getFieldTitle to getFieldDisplayNamne and change the NAME of the title field config from Title to Display name

* Review feedback

* fixed unit tests

* Rename fieldConfig.title to displayName

* Fixed tests

* Added migration

* Renamed getFrameDisplayTitle to getFrameDisplayName
2020-05-12 13:52:53 +02:00
Rotem Reiss
125ba95686 Security: Tag value sanitization fix in OpenTSDB data source (#24539)
Adds HTML sanitization to the tag value of the OpenTSDB datasource.

Fixes #24537
2020-05-12 13:19:00 +02:00
Arve Knudsen
164242f5fd Data sources: Don't fail if URL doesn't specify protocol (#24497) 2020-05-12 13:04:18 +02:00
Arve Knudsen
0475f96347 CircleCI: Speed up by testing and building in parallel (#24575) 2020-05-12 12:55:42 +02:00
Alex Khomenko
0396b220a3 Search: Save folder expanded state (#24496)
* Search: Save folder expanded state

* Search: Remember expanded state on search close
2020-05-12 13:51:00 +03:00
Hugo Häggmark
7d800e7318 e2e: adds verify release (#24568) 2020-05-12 12:48:26 +02:00
Dominik Prokop
bffa0fa4f6 UI spelling: use US form of visualization (#24558) 2020-05-12 11:11:54 +02:00
Zoltán Bedi
67dab0b767 Update light variable theme for dropdown (#24566) 2020-05-12 11:11:24 +02:00
Hugo Häggmark
74ddfe07a2 Admin Settings: makes long settings line break (#24559) 2020-05-12 10:54:25 +02:00
Marcus Andersson
28f54bc2f7 TimePicker: fixed so you can enter a relative range in the time picker without being converted to absolute range (#24534)
* fixed so you can enter a relative date in the time range form.

* did some small adjustments to make sure proper value is stored.
2020-05-12 09:47:50 +02:00
Daniel Lee
64046e9a27 azuremonitor: limit macro regex to known macros (#24528) 2020-05-12 08:52:42 +02:00
Hugo Häggmark
7992f8bfbc Graphite: makes query annotations work again (#24556) 2020-05-12 08:33:45 +02:00
Marcus Andersson
cb4266bae0 PanelEditor: Fix so defaults is selected when datasource can't be found. (#24526) 2020-05-12 08:03:52 +02:00
Diana Payton
ffda007415 Docs: Add queries.md (#24363)
* Create queries.md

* Delete mixed.md

* Update _index.md

* Update menu.yaml

* Update queries.md

* Update menu.yaml

* Update queries.md

* Update queries.md

* Update queries.md

* Update docs/sources/panels/queries.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/queries.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/queries.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update queries.md

* Update queries.md

* Update queries.md

* Update queries.md

* Update queries.md

* Update queries.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-11 14:52:31 -07:00
Marcus Olsson
8fee956ce8 Docs: Add docs for variable interpolation in plugins (#24446)
* Add docs for variable interpolation in plugins

* Fix review comments
2020-05-11 23:26:10 +02:00
Ivana Huckova
143a26769b Prometheus: Show results of instant queries only in table (#24508)
* Show results of instant queries only in table, remove them from graph

* Update table model
2020-05-11 22:47:15 +02:00
Ryan McKinley
c8d3d15292 LabelsToFields: avoid MutableDataFrame (#24493) 2020-05-11 13:41:33 -07:00
Marcus Olsson
1ece878037 Docs: Add annotations guide for data source plugins (#24432)
* Add annotations guide for data source plugins

* Fix review comments
2020-05-11 22:03:53 +02:00
Torkel Ödegaard
5caf7f59e6 PanelEditor: Fixed issue changing a panel from transparent back to normal (#24483)
* PanelModel: Fixed issues with persisting some changes

* Fixed other issues
2020-05-11 22:03:43 +02:00
Amal
3f31028bf8 Refactoring one of the statement (#24542) 2020-05-11 21:39:38 +02:00
Amal
be2f932cac Minor correction in docs (#24545) 2020-05-11 21:37:50 +02:00
Diana Payton
6883626834 Docs: Add dashboard list (#24452)
* Create _index.md

* Create dashboard-list-panel.md

* Update dashboard-list-panel.md
2020-05-11 12:12:15 -07:00
Diana Payton
cde86ff567 Docs: Added Alert list visualization (#24453)
* added alert list panel topic

* Update alert-list-panel.md
2020-05-11 12:12:04 -07:00
Marcus Olsson
b8bc10018a Docs: Add logs data source guide (#24423) 2020-05-11 20:15:22 +02:00
Amal
444058a569 Minor change in docs (#24543) 2020-05-11 20:11:10 +02:00
kay delaney
db91961405 Datasource/CloudWatch: Results of CloudWatch Logs stats queries are now grouped (#24396)
* Datasource/CloudWatch: Results of CloudWatch Logs stats queries are now grouped
2020-05-11 18:52:15 +01:00
Diana Payton
98de101bd8 Docs: Add Logs panel visualization (#24450)
* added log topic

* added logs-panel.md

* Update docs/sources/panels/visualizations/logs-panel.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-11 10:24:42 -07:00
Daniel Lee
67ed579647 azuremonitor: Deep linking from Log Analytic queries to the Azure Portal (#24417)
* azuremonitor: add gzipped and base64 encoded query to metadata

for Azure Log Analytic query responses

* azure monitor: add fields to metadata for log analytics

* azuremonitor: correction to text in query editor

* azuremonitor: adds subscription id to result metadata

* azuremonitor: build deep link url for Log Analytics

Most of the information needed for building the url
comes from the backend. The workspace friendly name
and the resource group that the workspace belongs
to are fetched in a separate API call. This call is
cached otherwise there would be a workspaces call
per query on the dashboard.

* docs: azure log analytics deep linking

* Apply suggestions from code review

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* docs: fixing review comments for azure monitor

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-11 19:11:03 +02:00
kay delaney
ae7f0aeb7a Datasource/CloudWatch: Switch to metrics mode, logs API, when choosing stats query from cheatsheet (#24398)
* Datasource/CloudWatch: Switch to metrics mode, logs API, when choosing stats query from cheatsheet
2020-05-11 17:43:53 +01:00
Andrej Ocenas
55533d12fd CloudWatch/Logs: Fix fields not being refetched when log group changed (#24529) 2020-05-11 18:09:14 +02:00
Tobias Skarhed
cb74bc6828 GraphLegend: Only display scrollbar if necessary (#24527) 2020-05-11 17:56:32 +02:00
Steven Vachon
b2f8f25995 @grafana/e2e: support regex for addDataSource (#24461) 2020-05-11 10:51:59 -04:00
Diana Payton
d5991a4b88 Docs: Create bar-gauge-panel.md (#24458) 2020-05-11 07:32:09 -07:00
Diana Payton
d5e7a253b3 Docs: Add stat panel (#24459)
* Create stat-panel.md

* Update stat-panel.md
2020-05-11 07:31:31 -07:00
Andrej Ocenas
2d29997bda CloudWatch/Logs: Fix suggestions of fields after comma (#24520) 2020-05-11 16:10:49 +02:00
Diana Payton
9dd68dae36 added text panel to visualizations (#24454) 2020-05-11 15:46:43 +02:00
kay delaney
c26374b0b2 Datasource/CloudWatch: Usability improvements (#24447)
* Datasource/CloudWatch: Improve handling of long-running queries

* Datasource/CloudWatch: Make order of dataframe fields consistent
2020-05-11 14:44:13 +01:00
Andrej Ocenas
876011d931 CloudWatch/Logs: Language provider refactor and test (#24425) 2020-05-11 15:00:20 +02:00
Dominik Prokop
2e69b86990 PluginsList: Remove unused panel options (#24501)
* Remove unused panel options

* satisfy ts
2020-05-11 14:26:25 +02:00
Torkel Ödegaard
f13a15ae48 TablePanel: Fixed persisting column resize time series fields (#24505) 2020-05-11 14:25:26 +02:00
David
34f61934a1 Editor: No default suggestion selected (#24479)
* QueryField: No default suggestion selected

It's been a long-standing issue that careless typing lead to unwanted
tab completion insertions. With this change the completion item list no
longer selects the first item by default. The user has to actively click
ArrowDown to select the first one.

* Added type export

* Remove width limit of typeahead list
2020-05-11 14:01:35 +02:00
Andrej Ocenas
b16202acc2 CloudWatch/Log: Fix field autocomplete suggestions inside function (#24406)
* Fix autocomplete inside function

* Remove debug log

* Add comment and return type
2020-05-11 12:56:32 +02:00
Andrej Ocenas
d385045d16 CloudWatch/Logs: Add error message when log groups are not selected (#24361)
* Add error message

* Fix empty check
2020-05-11 12:53:42 +02:00
Marcus Andersson
a521a39ebf TimeZone: added e2e tests for the custom time zone support. (#24442) 2020-05-11 11:46:57 +02:00
Hugo Häggmark
e341d4b26f Reduce Transform: sort order is preserved as entered by user (#24494) 2020-05-11 10:47:05 +02:00
Diana Payton
c3b6ee1456 added news panel topic (#24451) 2020-05-11 10:42:49 +02:00
Dominik Prokop
c5fc18ac02 grafana/toolkit: Support paging in cherrypick task (#24402)
* Support paging in cherrypick task

* Update packages/grafana-toolkit/src/cli/tasks/cherrypick.ts

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

* Update packages/grafana-toolkit/src/cli/tasks/cherrypick.ts

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

* Do not cherry pick closed PRs

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-11 10:24:06 +02:00
Dominik Prokop
2f5003ebf1 Packages: Fix cross dependencies version for canary releases (#24489) 2020-05-11 08:20:13 +02:00
Torkel Ödegaard
352f22042c StatPanels: Hide calc option if all values is selected (#24416) 2020-05-11 08:10:24 +02:00
Richlv
367501eeab Packaging: Fix systemd service consistency (#24466)
Fix double "then".
As previous systemd commands do not include ".service" postfix, remove it also for the "enable" command.
2020-05-10 21:10:01 +02:00
Amal
75e2da0c1d Docs: Replacing a word for better readability (#24475) 2020-05-10 21:09:25 +02:00
Peter Holmberg
c671fdbbf8 Buttons: Use text color (#24439) 2020-05-10 21:06:25 +02:00
Rotem Reiss
96cb6d668f Admin: Cleanup old admin users edit page, see #19139 (#24463) 2020-05-10 21:05:02 +02:00
Torkel Ödegaard
e333d61b97 OldTable: Make old table options align & look better (#24485) 2020-05-10 17:11:51 +02:00
Yazdan
1fafcd1562 Docs: add disable_brute_force_login_protection to configuration document (#24448) 2020-05-10 13:41:33 +02:00
Amal
482886279c Minor change in Grafana docs (#24476) 2020-05-09 19:52:44 +02:00
Amal
694bc4b1ed Correction in documentation (#24474) 2020-05-09 19:11:26 +02:00
Amal
aa4366e6ca Minor change in docs (#24473)
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-09 19:10:48 +02:00
Amal
8694970538 Minor correction in documentation (#24469) 2020-05-09 15:00:33 +02:00
Amal
e8cd094f01 Minor grammatical correction in docs (#24468) 2020-05-09 15:00:07 +02:00
kay delaney
a655aa1ca8 Datasource/CloudWatch: Add data links to CloudWatch logs for deep linking to AWS (#24334)
* Datasource/CloudWatch: Fix encoding of CloudWatch Logs deep link URL

* Adds data links to cloudwatch logs responses for deep linking to aws console

* Implements PR feedback
2020-05-08 17:03:15 +01:00
kay delaney
35c097e475 Logs: Clicking "Load more" from context overlay doesn't expand log row (#24299)
Closes #24184
2020-05-08 17:02:23 +01:00
Andreas Opferkuch
221042c293 Explore: Revert QueryRows refactor (#24444)
While query fields should not rely on getting unmounted when the data source changes (and instead react to that change in e.g. componentDidUpdate()), query fields other than PromQueryField still rely on this.
2020-05-08 17:49:47 +02:00
Marcus Olsson
a9f39a4149 Add docs for user management (#24277)
* Add docs for user management

* WIP
2020-05-08 17:33:59 +02:00
Alexander Zobnin
7e6ac12b9a Chore: move dataFramesReceived event to @grafana/data (#24443) 2020-05-08 17:33:36 +03:00
Tobias Skarhed
8257633b1d Storybook: Position panel to right (#24429) 2020-05-08 15:57:40 +02:00
Alexander Zobnin
d7a5f3ef80 Docs: SAML role and team sync (#23986)
* SAML: add docs for config options

* SAML: role and org mapping docs

* SAML: team sync docs

* Docs: add SAML to the team sync providers list

* Apply suggestions from code review

Co-Authored-By: Leonard Gram <leo@xlson.com>

* SAML: add `assertion_attribute_org` option to the org mapping example config

* SAML: write config sections as steb-by-step tasks

* SAML: docs tweaks

* SAML docs: minor style fixes

* SAML docs: update availability note

* Docs: add enterprise config page

* Docs: link saml options to the config page

* Apply suggestions from code review

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Docs: rename configuration to enterprise-configuration

* Docs: user's -> user

Co-authored-by: Leonard Gram <leo@xlson.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-08 16:10:33 +03:00
Carl Bergquist
bd3ca55117 Docs: Updates transform names and descriptions in whats new blogpost. (#24428)
* updates transform names and descriptions

* typo
2020-05-08 14:21:39 +02:00
Leonard Gram
de8c1b9ad7 Reporting: tzdata is needed for reporting (#24422) 2020-05-08 14:17:12 +02:00
Arve Knudsen
c6bba9019d Chore: Update latest.json (#24424)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-08 12:50:44 +02:00
Dominik Prokop
63d25944c4 Minor UI touches (#24371)
* Justify to alignment in stat

* No stats label in inspect

* Use sentence case in panel names

* typos

* typo

* Typo

* Query -> query options

* prettier

* Transformer -> transform data

* Do not show deprecated plugins in the viz picker

* Update viz picker layout
2020-05-08 12:40:42 +02:00
Arve Knudsen
a86639356e Chore: Update changelog (#24421)
* Update changelog
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
2020-05-08 12:28:18 +02:00
Tobias Skarhed
f714357fbf TablePanel: Fix JSON tooltip positioning (#24420)
* Fix block element and overflow

* Width not needed

* Add to styles file
2020-05-08 12:11:41 +02:00
Torkel Ödegaard
243fa5ea63 Prometheus: Fix for prometheus legend formats for instant time series queries (#24407)
* Prometheus: Fix for prometheus legend formats for instance time series queries

* correct old test
2020-05-08 07:59:35 +02:00
Steven Vachon
648dda96e9 @grafana/e2e: only skip password reset on local tests (#24411) 2020-05-07 20:06:10 -04:00
Ivana Huckova
f37c64c80c Elastic: Fix building of raw document queries resulting in error Unknown BaseAggregationBuilder error (#24403)
* Fix building of elastic document query

* Update comments
2020-05-07 21:43:41 +02:00
Tobias Skarhed
5e50409000 Forms: Remove Forms namespace [BREAKING] (#24378)
* Remove index and export

* Fix Forms import
2020-05-07 21:41:26 +02:00
Dominik Prokop
62aa15f760 PanelEdit: Field Config options Fix numeric option bug (#24397) 2020-05-07 21:40:23 +02:00
Ryan McKinley
e36a6ac476 TransformersUI: move transformer ui to grafana app (#24360) 2020-05-07 10:53:58 -07:00
Amal
a3ffbd9a70 Docs: Minor correction in documentation (#24259) 2020-05-07 10:14:32 -07:00
Amal
948cdf835d Docs: Minor correction in documentation (#24306) 2020-05-07 10:11:45 -07:00
Amal
e07fdbd881 Docs: Grammatical correction (#24248) 2020-05-07 10:07:37 -07:00
Marcus Olsson
fc0c717bfb Restructure plugin docs (#24381) 2020-05-07 18:45:52 +02:00
Marcus Efraimsson
f88ec875a6 Update changelog for v7.0.0-beta2 (#24384)
* Update 7.0 breaking changes

* Update changelog for v7.0.0-beta2

* Apply suggestions from code review

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Enterprise update

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-07 17:51:57 +02:00
Marcus Olsson
eff194e1a0 Docs: Add plugin overview (#24332)
* Docs: Add plugin overview

* Add plugin dev overview

* Fix review comments

* Fix review comments
2020-05-07 17:45:50 +02:00
Dominik Prokop
07fc248626 Field/panel options - do not trigger change events onChange, but onBlur or enter key press (#24388)
* Field options - do not trigger change events onChange, but onBlur or enter key press

* Review changes

* fix ts
2020-05-07 16:07:49 +02:00
Lukas Siatka
bb436e7447 Chore: fixes PermissionListItem strict-null-error (#24389) 2020-05-07 15:06:48 +02:00
Josh Soref
43f33dddb4 Changelog: spelling (#24385) 2020-05-07 14:56:37 +02:00
Lukas Siatka
dbd77e0ab5 Explore: fixes log entries sorting - changes milliseconds to nanoseconds (#24303)
* Chore: adds timeEpochNs to LogRowModel in @grafana/data

* Chore: updates explore utils ResultProcessor getLogsResult and explore utils tests

* Chore: updates core/logs_model to include nanoseconds

* Chore: updates LogRowModel sorting key from milliseconds to nanoseconds and adds timeEpochNs to tests

* Chore: adds timeEpochNs to LogRowModel mock in Explore LiveLogs test

* Chore: fixes logs model timeEpochNs padding

* Chore: updates timeEpochNs padding in tests

* Chore: updates LogRowModel mocks

* Chore: changes isLoki to datasourceId

* Chore: adds hasFieldWithNameAndType method to FieldCache in grafana-data dataframe

* Chore: changes timeEpochNs from number to string as it can overflow Number.MAX_SAFE_INTEGER

* Chore: updates LogRowModel sorting to use milliseconds and nanoseconds

* Chore: removes datasourceId from logSeriesToLogsModel method

* Chore: updates ResultProcessor tests to include nanosecond-level precision log rows sorting
2020-05-07 13:53:24 +02:00
Lukas Siatka
2c9eed360d Chore: fixes few strict-null errors (#23775)
* Chore: fixes strict-null-error in Login > ChangePassword component

* Chore: fixes strict-null-error in Login > LoginForm component

* Chore: fixes strict-null-errors in OrgActionBar component and components that render it

* Chore: fixes strict-null-errors in PageHeader component

* Chore: fixes strict-null-errors in PermissionList components

* Chore: fixes strict-null-errors in loki language provider

* Chore: fixes strict-null-errors in loki datasource

* Chore: fixes strict-null-errors in panel_editor > EditorTabBody component

* Chore: fixes strict-null-errors in flatten utility

* Chore: fixes strict-null-errors in search component

* Chore: fixes strict-null-errors in SharedPreferences component

* Chore: fixes strict-null-errors in MetricSelect component

* Chore: updates type on a param to type on argument

* Chore: updates strict-null errors count from 791 to 757

* Chore: updates PageHeader - adds null checks

* Chore: updates PageHeader - updates null checks

* Chore: updates PageHeader null checks to longer format

* Chore: updates strict-null fixes

* Chore: updates error count limit in ci-frontend-metrics
2020-05-07 13:53:05 +02:00
Andrej Ocenas
bc3d5ee01d CloudWatch/Metrics: Fix error with expression only query (#24362) 2020-05-07 13:22:45 +02:00
Peter Holmberg
01b46d17bd Getting started: Welcome banner (#24286)
* welcome banner

* use login background

* use login background

* minor margins and paddings

* remove button select, remove useful links

* updates

* component type

* readd margin for smaller screens

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-05-07 13:02:01 +02:00
David
9208c8efd7 Prometheus: Add metadata for summary metrics (#24201)
* Prometheus: Add metadata for summary metrics

- summary metrics don't have metadata available from the metadata API,
so Grafana can help and just add it
- given a summary metric `foo`, we add metadata info for `foo_sum` and
`foo_count`
- with tests

* Update public/app/plugins/datasource/prometheus/language_utils.ts

Co-authored-by: gotjosh <josue@grafana.com>

Co-authored-by: gotjosh <josue@grafana.com>
2020-05-07 12:02:45 +02:00
Marcus Andersson
dc49d81693 Docs: adding documentation for the new time zone functionality (#24080)
* added timezone override information.

* added usp.

* added some code comments.

* added more documentation of the date and time functionality.

* Update docs/sources/reference/timerange.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* some small adjustments.

* fixed comments according to feedback.

* Update packages/grafana-data/src/datetime/parser.ts

* Update packages/grafana-data/src/datetime/parser.ts

* Update packages/grafana-data/src/datetime/parser.ts

* fixed final feedback.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-07 11:59:40 +02:00
Tobias Skarhed
61eba3e275 Docs: New whitelabel settings (#24345)
* Update whitelabel settings

* Update feedback
2020-05-07 11:00:47 +02:00
Ryan McKinley
ddb6464bdf Alerts: set zindex above the panel inspector (#24354)
* set alert zindex

* use tooltip zindex
2020-05-07 10:58:19 +02:00
Torkel Ödegaard
26f15233fb Graph: Improves graph edit options in side pane (#24352)
* Graph: Improves graph edit options in side pane

* Fixed spell issue and order

* Fixed ts issue
2020-05-07 10:54:05 +02:00
Marcus Andersson
5800009951 Docs: added information about improved time zone support to change log. (#24372) 2020-05-07 10:42:43 +02:00
Ryan McKinley
5dca59f720 Field: getFieldTitle as field / series display identity and use it in all field name matchers & field / series name displays (#24024)
* common title handling

* show labels

* update comment

* Update changelog for v7.0.0-beta1 (#24007)

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-Authored-By: Andrej Ocenas <mr.ocenas@gmail.com>
Co-Authored-By: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* verify-repo-update: Fix Dockerfile.deb (#24030)

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

* CircleCI: Upgrade build pipeline tool (#24021)

* CircleCI: Upgrade build pipeline tool

* Devenv: ignore enterprise (#24037)

* Add header icon to Add data source page (#24033)

* latest.json: Update testing version (#24038)

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

* Fix login page redirected from password reset (#24032)

* Storybook: Rewrite stories to CSF (#23989)

* ColorPicker to CSF format

* Convert stories to CSF

* Do not export ClipboardButton

* Update ConfirmButton

* Remove unused imports

* Fix feedback

* changelog enterprise 7.0.0-beta1 (#24039)

* CircleCI: Bump grafana/build-container revision (#24043)

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

* Changelog: Updates changelog with more feature details (#24040)

* Changelog: Updates changelog with more feature details

* spell fix

* spell fix

* Updates

* Readme update

* Updates

* Select: fixes so component loses focus on selecting value or pressing outside of input. (#24008)

* changed the value container to a class component to get it to work with focus (maybe something with context?).

* added e2e tests to verify that the select focus is working as it should.

* fixed according to feedback.

* updated snapshot.

* Devenv: add remote renderer to grafana (#24050)

* NewPanelEditor: minor UI twekas (#24042)

* Forward ref for tabs, use html props

* Inspect:  add inspect label to drawer title

* Add tooltips to sidebar pane tabs, copy changes

* Remove unused import

* Place tooltips over tabs

* Inspector: dont show transformations select if there is only one data frame

* Review

* Changelog: Add a breaking change (#24051)

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

* CircleCI: Unpin grafana/docs-base (#24054)

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

* Search: close overlay on Esc press (#24003)

* Search: Close on Esc

* Search: Increase bottom padding for the last item in section

* Search: Move closing search to keybindingsSrv

* Search: Fix folder view

* Search: Do not move folders if already in folder

* Docs: Adds deprecation notice to changelog and docs for scripted dashboards (#24060)

* Update CHANGELOG.md (#24047)

Fix typo

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>

* Documentation: Alternative Team Sync Wording (#23960)

* Alternative wording for team sync docs

Signed-off-by: Joe Elliott <number101010@gmail.com>

* Update docs/sources/auth/team-sync.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Fix misspell issues (#23905)

* Fix misspell issues

See,
$ golangci-lint run --timeout 10m --disable-all -E misspell ./...

Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>

* Fix codespell issues

See,
$ codespell -S './.git*' -L 'uint,thru,pres,unknwon,serie,referer,uptodate,durationm'

Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>

* ci please?

* non-empty commit - ci?

* Trigger build

Co-authored-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>

* fix compile error

* better series display

* better display

* now with prometheus and loki

* a few more tests

* Improvements and tests

* thinking

* More advanced and smart default title generation

* Another fix

* Progress but dam this will be hard

* Reverting the time series Value field name change

* revert revert going in circles

* add a field state object

* Use state title when converting back to legacy format

* Improved the join (series to columsn) transformer

* Got tests running again

* Rewrite of seriesToColums that simplifies and fixing tests

* Fixed the tricky problem of multiple time field when not used in join

* Prometheus: Restoring prometheus formatting

* Graphite: Disable Grafana's series naming

* fixed imports

* Fixed tests and made rename transform change title instead

* Fixing more tests

* fix more tests

* fixed import issue

* Fixed more circular dependencies

* Renamed to getFieldTitle

* More rename

* Review feedback

* Fix for showing field title in calculate field transformer

* fieldOverride: Make it clear that state title after applying defaults & overrides

* Fixed ts issue

* Update packages/grafana-ui/src/components/TransformersUI/OrganizeFieldsTransformerEditor.tsx

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Leonard Gram <leo@xlson.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Richard Hartmann <RichiH@users.noreply.github.com>
Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: Joe Elliott <joe.elliott@grafana.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Mario Trangoni <mario@mariotrangoni.de>
Co-authored-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
2020-05-07 10:42:03 +02:00
Steven Vachon
184941eab4 @grafana/e2e: added login credential env vars (#24359)
... for remote instances
2020-05-06 18:44:14 -04:00
Ryan McKinley
ff7db709ab @grafana/ui: avoid imports to @grafana/data/src/... (#24358) 2020-05-06 14:09:09 -07:00
Josh Soref
91a83b71c3 Docs: Fix table of contents link (#24339) 2020-05-06 12:50:55 -07:00
Ryan McKinley
d891cc5949 TemplateSrv: expose the replace function (#24353) 2020-05-06 11:15:31 -07:00
Lukas Siatka
fa260fec87 Chore: fixes Loki annotation tags deduplication (#24275) 2020-05-06 19:05:00 +02:00
Diana Payton
c0a1319a25 Docs: Create thresholds.md (#24265)
* Create thresholds.md

* Update docs/sources/panels/thresholds.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update thresholds.md

* Update thresholds.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-06 09:45:55 -07:00
Amal
067e169b93 Docs: Correcting one of the usage in documentation (#24197)
* Correcting one of the usage in documentation

* Correcting usage of a word

* Correcting usage of a word in docs

* Correcting same word in 2 more occurrences

* Correcting a word in docs

* Correcting a word in docs

* Update docs/sources/variables/advanced-variable-format-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Incorporated reviewer's suggestion in other occurrences

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-06 09:43:52 -07:00
David
314d442dc7 Loki: Fix query stats display in Explore (#24348)
- the stats label changed in the original PR, so the custom key did no
longer work, this change fixes it and the total bytes processed show up
in the explore logs meta data
2020-05-06 18:06:35 +02:00
Andrej Ocenas
bfaec17c51 CloudWatch logs: Fix default region interpolation and reset log groups on region change (#24346) 2020-05-06 17:54:24 +02:00
Ryan McKinley
1896828bd0 QueryEditor: preserve the datasource attribute if when chaning queries (#24350) 2020-05-06 08:47:11 -07:00
Ryan McKinley
d747fcf9c3 toDataQueryResponse: check arrow parse errors (#24349) 2020-05-06 08:46:33 -07:00
Torkel Ödegaard
75ce947267 OverrideEditor: Use field config default value when adding a new override (#24347) 2020-05-06 17:43:34 +02:00
Dan Cech
66b7398fb6 expose metrics for the number of configured datasources (#24267) 2020-05-06 11:36:18 -04:00
kay delaney
3451d09272 Datasource/CloudWatch: Adds more examples to CloudWatch Logs cheatsheet (#24288) 2020-05-06 16:19:46 +01:00
Torkel Ödegaard
33123c7e7e PanelEdit: Fixed re-using query result after leaving panel edit (#24340) 2020-05-06 16:06:21 +02:00
Marcus Andersson
8de6ef473f Graph: Fixed issue with x-axis labels showing "MM/DD" after viewing dashboard with pie chart . 2020-05-06 16:05:00 +02:00
Tobias Skarhed
6a4bb556a5 Storybook: Fix broken StatsPicker story (#24326)
* Fix non-story

* Update packages/grafana-ui/src/components/Badge/Badge.story.tsx
2020-05-06 15:43:23 +02:00
Dominik Prokop
368594e89e Field options: show field name when title option config is empty (#24335) 2020-05-06 14:52:17 +02:00
Marcus Efraimsson
7219d9bd7f Publish data frames documentation (#24328) 2020-05-06 14:14:26 +02:00
kay delaney
dbac77d239 Datasource/CloudWatch: Fix CloudWatch logs dataframe transformation (#24327)
* Datasource/CloudWatch: Fix CloudWatch logs dataframe transformation
2020-05-06 12:52:21 +01:00
Alex Khomenko
3a2c844a8a Search: folder view improvements (#24324)
* Search: Do not set items if no results returned

* Search: Simplify canSave logic

* Search: Add initialLoading state

* Search: Add itemsFetching state to folder

* Search: Fix props and tests

* Search: Fix strict null check
2020-05-06 12:53:28 +03:00
Emil Tullstedt
078d08d036 Search: Support multiple order filters (#24230) 2020-05-06 11:42:52 +02:00
kay delaney
9b7bbc3d1c Field/Overrides: Allow title override for 'Time' column (#24295)
Closes #24245
2020-05-06 11:36:33 +02:00
Lukas Siatka
36896f5077 Explore/Loki: Removes old query syntax support for regex filter (#24281)
* Chore: removed regex from LokiQuery

* Chore: removes parseQuery from Loki datasource

* Chore: removes regex param from format query in lokiStreamsToDataframes in Loki result transformer

* Chore: updates formatQuery and removes parseQuery from Loki query utils

* Chore: removes highlighter test with unsupported syntax from Loki query utils
2020-05-06 11:21:25 +02:00
Andrej Ocenas
2b028e38f0 Devenv: Fix trace id pattern (#24298) 2020-05-06 10:39:46 +02:00
Alexander Tymchuk
702e007de4 Migration: snapshot list (#24266)
* Migration: snapshots list

* chore: converted SnapshotListPage to functional component

* fix: dependencies for doRemoveSnapshot
2020-05-06 10:11:25 +02:00
Marcus Andersson
67b4c84399 Panel: will fix so the correct links is generated to the panel view. (#24301)
* fixed a couple of bad links.

* adjusted so we use the correct type of links.

* cleaning up links regarding edit/viewing panels.

* fixing edit link.

* reverted back to panelId for the image urls.

* reverted back.

* remvoed the editPanel: null since it is obsolete.
2020-05-06 09:48:30 +02:00
Emil Tullstedt
2284f46edb Reporting: Update docs (#23993) 2020-05-06 09:28:33 +02:00
Daniel Lee
5b32d422ad import: enable creating new folders in import (#24317) 2020-05-06 08:36:22 +02:00
Arve Knudsen
980b930641 Inspect: Fix typo (#24311)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-06 07:40:52 +02:00
Ryan McKinley
b34a5b5648 Toolkit: use grabpl for manifest (#24319) 2020-05-05 19:47:58 -07:00
Diana Payton
376749ee32 Docs: Added Intro to histograms and heatmaps (#24174)
* Moved files

Moved files from guides folder into getting-started folder, added aliases, added Intro to histograms topic

* Updated links

* Update intro-histograms.md

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2020-05-05 15:23:30 -07:00
Amal
f597a686fa Minor correction in documentation (#24263) 2020-05-05 23:56:04 +02:00
Amal
2918d79d43 Minor correction in documentation (#24249) 2020-05-05 23:53:34 +02:00
Amal
a76b6537c3 Minor change for readability (#24305) 2020-05-05 23:51:20 +02:00
Diana Payton
41bdd5d3bb Docs: Variable edits (#24170)
* Update templates-and-variables.md

* Update advanced-variable-format-options.md
2020-05-05 23:37:34 +02:00
Tobias Skarhed
1947683ad0 SaveDashboard: Fix for folder picker menu not being visible outside modal (#24296)
* Change z-index

* Add position and width to menuPortal
2020-05-05 22:21:34 +02:00
Stephanie Closson
21bd9dacd6 Toolkit: Docker images/Add grabpl tool for deploys (#24309)
* Add grabpl tool for deploys

* Rest of the files
2020-05-05 13:57:08 -06:00
Amal
9b59ee58eb Docs: Inserted a comma for better readability (#24198) 2020-05-05 10:55:06 -07:00
Amal
13232533ad Docs: Minor typo correction (#24193) 2020-05-05 10:53:57 -07:00
Amal
8f4c795a99 Docs: Placed a comma, for readability (#24187) 2020-05-05 10:52:54 -07:00
Arve Knudsen
a87381ece6 CircleCI: Enable plug-in signing (#24240)
* CircleCI: Include signed manifest when building plug-ins
2020-05-05 19:38:09 +02:00
Andreas Opferkuch
de0e1b2c58 Prometheus: Add off switch for metric/label name lookup (#24034)
* Prometheus: Add off switch for metric/label name lookup

This will help users with amounts of metric name
data that is too much for a browser to handle.

Autocomplete will be disabled and metrics chooser hidden,
since obviously both rely on this data.

Fixes #22702

* Use onUpdateDatasourceJsonDataOptionChecked

... from `@grafana/data`. Refactor naming to faciliate its
use and stick with prop names as passed down from
`ConfigEditor`.

PLUS:
- Rephrase switch label, add a tooltip and reduce the
size of the to what "Custom query parameters" originally
was.
- Change `languageProvider` type in `PromQueryField`.

* Put language provider back in

Functions and history still work, even when metrics
lookup gets disabled.
Also: Rewording of setting.

* Display a message when lookup got disabled manually

* Call property for setting disableMetricsLookup

* Show disabled metrics chooser instead of warning
2020-05-05 18:02:55 +02:00
Tobias Skarhed
42ba13b346 Input: Set autofill color (#24290) 2020-05-05 17:59:33 +02:00
Andrej Ocenas
d3b19adbed Docs: Update style guide with explicit return types (#23918) 2020-05-05 17:36:28 +02:00
Andreas Opferkuch
dfe2ab9502 Prometheus: Show "Loading metrics..." when switching sources (#24292)
syntaxLoaded needed resetting at the beginning of refreshing
metrics.

Fixes #24291
2020-05-05 17:34:49 +02:00
Marcus Olsson
7dee3e27ac Update data frame docs (#23983) 2020-05-05 17:12:25 +02:00
Andrej Ocenas
66b3e08a7f Links: Filter data sources in derived link to tracing only (#23948) 2020-05-05 17:08:31 +02:00
Diana Payton
a8ba503b35 Update documentation-style-guide.md (#24020)
* Update documentation-style-guide.md

Added guidance on jargon

* Update documentation-style-guide.md
2020-05-05 07:50:18 -07:00
Torkel Ödegaard
912c963455 QueryOptions: Fixed min interval placeholder now is real min interval from data source settings (#24227) 2020-05-05 15:48:31 +02:00
Torkel Ödegaard
cdc5203d8a Dashboard: Variable without a current value in json model causes crash on load (#24261)
* Variables: Fixes variable initilization and default values

* fixed failing tests.

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-05-05 15:47:48 +02:00
Tobias Skarhed
a2363f4d0c Storybook: Convert final CSF stories (#24283)
* Convert BigValue and GraphLegend

* Convert last stories
2020-05-05 15:42:36 +02:00
Hugo Häggmark
428b4ae565 Stat/Gauge/BarGauge: shows default cursor when missing links (#24284)
* Stat/Gauge/BarGauge: shows default cursor when missing links

* Stat/Gauge/BarGauge: shows default cursor when missing links

* Refactor: changes after PR comments
2020-05-05 15:26:42 +02:00
Andrej Ocenas
9b1c0455c4 Jaeger: Fix root span label in cascader (#24164) 2020-05-05 14:21:23 +02:00
kay delaney
79a084392f Datasource/Loki: Fixes issue where cached log values weren't merged when labels were refreshed (#24101)
* Datasource/Loki: Fixes issue where cached log values weren't merged when labels were refreshed

Closes #24087
2020-05-05 13:19:52 +01:00
Hugo Häggmark
ed73d06846 Variables: migrates old tags format for consistency (#24276)
* Variables: migrates old tags format for consistency

* Update DashboardGrid.test.tsx.snap

* Update DashboardPage.test.tsx.snap

* Update DashboardGrid.test.tsx.snap
2020-05-05 13:27:05 +02:00
Arve Knudsen
1ff0d9f612 CircleCI: Temporarily ignore publishing of master Docker images (#24280)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-05 13:14:42 +02:00
Andrej Ocenas
9962f6961e Tracing: Remove collapsing of header (#24153) 2020-05-05 12:30:16 +02:00
Marcus Efraimsson
224aa4dde8 Backend plugins: Fix incorrect JSON Unmarshal (#24243) 2020-05-05 11:54:50 +02:00
Marcus Efraimsson
898df2b778 Chore: Remove git add for lint-staged to resolve warning (#24279) 2020-05-05 11:54:15 +02:00
Arve Knudsen
b4570de92d Docker: Remove another Alpine edge channel usage (#24136)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-05 11:16:03 +02:00
kay delaney
65c1a16786 Explore: No longer changes run button red with "cancel" text when live tailing (#24106)
Closes #24079
2020-05-05 09:40:47 +01:00
Dominik Prokop
97c0285543 Enable svg bundle with rollup (#24258) 2020-05-05 10:39:49 +02:00
Marcus Efraimsson
890e1d8f94 Backend plugins: Send query type to backend plugins (#24120)
Use v0.60.0 of sdk.
2020-05-05 10:32:34 +02:00
Andrej Ocenas
d66d9aa62a Devenv: Add loki self logging to Jaeger block (#23646) 2020-05-05 09:51:21 +02:00
Peter Holmberg
341822450c Migration: Dashboard links (#23553)
* first things

* extract dropdown to component

* sanitize links and titles

* fix import

* remove console log and move typings

* SAML Role and Team sync (open source part) (#23391)

* SAML: add default params for role and team sync

* SAML: add org_mapping option

* SAML: support allowed_organizations option

* Chore: expose RedirectWithError from HTTPServer

* Chore: return RedirectResponse (fix superfluous response.writeheader message)

* HTTPServer: expose ValidateRedirectTo() and CookieOptionsFromCfg()

* Config: move SAML section to the enterprise

* Forms migration: Change password (#23623)

* Migrate ChangePassword

* Add validation

* FieldOverrides: UI updates (#23630)

* UI improvements for field overrides

* Update tests

* Fix missing key

* Fix e2e

* docs/sources/features/datasources/graphite.md: Fix typos

* Inspect: Transformers (#23598)

* WIP: Inspect transformers

* Updated

* Transformations working in inspect drawer and series to columns working as normal transformation

* Minor name change

* Updated

* Updated

* Fix: fixes crash with dataFrameIndex out of bounds

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>

* Search: migrate manage dashboards (#23530)

* Search: add search wrapper

* Search: add DashboardSearch.tsx

* Search: enable search

* Search: update types

* Search: useReducer for saving search results

* Search: use default query

* Search: add toggle custom action

* Search: add onQueryChange

* Search: debounce search

* Search: pas dispatch as a prop

* Search: add tag filter

* Search: Fix types

* Search: revert changes

* Search: close overlay on esc

* Search: enable tag filtering

* Search: clear query

* Search: add autofocus to search field

* Search: Rename close to closeSearch

* Search: Add no results message

* Search: Add loading state

* Search: Remove Select from Forms namespace

* Remove Add selectedIndex

* Remove Add getFlattenedSections

* Remove Enable selecting items

* Search: add hasId

* Search: preselect first item

* Search: Add utils tests

* Search: Fix moving selection down

* Search: Add findSelected

* Search: Add type to section

* Search: Handle Enter key press on item highlight

* Search: Move reducer et al. to separate files

* Search: Remove redundant render check

* Search: Close overlay on Esc and ArrowLeft press

* Search: Add close button

* Search: Document utils

* Search: use Icon for remove icon

* Search: Add DashboardSearch.test.tsx

* Search: Move test data to a separate file

* Search: Finalise DashboardSearch.test.tsx

* Add search reducer tests

* Search: Add search results loading indicator

* Search: Remove inline function

* Search: Do not mutate item

* Search: Tweak utils

* Search: Do not clear query on tag clear

* Search: Fix folder:current search

* Search: Fix results scroll

* Search: Update tests

* Search: Close overlay on cog icon click

* Add mobile styles for close button

* Search: Use CustomScrollbar

* Search: Memoize TagList.tsx

* Search: Fix type errors

* Search: More strictNullChecks fixes

* Search: Add ManageDashboards.tsx

* Search: Add mergeReducers

* Search: Use mergeReducers

* Search: remove default state from reducers

* Search: Fix recent and starred icons

* Search: Enable search

* Search: Add markup

* Search: Separate manageDashboardsReducer

* Search: Add DashboardActions.tsx

* Use new Select for TagFilter

* Search: Use TagFilter for search filters

* Search: Use TagList

* Search: Add toggleSection

* Search: Add more actions

* Search add manageDashboards.test.ts

* Search: Add getCheckedUids

* Search: Add modify and toggle checked actions

* Search: Update tests

* Search: Update component template

* Search: Enable section toggle

* Search: Derive canMove and canDelete

* Search: Handle delete items

* Search: Fix tests

* Search: Enable toggle items

* Search: Add confirm modal subtitle

* Search: Use theme vars

* Search: Add getCheckedDashboardsUids

* Search: Add MoveToFolderModal

* Search: Enable moving dashboards

* Search: Fix strict null checks errors

* Search: Fix strict null checks errors[2]

* Search: Enable filters

* Search: Add useSearchQuery.ts

* Search: Toggle items when toggling all

* Search: Update useSearchQuery to accept custom params

* Search: Add useSearchQuery to dashboard search

* Search: use SearchField for manage dashboards

* Search: Remove event param from query change

* Search: Add base search hooks

* Search: refactor useSearch to accept reducer

* Search: use useDashboardSearch hook

* Search: Fix useSearchQuery params

* Search: Enable folder search

* Search: Update tests

* Search: Pass the props to manage-dashboards

* Search: Add search filters margin

* Search: Remove search-field-wrapper class and hide logic for it

* Search: Adjust SearchField styles

* Search: Move search-results-container inside SearchResults

* Search: Fix type errors

* Search: Add EmptyListCTA

* Search: Update move message

* Search: Cleanup

* Search: Add todo

* Search: Fix action type

* Search: Use React wrapper vs FolderDashboardsCtrl and DashboardListCtrl

* Search: DashboardList => DashboardListPage

* Search: Remove ManageDashboards from angular_wrappers

* Minor style tweaks

* Search: Use LinkButton

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* PanelEditorTabs: adds counter to Query, Alert and Transform (#23645)

* Transformers: changes reduce transformer  (#23611)

* Transformers: changes reduce transformer

* Refactor: fixes lenght of frame

* Minor tweaks and polish

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* Docs: Grafana internal metrics update (#23448)

* Update metrics.md

* Updated metrics.md and configuration.md

* Added links to data sources

* Update metrics.md

* Update docs/sources/administration/metrics.md

Co-Authored-By: Carl Bergquist <carl@grafana.com>

Co-authored-by: Carl Bergquist <carl@grafana.com>
Co-authored-by: bergquist <carl.bergquist@gmail.com>

* Remove temporary NewPanelEditorContext (#23652)

* Toolkit: Update slim debian image for e2e testing (#23629)

* Because alpine uses musl instead of libc, the e2e/cypress was not compatible
So:
- Created new VM based on debian-slim
- Could also be used as a build VM

Fixes:
- ginstall issue with merge somewhere.
- Trimmed down the alpine VM since we don't need the extra libraries for cypress

* Fix: Don't need cp on debian
Fix: Don't use /bin/sh on debian. Only for alpine. Use /bin/bash on debian
Fix: Missing dependencies to e2e tests

* Tweaks and comments for ci-improvements, stability, and readibility (#23658)

* Tweaks and comments for ci-improvements, stability, and readibility
- Made naming more obvious and intuitive
- CI supports grafana e2e plus more granular design
  (side effect that it takes slightly longer, but negligable)
- disable strict e2e errors through environment variable
- Added tools for linting and for building plugin-ci

* feedback from stevev - remove version. Causes problems

* Overrides: Show option group counters for options that represent collections (#23655)

* NewPanelEdit: Minor edit mode fixes (#23666)

* Minor edit mode fixes

* Updated

* NewPanelEditor: Save dashboard from edit mode now works, and other fixes (#23668)

* QueryEditors: include error when no data is returned (#23632)

* toDataFrame: detect field properties using in rather than hasOwnProperty (#23673)

* Bundled Plugins: fix build issues with DirectInput (#23640)

* pass query error

* and the root

* not optional

* building bundled plugin

* missing file

* remove other branch

* fix prettier

* Docs: Update README.md (#23660)

* Docs: Update documentation-style-guide.md (#23659)

Added Divio link

* Dashboard: Add fields in DashboardMeta (#23647)

* Fix: grafana/ui imports (#23680)

* Prometheus: Fixed error in PromLink

* Prometheus: Fixed error in PromLink, fixed ts issue

* FieldOverride: Support data links via field overrides (#23590)

* Move xss and sanitize packages to grafana-data

* Move text, url and location utils to grafana-data

* Move grafana config types to grafana-data

* Move field display value proxy to grafana-data

* Fix

* Move data links built in vars to grafana-data

* Attach links supplier to when applying field overrides

* Prep tests

* Use links suppliers attached via field overrides

* locationUtil dependencies type

* Move sanitize-url declaration to grafana-data

* Revert "Move sanitize-url declaration to grafana-data"

This reverts commit 11db9f5e55.

* Fix typo

* fix ts vol1

* Remove import from runtime in data.... Make TS happy at the same time ;)

* Lovely TS, please shut up

* Lovely TS, please shut up vol2

* fix tests

* Fixes

* minor refactor

* Attach get links to FieldDisplayValue for seamless usage

* Update packages/grafana-data/src/field/fieldOverrides.ts

* Make storybook build

* NewPanelEdit: Improvements to angular panels and other fixes (#23678)

* Removed old editor components

* Angular panel improvements

* Progress

* Updated tests

* Simple persistence for angular panel option state

* Improving graph edit experiance

* Improving series overrides

* updated e2e test

* Regstry: refactoring

* Table: Improvements to column resizing, style and alignment  (#23663)

* Table: Fixed to column alignment

* testing table state reducer

* Styles starting to work

* Persisting column resize now works

* Trying to fix Table storybook stories

* Minor updates

* fixed ts issue

* Table: Support duplicate field names, and use data frame directly instead of copying data and other improvements (#23681)

* Poc at use data frame directly

* working ok

* Table improvements

* Alertmanager: Basic auth should not be required (#23691)

* Storybook: Small fixes (#23692)

* Fix getLogLevelFromKey when non-string supplied (#23654)

* Fix failing master (#23702)

* Store: Error handling for setObject  (#23650)

* Error handling for setObject to store

* Update public/app/core/store.ts

Co-Authored-By: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* Update public/app/features/explore/RichHistory/RichHistory.tsx

Co-Authored-By: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* Move setState outside of try-catch block

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* Drawer: align component style with PanelInspector (#23694)

* Drawer: add subtitle, expandable button and refactor style

* Drawer: update header style and z-index

* Drawer: refactor Drawer component and PanelInspector

* PanelInspector: add expandable

* Drawer: update stories with new props

* Inspector: rename InspectHeader -> InspectSubtitle

* Inspector: fix tabs spacing

* Drawer: remove z-index

* Update public/app/features/dashboard/components/Inspector/InspectSubtitle.tsx

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Drawer: apply PR feedbacks

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Provisioning: Allows specifying uid for datasource and use that in derived fields (#23585)

* Add uid to datasource

* Fix uid passing when provisioning

* Better error handling and Uid column type change

* Fix test and strict null error counts

* Add backend tests

* Add tests

* Fix strict null checks

* Update test

* Improve tests

* Update pkg/services/sqlstore/datasource.go

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* Variable rename

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

* Refactor search (#23550)

Co-Authored-By: Arve Knudsen <arve.knudsen@grafana.com>
Co-Authored-By: Leonard Gram <leonard.gram@grafana.com>

* Search: Toggle Search based on search query (#23648)

* Search: Toggle Search based on search query

* Search: Fix types and closed search param

* Search: Remove appEvents from SearchWrapper

* Search: Reset folder on close

Co-Authored-By: Alexander Zobnin <alexanderzobnin@gmail.com>

* Search: Disable reloadOnSearch for manage dashboards urls

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>

* Search: Fix title search null pointer (#23705)

* Add ServerlessDatabaseCapacity to AWS/RDS metrics (#23635)

* Dashboard: Add failsafe for slug generation (#23709)

* Transformers: calculate a new field based on the row values (#23675)

* TableCell: show JSON rather than [object Object] (#23683)

* NewPanelEditor: Move visualisation picker to the sidebar pane (#23696)

* Move visualisation picker to the sidebar pane

* Remove vis tab from bottom pane

* Visualisation to panel type title

* docs/sources/features/dashboard/dashboards.md: Improve language

* docs/sources/installation/configuration.md: Improve language

* docs/sources/administration/metrics.md: Improve language

* CSS: Various css bug fixes (Safari fix for graph panels and more)  (#23704)

* CSS: Various css bug fixes

* Updated

* InputDatasource: Fixed prettier errors (#23679)

* InputDatasource: Fixed prettier errors

* Fixed prettier config in toolkit to make it consistent with grafana core prettier config

* Docs: run the api-extractor on master to update docs (#23726)

* regenerated packages docs.

* fixed spelling issues.

* fixed spelling issues.

* Input: Width prop (#23615)

* Add width property

* Remove unused import

* Spelling mistake

* Add width to interface

* Make width optional

* Remove size

* Update snapshot

* Remove size from places

* Add size prop for button

* Update width

* Update snapshots

* Docs: Datasource uid docs (#23700)

* @grafana/ui: Fix login icon (#23732)

* Fix sign in button

* Fix modal button in button

* Dashboard: Update tests for testing fallback support (#23730)

* Form migrations: Final components to LegacyForms (#23707)

* FormField to LegacyForms

* FormLabel to InlineFormLabel

* Move SecretFormField to LeagcyForms

* NewPanelEditor: UI update of add panel widget (#23715)

* Small update proposal to add panel widget

* Fix smoketest

* Minor tweaks

* update snaps god damn it

* Tracing: Add some error handling to JaegerQueryField (#23599)

* docs/sources/plugins/developing/datasources.md: Improve language

* Search: raise service init prio (#23740)

* Remove file (#23741)

* Backend plugins: Renderer v2 plugin (#23625)

grafana-plugin-model is legacy and is replaced by new backend 
plugins SDK and architecture. Renderer is not part of SDK and 
we want to keep it that way for now since it's highly unlikely there 
will be more than one kind of renderer plugin.
So this PR adds support for renderer plugin v2.
Also adds support sending a Device Scale Factor parameter to the 
plugin v2 remote rendering service and by that replaces #22474.
Adds support sending a Headers parameter to the plugin v2 and
remote rendering service which for now only include 
Accect-Language header (the user locale in browser when using 
Grafana), ref grafana/grafana-image-renderer#45.
Fixes health check json details response.
Adds image renderer plugin configuration settings in defaults.ini 
and sample.ini.

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* UI: Adds option to limit number of visible selected options for Select component (#23722)

* UI: Adds option to limit number of visible selected options to Select component

* Prettier: Add prettier config that imports prettier from toolkit (#23729)

* TextArea: Fixed default height (#23743)

* Image Rendering: Make it work using serve_from_sub_path configured (#23706)

Make rendering work when using serve_from_sub_path and not have rendering.renderer_url configured.

Fixes #21925

* docs/sources/tutorials/ha_setup.md: Fix typo

* Docs: Grammatical correction in documentation (#23752)

* Tracing: Change color palette. (#23656)

* Docs: Minor typo fix in documentation (#23745)

* TablePanel: avoid toArray for memoizedData  (#23744)

* DevEnv: Revert to clean stale assets (#23742)

* Dashboard import: Bug fixes (#23591)

* clear dashboard on unmount

* fix menu z-index, folderpicker width

* fix issue with saving dashboard in another folder

* use foldermodel instead of selectablevalue

* using z-index from theme

* updated names

* update snapshot

* remove size from folderpicker

* use connectWithCleanup

* update snapshot

* docs/sources/features/explore/index.md: Fix language

* Docker: Fix root docker file build (#23772)

Fixes #23754

* Search: Load folder page (#23768)

* Drawer: update z-index to show tooltips (#23770)

* DataSourceProxy: Handle URL parsing error (#23731)

* pluginproxy: Handle URL parsing error
* pkg/api: Validate data source URLs
* pkg/api: Return 400 for URL validation error

* Dockerfile: Copy in the tools directory, to fix build (#23773)

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

* E2E: Fixed e2e test issue due to change in testdata scenario change logic (#23774)

* VizRepeater: fixed issue with resolved auto orientation passed back from VizRepeater (#23767)

* VizRepeater: fixed issue with resolved auto orientation passed back from VizRepeater

* Updated variable name

* Transformers: adds labels as columns transformer (#23703)

* Transformers: adds labels as columns transformer

* Refactor: adds support for same timestamps with different labels

* Refactor: adds basic transform ui

* Refactor: adds sorted result

* Refactor: renames transformer

* Transformations: Improve UI and add some love to filter by name (#23751)

* Change filterByName options to accept arrays instead of strings

* Improve transformations UI

* Minor updates

* Minor UI changes

* Review

* Datasource/Loki: Remove code dealing with legacy Loki endpoints (#23437)

* Docs: Move Postgres version warning and remove details (#23782)

* docs/sources/installation/upgrading.md: Fix language

* UI: add InfoBox component (#23701)

* UI: inherit LinkButton props from ButtonHTMLAttributes

* Chore: fix implicit any

* UI: add InfoBox component

* UI: fix InfoBox border color

* Chore: use new style for defining stories

* Chore: InfoBox refactor

* Chore: inherit className attribute from HTMLDivElement

* Select: Fixed z-index issue (#23786)

* Forms migration: LayoutSelector  (#23790)

* Buttons: Center text in buttons (#23789)

* Buttons: Center buttons

* Updated size of transformation button

* removed snapshot

* Transformations: Make sidebar subscribe to panel's query runner (#23785)

* Make panel edit sidebar options use lates data from panel query runner

* Update select's z-index

* Review

* Logs: Add href to internal link (#23757)

* PanelEditor: stores option group collapse state (#23781)

* PanelEditor: stores option group collapse state

* Refactor: adds props to OptionsGroup instead

* Docs: Correcting a reference link in documentation (#23747)

* Correcting a reference link in documentation

* Changed link as relative path, as asked by reviewer

* Search add sorting picker (#23746)

* Search: Extend search_srv with getSortOptions

* Search: Enable sorting

* Search: Fullwidth search

* Search: Add SortPicker

* Search: Add useSearchLayout

* Search: Update sort query

* Search: Refactor items rendering

* Search: Add sort to manage dashboards

* Search: Add sort icon

* Search: Mock getSortOptions

* Search: Fix Select sizes

* Search: Move SortPicker to Select

* Grafana-UI: Add ActionRow.tsx

* Grafana-UI: Use ActionRow in dashboard search

* Grafana-UI: Update ActionRow styles

* Search: Update tests

* Search: enable clearing TagFilter

* Search: Move getSortOptions outside of component

* Search: Fix import

* Search: Limit container width

* Search: Replace SearchField's clear text with icon

* Search: Fix section items query #23792

* Search: Add icons for layout switch

* Search: Remove layout switch for folder page

* Search: Fix strict null errors (#23804)

* Transformations: debug mode tweaks (#23802)

* Transformations: UI tweaks, filter by name regex validation (#23800)

* Add validation to filter by name regex, minor layout tweaks

* Use cards uin for non configured transformations

* UI Docs: ColorPicker component group (#23366)

* Create .mdx for ColorPicker component group

Describes the building blocks of the component and how they work together.

* Rename ColorPicker.mdx to ColorPicker.story.mdx

* Update packages/grafana-ui/src/components/ColorPicker/ColorPicker.story.mdx

Clean up tags

Co-Authored-By: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* Update packages/grafana-ui/src/components/ColorPicker/ColorPicker.story.mdx

Co-Authored-By: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* Explore: Fix split functionality (#23801)

* Fix splitting functionality, remove passing of parameters from button

* Format comment

* Security: Fix annotation popup XSS vulnerability (#23813)

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Typeahead: Fix z-index (#23809)

* Plugins: show signing status on datasources and plugins (#23542)

* show signing status

* show signing status

* Progress on signed badge style

* Progress on signing status look and updated card background

* Updates

* Transforms card tweak

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* CircleCI: Upgrade shellcheck to v0.7.1 and pin version (#23815)

* CircleCI: Upgrade shellcheck to v0.7.1 and pin version

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

* Table: Add default cell link style and tooltip to data links in table (#23818)

* TablePanel: Fix XSS issue in header column rename (#23816)

* prevent xss

* added escaping on tooltip.

* Rebase done

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* Rendering: makes sure IsAvailable can be used during init of other services (#23817)

* Rendering: makes sure service knows if it is configured after Init()

* Rendering: refactor

* Transformations: Organise fields transformer fixes & detailing (#23812)

* Transformers: Organise fields transformer detailing

* Table header cell - fix text overflowing columns

* Backend: Remove Go vendor folder (#23796)

* CHANGELOG.md: Update (#23831)

* CHANGELOG.md: Update
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update latest.json (#23833)

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

* Backend Plugins: (breaking change) Add PluginContext (#23788)

* breaking change for newer backend plugins
* use exported protobuf converters and sdk types to reduce duplicate code
* uses grafana-plugin-sdk-go@v0.54.0

* NewPanelEditor: don't break when plugin is skipDataQuery (#23836)

* Tracing: Remove feature flag (#23834)

* Logs: Derived fields link design update (#23695)

* Toolkit: fixes for security and publishing (#23749)

* Fixes and security patches:
1. Always keep the source directory, just don't package the source
2. Do not publish the SSH key for common plugin tasks.
Changed to environment variable

* env variable renamed.

* Re-added the src remove

* touch config.yml for rebuild

* NewDataSourcePage: Restore signature badge lost in merge (#23832)

* NewPanelEditor: bring back queries not being run on editmode navigation (#23837)

* Docs: URL update to Relref to repair broken links (#23783)

* NewPanelEditor: Panel edit tweaks (#22415)

* NewPanelEditor: Alternative edit layout

* Fixed full height issue

* panel-edit-tabs experiment

* minor tweaks

* PanelEditor: Minor tweaks

* Docs: URL update to Relref to repair broken links

Rewrote URL references in the text for the Administration guide
and older Whats New page to repair broken links, and change
to the Relref format to build the website with Hugo.

Closes #22378

* Remove stale file, caught in this
branch and PR from my Fork. contribute/style-guides/markdown-style-guide.md

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* e2e: adds inspect drawer tests (#23823)

* Explore: Create basic E2E test

* Feature: adds e2e tests for panel inspector

* Refactor: adds ts-ignore because of type checking errors

* Refactor: changes after PR comments and updates snapshot

* Refactor: adds typings back for IScope

* Refactor: changes after PR comments

Co-authored-by: Andreas Opferkuch <andreas.opferkuch@gmail.com>

* Form migrations: Teams and alert list (#23810)

* Basic migration

* Update test

* Fix feedback

* Forms migration: Data/Panel link editor (#23778)

* DataLink input to new form styles

* Make Angular work with inline editor

* Remove onRemove and desiableRemove

* Remove DataLinksEditor

* Change order of inputs

* Enable syntax highlight

* Fix datalinks for Elastic

* Fix PromQuery cascader when selected option has no children (#23835)

* Adding debug line to search ldap. (#23824)

* Search/virtualize list (#23710)

* Search: Add FixedSizeList for result items

* Search: Move SectionHeader to a separate file

* Search: Add useListHeight hook

* Search: Fix horizontal scrollbar

* Search: Remove custom scrollbar

* Search: Do not fetch dashboard folder on route change

* Search: Update tests

* Search: Remove extra checkbox renders

* Search: Move wrapper ref outside search results

* Search: Fix param type

* Search: Fix merge conflicts

* Search: Virtualize dashboard list

* Search: Update layout

* Search: Pass wrapper to search results

* Search: Update dashboard redirect

* Search: Remove unused css

* Search: Revert config

* Search: Use AutoSizer

* Search: Remove redundant appEvents call

* Search: Use List layout in folder view

* Transformations: Simple fix for labels to fields  problem with time series field names (#23828)

* Simple fix for labels to fields transform problem

* Added unit test

* dsproxy: adds support for url params for plugin routes (#23503)

* dsproxy: adds support for url params for plugin routes

* docs: fixes after review

* pluginproxy: rename Params to URLParams

* Update pkg/plugins/app_plugin.go

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* Apply suggestions from code review

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* pluginproxy: rename struct

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Alerting: Handle image renderer unavailable when edit notifiers (#23711)

If no image renderer available/installed when adding a new  alert notification 
channel will set Include image to false per default, otherwise true as before.
If no image renderer available/installed when adding/edit alert notification 
channel will show an informational message that you need to install the 
Grafana Image Renderer plugin for Grafana to be able to render an image. 

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

* Alerting: Upload error image when image renderer unavailable (#23713)

When Include image is enabled for an alert notification channel, but there's 
no image renderer available/installed when sending notification an error 
image will be uploaded/attached explaining that you need to install the 
Grafana Image Renderer plugin.

Ref #13802

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* Metriktank: Linage UI updates (#23848)

* e2e: adds e2e for panel edit (#23849)

* Explore: Create basic E2E test

* Feature: adds e2e tests for panel inspector

* Refactor: adds ts-ignore because of type checking errors

* Refactor: changes after PR comments and updates snapshot

* Refactor: adds typings back for IScope

* e2e: adds e2e for panel edit

Co-authored-by: Andreas Opferkuch <andreas.opferkuch@gmail.com>

* CloudWatch: Prefer webIdentity over EC2 role also when assuming a role (#23807)

Same as #23452 but for assumed roles.
When using service accounts (webIdentity) on EKS in combination 
with assuming roles in other AWS accounts Grafana needs to retrieve 
the service account credentials first and then needs to assume the 
configured role.

* Devenv: fix prometheus scrape ips (#23850)

* Devenv: fix prometheus scrape ips

* Devenv: fix grafana in devenv reference

* Devenv: fixes prom random data reference

* Docker: Upgrade to Ubuntu 20.04 in Dockerfiles (#23852)

* Chore: Upgrade to Ubuntu 20.04
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* PanelEditor: Fixed switch tabs (#23859)

* Grafana-UI: Extend Layout props (#23771)

* Grafana-UI: Extend Layout props

* Grafana-UI: Merge container styles

* Search: Fix prop types

* Grafana-UI: remove className prop

* Dashboard: Handle no renderer available in panel share dialog (#23856)

Show a message when sharing dashboard panel on the Link tab and
 there's no renderer available/installed. 

Ref #13802

* Storybook sorting (#23857)

* Resort Icon.story.tsx into Docs Overview category

* Make CallToActionCard.story.tsx internal

* Move ThemeColors to Docs Overview category

* Move Tag.story.tsx to Forms category

* Move TagList.story.tsx to Forms category

Co-authored-by: Clarity-89 <homes89@ukr.net>

* Tracing: Zipkin datasource (#23829)

* Search: cleanup old Angular files (#23860)

* Search: Remove wrapperRef

* Search: Remove angular search files

* Search: Unify search types

* Search: Remove redundant hideHeader prop

* Search: Remove app/types/search.ts

* Search: Update imports

* Search: Fix type errors

* Migration: Alerting - notifications list (#22548)

* Handle empty list

* Connect to redux

* Finish migration

* Remove comments

* Remove old files

* Remove console log

* Remove old import

* Forgot to add the new button

* Fix href

* Fix feedback

* Rich history: Fix create url and run query & style updates (#23627)

* Styling updates

* Create getQueryFromDisplayText method for Jaeger, Loki, Prometheus

* Fix createLink and runQuery methods for all datasources

* Update test

* Update Select from Legacy to current

* Update filtering

* Update public/app/core/utils/richHistory.test.ts

* Fix strictnullcheck errors

* Remove getQueryFromDisplayText method, as not needed

* Update saving of full query and use displayText for formatting

* Update tests

* Refactor create data query

* Remove parsing, store object instead

* Fix formatting error

* Remove object checking, transform everything to DataQuery

* Remove console.log

* Rename migrate function, add datasourceName as a useEffect dependency

* Fix z-index, move query

* Packages: Bundle plugins (#23787)

* Add manifest for external plugins
* CircleCI: Build internal plug-ins
* CircleCI: Package internal and external plug-ins

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

* Search: Improving search look and feel (#23854)

* Search: Improving search look and feel

* Fixed issue with tag filter beeing cramped and wrapping tags

* Minor tag polish

* fixed type

* adds template for backend datasource (#23864)

* Zipkin: Add method to display query text (#23870)

* Docs: Add version note about Stackdriver SLO queries (#23844)

Ref #22917

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Revert rc-slider dependency update, add z-index to tooltip (#23873)

* Search: Improvements to design (#23874)

* Search: updated design

* Fixed z-index

* Fixes

* Minor pixel push

* NewPanelEditor: Make variables wrap and small layout refactor (#23862)

* NewPanelEditor: Make variables wrap  and small layout refactor

* review fix

* Singlestat: Adds migration button and logic to migrate singlestat to stat panel (#23845)

* Singlestat: Migration button to migrate to new stat panel

* updated test

* ManageDashboards: Fixes and improvements (#23879)

* ManageDashboards: Fixes and improvements

* Fixed tests

* Fixed issue with item height and margin

* RadioButtons: Updates design and no longer full width in panel edit (#23883)

* Migration: Admin org edit page (#23866)

* Start migration

* Migrate admin org edit page

* NewPanelEditor: adjust panel menu items (#23888)

* Minor grammatical correction (#23885)

* Minor change for better readability (#23884)

* NewPanelEditor: increase sidebar min width, value mappings radio no longer full width (#23889)

* Docs: Plugin docs for Dataframes (#23483)

Co-authored-by: Carl Bergquist <carl@grafana.com>
Co-authored-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>

* PanelPlugin: add deprecation notice to setEditor method (#23895)

* Datasource/Cloudwatch: Adds support for Cloudwatch Logs (#23566)

* Datasource/Cloudwatch: Adds support for Cloudwatch Logs

* Fix rebase leftover

* Use jsurl for AWS url serialization

* WIP: Temporary workaround for CLIQ metrics

* Only allow up to 20 log groups to be selected

* WIP additional changes

* More changes based on feedback

* More changes based on PR feedback

* Fix strict null errors

* Docs: Edit prometheus data source doc (#23760)

* Update prometheus.md

* Editing

* Update prometheus.md

* Update add-a-data-source.md

* Update prometheus.md

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>

* Search: Minor tweak to placeholder color

* Minor grammatical correction (#23898)

* Docs: Add doc comments for PanelPlugin (#23896)

* Fix grammatical errors in documentation (#23900)

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* grafana/toolkit: Do not suggest Angular panel anymore, add note about Grafana tutorials (#23902)

* NewPanelEditor: vis picker UI update (#23894)

* Fix storybook

* Add deprecated/alpha badge to panels in viz picker, fix long title display

* Move getFocusCss to mixins

* Updated hover/active state of vis picker item

* try fixing e2e

* Add removed label for e2e to be happy happy happy

* Search: Fix expanded folder icon (#23903)

* QueryTab: Design updates (#23906)

* WIP: first stage

* Another take

* argghhh

* Updated

* My brain is mush

* Minor progress

* Progres

* Starting to work

* Fixes

* fixed e2e

* Chore: show grafana labs not project (#23913)

* DashboardSave: fix save dashboard when changes are detected (#23909)

* e2e: creates a separate package for selectors (#23858)

* Initial commit

* Chore: fixes after merge

* Chore: removes todos

* Chore: uncomment test

* Chore: adds missing externals to rollup config

* Refactor: selectors is master for everything

* Docs: updates Docs

* Chore: adds e2e-selectors to publish

* Angular/Forms migration: Orgs list (#23821)

* Create new components

* Fix async issues

* Remove comments

* Update public/app/features/admin/AdminOrgsTable.tsx

* Update public/app/features/admin/AdminListOrgsPage.tsx

* Update public/app/features/admin/AdminListOrgsPage.tsx

* Remove angular code

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Fix strict nulls (#23931)

* azuremonitor: fix for app insights azure china url (#23877)

* DashNav: refactor action buttons and custom content (#23868)

* DashNav: refactor action buttons and custom content

* DashNav: remove code duplication

* DashNav: fix custom element display

* DashNav: fix strictNullChecks

* docs/sources/features/datasources/testdata.md: Fix language

* Icon: Update sigin icon (#23933)

* NewPanelEditor: Fix visualisation list badge verflow (#23936)

* Search/fix folder sort (#23893)

* Search: Move layout to query reducer/hook

* Search: Refactor search_srv

* Search: Fix types

* Search: Move extra layout/sort logic to reducer

* Search: Fix Select min-width

* Search: Fix filter by starred

* Search: Update tests

* Search: Simplify query return

* Search: Set width to auto on HorizontalGroup

* Search: Fix tests

* Fix build-container (#23942)

* Search: Replace search implementation (#23855)

* Rendering: Add metrics (#23827)

* Rendering: base metrics

* Rendering: rendering_queue_size metric

* Chore: fix linter error

* Rendering metrics: refactoring

* Apply suggestions from code review

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Rendering metrics: handle DeadlineExceeded errors

* Rendering metrics: don't measure canceled request time

* Rendering metrics: revert deleting summary for canceled requests

* Update pkg/services/rendering/rendering.go

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Rendering: return ErrTimeout if context deadline exceeded

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* docs/sources/features/datasources/prometheus.md: Fix language

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

* docs/sources/features/datasources/opentsdb.md: Language improvements

* docs/sources/features/datasources/mysql.md: Improve language

* DateTime: adding support to select preferred timezone for presentation of date and time values. (#23586)

* added moment timezone package.

* added a qnd way of selecting timezone.

* added a first draft to display how it can be used.

* fixed failing tests.

* made moment.local to be in utc when running tests.

* added tests to verify that the timeZone support works as expected.

* Fixed so we use the formatter in the graph context menu.

* changed so we will format d3 according to timeZone.

* changed from class base to function based for easier consumption.

* fixed so tests got green.

* renamed to make it shorter.

* fixed formatting in logRow.

* removed unused value.

* added time formatter to flot.

* fixed failing tests.

* changed so history will use the formatting with support for timezone.

* added todo.

* added so we append the correct abbrivation behind time.

* added time zone abbrevation in timepicker.

* adding timezone in rangeutil tool.

* will use timezone when formatting range.

* changed so we use new functions to format date so timezone is respected.

* wip - dashboard settings.

* changed so the time picker settings is in react.

* added force update.

* wip to get the react graph to work.

* fixed formatting and parsing on the timepicker.

* updated snap to be correct.

* fixed so we format values properly in time picker.

* make sure we pass timezone on all the proper places.

* fixed so we use correct timeZone in explore.

* fixed failing tests.

* fixed so we always parse from local to selected timezone.

* removed unused variable.

* reverted back.

* trying to fix issue with directive.

* fixed issue.

* fixed strict null errors.

* fixed so we still can select default.

* make sure we reads the time zone from getTimezone

* Disable emitDataRequest from explore (#23926)

* NewPanelEditor: fix wrong path to time regions template causing panel editor to bug (#23946)

* Storybook: Add intro and reorganize (#23924)

* Update Intro

* Reorganize stories

* Hide panel for ThemeColors

* Update packages/grafana-ui/src/components/ColorPicker/ColorPicker.story.mdx

Co-Authored-By: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update intro

* Hide panel on Icon story

* Update README

* Add link

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Search: Adds search to main nav and removes open search click on dashboard name (#23943)

* Search: Adds search to main nav and removes open search click on dashboard name

* Updated snapshots

* Fixed strict null errors

* Fixed type issue

* Dashboard: Enforce min dashboard refresh interval to 5 seconds per default (#23929)

Fixes #22493

* Build: adding support to rollup *.json files to include moment-timezone data. (#23951)

* Image Rendering: New setting to control render request concurrency (#23950)

Fixes #23806

Co-Authored-By: Torkel Ödegaard <torkel@grafana.com>
Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* PanelEditor: Fixed issue with PanelModel change plugin type (#23949)

* azuremonitor:  port azure log analytics query function to the backend (#23839)

* azuremonitor: add support for log analytics macros

Also adds tests for the kql macros

* azuremonitor: backend implementation for Log Analytics

* azuremonitor: remove gzip header from plugin route

The Go net/http library adds an accept encoding header
for gzip automatically.

https://golang.org/src/net/http/transport.go\#L2454

So no need to specify it manually

* azuremonitor: parses log analytics time series

* azuremonitor: support for table data for Log Analytics

* azuremonitor: for log analytics switch to calling the API...

...from the backend for time series and table queries.

* azuremonitor: fix missing err check

* azuremonitor: support Azure China, Azure Gov...

for log analytics on the backend.

* azuremonitor: review fixes

* azuremonitor: rename test files folder to testdata

To follow Go conventions for test data in tests

* azuremonitor: review fixes

* azuremonitor: better error message for http requests

* azuremonitor: fix for load workspaces on config page

* azuremonitor: strict null check fixes

Co-authored-by: bergquist <carl.bergquist@gmail.com>

* Update data frame concept doc (#23921)

* Update data frame concept doc

* Fix typo

* Fix typo

* Fix Dockerfile* (#23954)

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

* Search/ui issues (#23945)

* Search: Move layout to query reducer/hook

* Search: Move extra layout/sort logic to reducer

* Search: Tweak action row spacing

* Search: Update TagOption

* Search: Remove duplicate function

* Search: Add Clear tags button

* Search: Align checkbox

* Search: Add TagFilter.displayName

* Search: Update default placeholder

* Search: Return all dashboards for list view

* Search: Apply custom line-height to ActionRow checkbox

* MaxDataPoints: Now used in interval calculation for all data sources (#23915)

* MaxDataPoints: Now enabled for all

* Updates to code and test

* Moved the panel query inspector

* PaneQueryRunner: Simplify logic and only take in maxDataPoints not width

* Make sidemenu header accept onClick events (#23957)

* backend_plugins: duration support in Frame (#23962)

sdk v0.57.0
go mod tidy

* PanelEditor: fixes save/apply for undefined props in restoreModel (#23939)

* PanelEditor: fixes save/apply for undefined props in restoreModel

* Refactor: changes after PR comments

* Refactor: changes sourcePanel refresh strategy

* Added unit tests and minor refactoring of method, starting with cleanup, then setting properties from model

* Update public/app/features/dashboard/state/PanelModel.test.ts

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* docs: adds provisioning config example (#23940)

* Docs: Minor correction in documentation (#23899)

* Minor correction in documentation

* Refactoring the previous change

* Docs: Add DescribeAlarmHistory to minimal IAM policy (#23965)

DescribeAlarmHistory is used in the annotations query.

* Image rendering: Fix missing icon on plugins list (#23958)

Fixes #23189

* Dashboard: Handle min refresh interval when importing dashboard (#23959)

If refresh interval is lower than minimum refresh interval
when importing dashboard, use the minimum refresh interval
instead of returning error.

Fixes #23099

* Docs: Multiple changes to make document easier to read (#23842)

* multiple changes to make document easier to read

* Update docs/sources/features/datasources/loki.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/loki.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/loki.md

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* Update docs/sources/features/datasources/loki.md

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

* Docs: Suggesting multiple changes for better readability (#23843)

* Suggesting multiple changes for better readability

* Update docs/sources/features/datasources/mssql.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/mssql.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/mssql.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Docs: Mark macro examples as code (#23932)

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

* Docs: Add DescribeAlarms to minimal IAM policy (#23968)

DescribeAlarmHistory is used in the prefix matching of the annotations query

* Panels: Update panel logos (#23964)

* Various 7.0 UI tweaks (#23972)

* Set min height of panel pane to 200px

* Disable badge on viz picker when item is in disabled in search results

* Fix UserProfile inputs width

* Remove select caret in user admin permissions editor

* fix 23911

* Explore: Fix query rows styles (#23973)

* CloudWatch: Remove cloud watch flag (#23974)

* TestData/Graph: load arrow and zoom to data range (#23764)

* Docs: Fix building of docs (#23923)

* Docs: Fix building of docs
* CircleCI: Fixate grafana/docs-base image revision in job for building docs

* Docs: enable packages reference docs for 7-beta (#23953)

* added packages reference menu item.

* removed the draft flag.

* Updated docs by running script.

* AlertTab: some ui updates (#23971)

* updated the alerting tab.

* changed so we use a confirm button.

* removed uncommeneted import.

* Change to secondary buttons

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* trying to fix issue with panel of undefined.

* Fix prettier

* Update public/app/features/alerting/AlertTab.tsx

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Docs: Query history 7.0 updates  (#23955)

* Update docs about query history

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Metrictank: Fix meta inspector consolidator field names (#23838)

to match https://github.com/grafana/metrictank/pull/1798

* Chore: Update Grafana version (#23985)

* Update Grafana version

* fix after merge

* merge conflicts

* migration script and new icons in editor

* revert migration, use iconmap lookup

* add tooltip

* cleanup after merge

* revert

* remove angular dashboard links and related components

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Mohit Nain <Mohit_Nain@infosys.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Carl Bergquist <carl@grafana.com>
Co-authored-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Stephanie Closson <srclosson@gmail.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Emil Tullstedt <sakjur@gmail.com>
Co-authored-by: Arve Knudsen <arve.knudsen@grafana.com>
Co-authored-by: Leonard Gram <leonard.gram@grafana.com>
Co-authored-by: Jack Stevenson <jackstevenson@users.noreply.github.com>
Co-authored-by: Amal <56926487+amalkurup89@users.noreply.github.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Leonard Gram <leo@xlson.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Jess <53754871+jessover9000@users.noreply.github.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: Joseph Robinson <josephremail@gmail.com>
Co-authored-by: Andreas Opferkuch <andreas.opferkuch@gmail.com>
Co-authored-by: Omar Nahhas Sanchez <omar@innovativerealities.com>
Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: Johannes Brück <6677058+bruecktech@users.noreply.github.com>
Co-authored-by: Clarity-89 <homes89@ukr.net>
Co-authored-by: tmarszal <tmarszal@gmail.com>
Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>
Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
Co-authored-by: Jon Gyllenswärd <jon.gyllensward@grafana.com>
Co-authored-by: Jan Garaj <jan.garaj@gmail.com>
Co-authored-by: Dieter Plaetinck <dieter@grafana.com>
2020-05-05 09:49:34 +02:00
Ryan McKinley
dd5814b51b Runtime: expose angular injector (#24262) 2020-05-04 14:40:52 -07:00
Amal
1eb52465d7 Added a missing closing bracket (#24254) 2020-05-04 22:15:02 +02:00
Amal
1f784ad1a0 Minor typo correction (#24255) 2020-05-04 22:14:22 +02:00
Marcus Efraimsson
bcf5c937d5 Plugins: Require backend plugins to be signed when using plugin path (#24244) 2020-05-04 22:12:18 +02:00
Amal
b3ccae9c93 Fixed a minor issue in dcoumentation (#24251) 2020-05-04 21:50:33 +02:00
Amal
963254e824 Minor typo correction in docs (#24252) 2020-05-04 21:49:44 +02:00
Diana Payton
c6da8542af Docs: Panel inspector (#24172)
* added panel inspector content

Added inspect-panel content and placeholders for future doc architecture

* Updated topics

* Update docs/sources/panels/inspect-panel.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Update docs/sources/panels/inspect-panel.md

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-05-04 12:24:09 -07:00
Torkel Ödegaard
726009870b LoginPage: New design (#23892)
* LoginPage: initial poc

* wIP

* Prgress

* Start Forms migration

* Fix layout and change password animation

* Migrate style to emotion

* Fix small things

* Remove classes

* Fix logo and title

* Disable disabled button

* Add custom fields and fix layout

* Update flyin animation

* Change animation timing

* Update comment

* Same styles for submit button

* Update snapshot

* Minor tweaks and made slogan random

Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
2020-05-04 21:14:37 +02:00
Ryan McKinley
3487e518ab Signing: allow unsigned plugin in dev mode (#24242) 2020-05-04 11:57:11 -07:00
Ryan McKinley
83683d87f8 Errors: support errors with frame data from backend responses (#24176) 2020-05-04 11:05:04 -07:00
David
9e06f9c402 Logs: Add log level Fatal (#24185)
- recognizes log levels "fatal" and "information"
- renders "fatal" with same color as other levels similar to "critical"
2020-05-04 18:17:31 +02:00
Ivana Huckova
4f5ce48b2a Loki: Fix label matcher for log metrics queries (#24238)
* Fix switched filter buttons

* Fix filter for and filter out for metrics queries

* Add test coverage
2020-05-04 18:16:54 +02:00
David
9420873e6c Loki: Show loki datasource stats in panel inspector (#24190)
* Loki: Show loki datasource stats in panel inspector

- puts the loki query result stats into the query results meta stat API
of Grafana, this allows the display of all backend loki stats in the
panel inspector in the dashboards
- added a hack to also display one of those values in Explore as a meta
label using the dataframe meta `custom` mechanims to point to a single
stat entry for each series which is then added together to show total
bytes processed across all query row results (this should be changed for
7.1 to make full use of the panel inspector in Explore)

* Fix test

* nicer stats labels for loki stats with units
2020-05-04 18:06:21 +02:00
Arve Knudsen
2fc2a7c3f5 Plugins: Only load transform plug-ins if expressions feature on (#24110)
* PluginManager: Only load transform plugins if expressions feature on

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-05-04 17:39:20 +02:00
Dominik Prokop
89db44e6f3 DataLinks: Do not add empty links (#24088)
* Do not add empty links

* Review
2020-05-04 17:36:57 +02:00
Agnès Toulet
a5b377e701 Docs: add Usage Insights documentation (#23982)
* Docs: start on usage insights

* Docs: first draft for Usage Insights content

* Docs: clean up usage insights docs

* Docs: revert prettier updates

* Update docs/sources/enterprise/usage-insights.md

Co-Authored-By: Emil Tullstedt <emil.tullstedt@grafana.com>

* Docs: rewrite presence indicators paragraph

* Docs: feedback update

* Update docs/sources/enterprise/_index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Docs: headings to sentence case

* Update docs/sources/enterprise/usage-insights.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/enterprise/usage-insights.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/enterprise/usage-insights.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/enterprise/usage-insights.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Docs: add dashboard insights button image

* Docs: add consistency

* Docs: add lower case

* Update docs/sources/enterprise/usage-insights.md

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update docs/sources/enterprise/usage-insights.md

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update docs/sources/enterprise/usage-insights.md

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Docs: singular presence indicator and improved search feedback

* Docs: Apply PR feedback

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2020-05-04 17:14:23 +02:00
Tobias Skarhed
3c433b218e DashboardManager: Disable editing if there are no folder permissions (#24237)
* Disable editing if there are no folder permissions

* Remove log
2020-05-04 17:06:53 +02:00
Torkel Ödegaard
92a16d2e10 Transforms: Adds beta notice and updates transform descriptions (#24158)
* Transforms: Adds beta notice and updates transform descriptions

* Rename organize fields

* Webpack - enable images import

* Introduce FeatureState type

* Alow Container component grow/shrink config

* Enable svg import in main app

* Jest + webpack for svgs

* InfoBox refactor (+ added feature info box), Badge component introduced

* Update packages/grafana-ui/src/components/TransformersUI/FilterByNameTransformerEditor.tsx

Co-authored-by: Carl Bergquist <carl@grafana.com>

* Minor fixes

* Update packages/grafana-ui/src/components/TransformersUI/OrganizeFieldsTransformerEditor.tsx

Co-authored-by: Carl Bergquist <carl@grafana.com>

* Update packages/grafana-ui/src/components/TransformersUI/SeriesToFieldsTransformerEditor.tsx

Co-authored-by: Carl Bergquist <carl@grafana.com>

* fix typo

* Build storybook fixed

* Fix padding

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Carl Bergquist <carl@grafana.com>
2020-05-04 15:05:31 +02:00
Hugo Häggmark
0fe9e7e242 e2e: upgrades Cypress to 4.50 (#24099)
* Chore: upgrades Cypress to 4.5.0

* Refactor: splits up huge it into several

* Refactor: prevent flakiness

* Refactor: updates yarn.lock

* Refactor: changes after PR comments

* Refactor: uses e2e.flows instead of import
2020-05-04 14:44:25 +02:00
Ryan McKinley
53328718e1 Transformers: improve timeseries support (#23978)
* extract out the field creation parts

* extract out the field creation parts

* three math modes

* better timeseries support

* TestData/Graph: load arrow and zoom to data range (#23764)

* Docs: Fix building of docs (#23923)

* Docs: Fix building of docs
* CircleCI: Fixate grafana/docs-base image revision in job for building docs

* Docs: enable packages reference docs for 7-beta (#23953)

* added packages reference menu item.

* removed the draft flag.

* Updated docs by running script.

* AlertTab: some ui updates (#23971)

* updated the alerting tab.

* changed so we use a confirm button.

* removed uncommeneted import.

* Change to secondary buttons

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* trying to fix issue with panel of undefined.

* Fix prettier

* Update public/app/features/alerting/AlertTab.tsx

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>

* Docs: Query history 7.0 updates  (#23955)

* Update docs about query history

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Metrictank: Fix meta inspector consolidator field names (#23838)

to match https://github.com/grafana/metrictank/pull/1798

* Chore: Update Grafana version (#23985)

* Update Grafana version

* Docs: What's new in 7.0 placeholder (#23987)

* Docs: What's new in 7.0 placeholder

* Updated makefile

* Search: minor fixes (#23984)

* Search: Use folder id as key when present

* Search: Do not render modals if not open

* Enterprise: List 7.0 features (#23956)

* CircleCI: Fix triggering of jobs for releases (#23999)

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

* Fix pagination of issues/PR's in changelog generator (#23997)

Fix pagination of issues/PR's in changelog generator

* Search: Convert time pickers to CSF (#24002)

* updated docs for reporting (#23733)

* updated docs

* peering comments

* Added info about what version test mails requires

* Tracing: Fix view bounds after trace change (#23994)

* Docs: fix image link (#24011)

* Update whats new (#24012)

* Chore: Put what's new and release notes URLs in package.json (#24006)

* Put what's new and release notes URLs in package.json
* Upgrade build pipeline tool

* Update changelog for v7.0.0-beta1 (#24007)

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-Authored-By: Andrej Ocenas <mr.ocenas@gmail.com>
Co-Authored-By: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* verify-repo-update: Fix Dockerfile.deb (#24030)

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

* CircleCI: Upgrade build pipeline tool (#24021)

* CircleCI: Upgrade build pipeline tool

* Devenv: ignore enterprise (#24037)

* Add header icon to Add data source page (#24033)

* latest.json: Update testing version (#24038)

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

* Fix login page redirected from password reset (#24032)

* Storybook: Rewrite stories to CSF (#23989)

* ColorPicker to CSF format

* Convert stories to CSF

* Do not export ClipboardButton

* Update ConfirmButton

* Remove unused imports

* Fix feedback

* changelog enterprise 7.0.0-beta1 (#24039)

* CircleCI: Bump grafana/build-container revision (#24043)

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

* Changelog: Updates changelog with more feature details (#24040)

* Changelog: Updates changelog with more feature details

* spell fix

* spell fix

* Updates

* Readme update

* Updates

* Select: fixes so component loses focus on selecting value or pressing outside of input. (#24008)

* changed the value container to a class component to get it to work with focus (maybe something with context?).

* added e2e tests to verify that the select focus is working as it should.

* fixed according to feedback.

* updated snapshot.

* Devenv: add remote renderer to grafana (#24050)

* NewPanelEditor: minor UI twekas (#24042)

* Forward ref for tabs, use html props

* Inspect:  add inspect label to drawer title

* Add tooltips to sidebar pane tabs, copy changes

* Remove unused import

* Place tooltips over tabs

* Inspector: dont show transformations select if there is only one data frame

* Review

* Changelog: Add a breaking change (#24051)

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

* CircleCI: Unpin grafana/docs-base (#24054)

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

* Search: close overlay on Esc press (#24003)

* Search: Close on Esc

* Search: Increase bottom padding for the last item in section

* Search: Move closing search to keybindingsSrv

* Search: Fix folder view

* Search: Do not move folders if already in folder

* Docs: Adds deprecation notice to changelog and docs for scripted dashboards (#24060)

* Update CHANGELOG.md (#24047)

Fix typo

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>

* Documentation: Alternative Team Sync Wording (#23960)

* Alternative wording for team sync docs

Signed-off-by: Joe Elliott <number101010@gmail.com>

* Update docs/sources/auth/team-sync.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Fix misspell issues (#23905)

* Fix misspell issues

See,
$ golangci-lint run --timeout 10m --disable-all -E misspell ./...

Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>

* Fix codespell issues

See,
$ codespell -S './.git*' -L 'uint,thru,pres,unknwon,serie,referer,uptodate,durationm'

Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>

* ci please?

* non-empty commit - ci?

* Trigger build

Co-authored-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>

* more tests

* remove FieldConfig setting

* merged binary and reduce

* improve tests

* update options after values change

* Minor refactoring and polish to UI

* Minor fixes

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Dieter Plaetinck <dieter@grafana.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Emil Tullstedt <sakjur@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Jon Gyllenswärd <jon.gyllensward@grafana.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Leonard Gram <leo@xlson.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
Co-authored-by: Richard Hartmann <RichiH@users.noreply.github.com>
Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
Co-authored-by: Joe Elliott <joe.elliott@grafana.com>
Co-authored-by: Mario Trangoni <mario@mariotrangoni.de>
Co-authored-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
2020-05-04 14:37:52 +02:00
Torkel Ödegaard
5a20782499 NewPanelEdit: Fixes issue with angular panel clean up, and cleanup after leaving edit mode (#24224) 2020-05-04 14:11:15 +02:00
Torkel Ödegaard
5f621a736a Dashboard: Go to explore now works even after discarding dashboard changes (#24149)
* Explore: Fix issue with going to explore

* removed console log
2020-05-04 14:11:03 +02:00
Hugo Häggmark
215f2e005b PanelInspector: hides Query tab for plugins without Query ability (#24216)
* PanelInspector: fixes so Query tab is hidden for plugins without Query ability

* Refactor: changes after PR comments
2020-05-04 13:58:05 +02:00
Torkel Ödegaard
2d5e675d4e PanelEdit: Fixed scroll pos moved to top when clicking new radio buttons (#24146) 2020-05-04 13:37:43 +02:00
Torkel Ödegaard
b57802e61f NewPanelEdit: Copy untransformed result from source panel (#24211) 2020-05-04 12:14:32 +02:00
Ryan McKinley
7e1bf0e7e2 Gauge: apply decimal limits to gauge min/max labels (#24192)
* limit label size

* fix tests
2020-05-04 12:13:12 +02:00
Michael Cristina
4a5434bffa Graph: align form switch in graph panel (#24202) 2020-05-04 12:12:32 +02:00
Arve Knudsen
6fb7a60a2b Dockerfile: Move Go step after JS step, since it's faster (#24221)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-04 11:59:10 +02:00
Alex Khomenko
6768fb3672 Search: Add filterOption prop to Select (#24213) 2020-05-04 12:43:09 +03:00
Lukas Siatka
8a88632791 Chore: changes elastic terms min_doc_count default from 1 to 0 (#24204) 2020-05-04 11:31:52 +02:00
Leonard Gram
e8341a09b2 Docs: make sure we always use the latest docs image (#24217) 2020-05-04 11:15:51 +02:00
Arve Knudsen
96ffcaa134 Plugins: Require signing of external back-end plugins (#24075)
* PluginManager: Require signing of external plugins

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-04 10:57:55 +02:00
Andreas Opferkuch
827f99f0cb Prometheus: Refresh query field metrics on data source change (#24116)
... in `componentDidUpdate`, not just `componentDidMount`.

Also unify query field behavior of Explore with Dashboard - when the
data source changes, it doesn't unmount but instead refreshes its
metrics.

Fixes #23162
2020-05-04 10:17:57 +02:00
Ivana Huckova
e9243215a6 Remove beta references from Query history (#24114) 2020-05-04 10:02:34 +02:00
Amal
fae2356a86 Minor grammatical fix (#24200) 2020-05-03 22:31:48 +02:00
Marcus Efraimsson
94efd06858 End2end: Make it possible to run e2e tests with BASE_URL (#24041) 2020-05-03 13:51:30 +02:00
Torkel Ödegaard
f273e56adc Graph: Fixed graph tooltip getting stuck / not being cleared when leaving dashboard, fixes #23881 (#24162) 2020-05-03 13:41:45 +02:00
Amal
98ea52ce6f Minor fix in documentation (#24168) 2020-05-02 20:03:39 +02:00
Amal
8f3b405f63 Inserting a comma for better readability (#24169) 2020-05-02 20:02:37 +02:00
Amal
71e8b79986 Minor typo fix (#24166) 2020-05-02 19:58:06 +02:00
Ryan McKinley
7c66241310 Filter by RefId: update options after input changes (#24160) 2020-05-02 08:32:43 -07:00
Alex Khomenko
89ee84a909 Storybook/fix modal docs (#24150)
* Convert modal

* Storybook: Add mdx for Modal

* Storybook: Add mdx for ConfirmModal

Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
2020-05-02 12:52:22 +03:00
Steven Vachon
861fa8cae6 @grafana/e2e: update datasource dropdown selector (#24141) 2020-05-01 19:49:56 -04:00
Ryan McKinley
5a2efe1f62 Plugins: list app dynamics as an enterprise plugin (#24165) 2020-05-01 13:21:33 -07:00
Ryan McKinley
4710f6bebe ArrayDataFrame: use normal property for fields and length (#24145) 2020-05-01 07:41:55 -07:00
Andrej Ocenas
442c087f98 Tracing: Update Typescript version in jaeger-ui-component (#24156) 2020-05-01 15:26:54 +02:00
Peter Holmberg
707b2c5e89 PanelEditor: Only show cache timeout if enabled in data source plugin json (#24095)
* only show cache timeout if enabled in datasource

* move conditional

* Update public/app/features/dashboard/panel_editor/QueryOptions.tsx

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-05-01 14:15:26 +02:00
Torkel Ödegaard
a00636b2ec PanelEditor: Fixes issue changing panel type from graph to stat and thresholds not taking affect after going back to dashboard (#24144)
* PanelEditor: Fixes issue with panel type change and query result reuse

* removed unused imports

* removed unused imports
2020-05-01 14:14:52 +02:00
Torkel Ödegaard
4f81125af0 Search: Bring back open search by clicking dashboard name (#24151) 2020-05-01 14:13:22 +02:00
Amal
e7d906d445 Changed the tense of the verb inline with other entries (#24147) 2020-05-01 10:02:28 +02:00
Amal
94d7d9aa89 Minor grammatical correction (#24148) 2020-05-01 10:01:10 +02:00
Amal
905e644c22 Docs: Minor fix for better readability (#24126)
* Minor fix for better readability

* Update docs/sources/guides/glossary.md

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

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-01 07:43:29 +02:00
Amal
416ec8a99f Docs: Minor grammatical correction in docs (#24142) 2020-05-01 07:43:05 +02:00
Torkel Ödegaard
1314f0b651 Docs: Fixed location of items in docs (#24143) 2020-05-01 07:42:43 +02:00
Abhi Ramani
080be436e2 Storybook: Update new favicon (#24111) 2020-05-01 06:44:52 +02:00
Amal
e2c404518b Minor correction in doc (#24129)
* Minor correction in doc

* Update docs/sources/plugins/developing/plugin-review-guidelines.md

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

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-05-01 06:41:53 +02:00
Diana Payton
5ee5d23db8 Docs: Update navigation-links.md (#23970) 2020-04-30 16:25:12 -07:00
Diana Payton
e7057387a2 Docs: Refactor Variables and Templating content (#23952)
* Moved templating.md

Moved file to a different folder, added alias information, updated menu.yaml

* Split out advanced variable format options from templating.md

* Reworked Advanced variable format options

* Update templating.md

* Moved global variables to another topic

* Moved template files

* Update global-variables.md

* Update global-variables.md

* Update templates-and-variables.md

* made new repeating panels and rows topic

* updated links and menu

* Update advanced-variable-format-options.md

* Update repeat-panels-or-rows.md

* Update menu.yaml

* Update prometheus.md

* Applied Daniel's edits
2020-04-30 16:24:59 -07:00
Amal
1bdc9703d3 Minor correction in documentation (#24130) 2020-05-01 00:48:59 +02:00
Amal
bd0e56caac Minor grammatical correction in docs (#24133) 2020-05-01 00:46:09 +02:00
Amal
a688a67c26 Typo correction in docs (#24131) 2020-05-01 00:45:20 +02:00
Amal
9945713a7b Grammatical correction in doc (#24127) 2020-04-30 23:57:57 +02:00
Daniel Lee
b756d49da8 docs: 7.0 beta what's new draft (#24066)
* docs: 7.0 beta what's new draft

* Updates

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Jon Gyllenswärd <jon.gyllensward@grafana.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Jon Gyllenswärd <jon.gyllensward@grafana.com>

* Update whats-new-in-v7-0.md

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* docs: time zones, query history and links for whats new

* docs: spelling in whats new

* docs: rollup indicator and backend plugins for whats new

* docs: what's new tweak

* docs: what's new formatting

* docs: whats new. Headings tweak

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/guides/whats-new-in-v7-0.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* docs: whats new review fixes

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Jon Gyllenswärd <jon.gyllensward@grafana.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-04-30 23:18:15 +02:00
Amal
04ed8801f6 Refactoring the statement for better readability (#24124) 2020-04-30 22:52:50 +02:00
Amal
b487b90143 Grammatical correction in docs (#24123) 2020-04-30 22:51:49 +02:00
Steven Vachon
6558df83ad @grafana/e2e: fix module paths for runtime (#24121)
... because the "src" dir only exists at compile time.
2020-04-30 16:46:33 -04:00
Amal
4ddc0e02e2 Docs: Minor typo correction in documentation (#24122) 2020-04-30 13:41:37 -07:00
Amal
e1f6a5c193 docs/sources/administration/image_rendering.md: Improve language 2020-04-30 22:09:37 +02:00
Steven Vachon
b027e25127 @grafana/e2e: fix dependencies (#24109)
* @cypress/webpack-preprocessor is needed at runtime

* Removed redundant packages

* Removed unnecessary packages
2020-04-30 11:55:37 -04:00
Arve Knudsen
22840241ed scripts/tag_release.sh: Push only tag, not branch (#24055)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-30 17:24:21 +02:00
Tobias Skarhed
7b7c365018 Storybook: CSF Modal conversion (#24085)
* Convert modal

* Update packages/grafana-ui/src/components/Modal/Modal.story.tsx

Co-Authored-By: Alex Khomenko <Clarity-89@users.noreply.github.com>

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2020-04-30 16:47:29 +02:00
Andrej Burger
2e4a8d4d5a Docs: Bullets indentation fixed in Stats panel (#24100) 2020-04-30 07:18:30 -07:00
Hassan Farid
ad51e60a70 Docs: Updated dashboard heading for side navigation (#24102)
Updated heading level to reflect correctly on side navigation. It was being merged with under Datasources
2020-04-30 07:17:13 -07:00
Jess
ab60a8d37a Another storybook csf conversion (#24097)
* Convert Spinner to CSF

* Convert TableInputCSV to CSF

* Convert ToggleButtonGroup to CSF

* Convert ValueMappingsEditor to CSF

* Convert useDelayedSwitch to CSF
2020-04-30 17:00:05 +03:00
Arve Knudsen
9939d3bb38 Upgrade build pipeline tool (#24093)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-30 14:24:20 +02:00
Peter Holmberg
ca7a373983 Fix: Propagate unhandled errors when saving Dashboard (#24081)
* only handle error for cases we handle

* added missing case

* remove not used import
2020-04-30 14:08:43 +02:00
Arve Knudsen
dda8caf48c Docker: Upgrade to Alpine 3.11 (#24056)
* Docker: Upgrade to Alpine 3.11
2020-04-30 13:42:06 +02:00
Jess
37b1ae32cc More Storybook csf conversion (#24090)
* Convert ClipboardButton to CSF

* Convert CallToActionCard to CSF

* Convert BarGauge to CSF

* Convert DataSourceHttpSettings to CSF

* Convert ConfirmModal to CSF

* Convert FormField to CSF

* Convert Input to CSF

* Convert ButtonSelect to CSF

* Removed unused import from ButtonSelect story

* Convert InfoTooltip to CSF

* Convert List to CSF

* Convert QueryField to CSF

* Convert RefreshPicker to CSF

* Convert SecretFormField to CSF
2020-04-30 14:30:23 +03:00
Jess
15c44f3db5 Storybook csf conversion (#24084)
* Convert ClipboardButton to CSF

* Convert CallToActionCard to CSF

* Convert BarGauge to CSF

* Convert DataSourceHttpSettings to CSF

* Convert ConfirmModal to CSF

* Convert FormField to CSF
2020-04-30 13:58:17 +03:00
Ivana Huckova
e2436b29c0 Explore: Fix showing of results of queries in table (#24018)
* Fix: Show results of instant queries in Explore tables

* Add PreferredVisualisationType to meta

* Implement visualisation exception for Prometheus

* Implement visualisation exception for Elastic
2020-04-30 12:41:03 +02:00
Jon Gyllenswärd
f2254081c2 added out option (#24052)
* added out option

* Added example in readme
2020-04-30 10:53:19 +02:00
Hugo Häggmark
55ac97dccc e2e: adds panel editor tests for test data queries (#23996) 2020-04-30 09:26:59 +02:00
Ryan McKinley
efeb4c1341 Graph Panel: show warnings with actions (#23975) 2020-04-29 23:21:28 -07:00
Mario Trangoni
5116420e9a Fix misspell issues (#23905)
* Fix misspell issues

See,
$ golangci-lint run --timeout 10m --disable-all -E misspell ./...

Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>

* Fix codespell issues

See,
$ codespell -S './.git*' -L 'uint,thru,pres,unknwon,serie,referer,uptodate,durationm'

Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>

* ci please?

* non-empty commit - ci?

* Trigger build

Co-authored-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Kyle Brandt <kyle@grafana.com>
2020-04-29 21:37:21 +02:00
Joe Elliott
023c1a6e3f Documentation: Alternative Team Sync Wording (#23960)
* Alternative wording for team sync docs

Signed-off-by: Joe Elliott <number101010@gmail.com>

* Update docs/sources/auth/team-sync.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-04-29 21:35:07 +02:00
Richard Hartmann
2ac8a6dbd6 Update CHANGELOG.md (#24047)
Fix typo

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2020-04-29 21:33:31 +02:00
Torkel Ödegaard
11134efcda Docs: Adds deprecation notice to changelog and docs for scripted dashboards (#24060) 2020-04-29 18:24:26 +02:00
Alex Khomenko
ab07326169 Search: close overlay on Esc press (#24003)
* Search: Close on Esc

* Search: Increase bottom padding for the last item in section

* Search: Move closing search to keybindingsSrv

* Search: Fix folder view

* Search: Do not move folders if already in folder
2020-04-29 19:18:37 +03:00
Arve Knudsen
11eca387a0 CircleCI: Unpin grafana/docs-base (#24054)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-29 16:16:46 +02:00
Arve Knudsen
edf5a2cec1 Changelog: Add a breaking change (#24051)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-29 15:47:21 +02:00
Dominik Prokop
7601e0bbd3 NewPanelEditor: minor UI twekas (#24042)
* Forward ref for tabs, use html props

* Inspect:  add inspect label to drawer title

* Add tooltips to sidebar pane tabs, copy changes

* Remove unused import

* Place tooltips over tabs

* Inspector: dont show transformations select if there is only one data frame

* Review
2020-04-29 15:41:33 +02:00
Leonard Gram
4645167421 Devenv: add remote renderer to grafana (#24050) 2020-04-29 15:16:37 +02:00
Marcus Andersson
be8c62033c Select: fixes so component loses focus on selecting value or pressing outside of input. (#24008)
* changed the value container to a class component to get it to work with focus (maybe something with context?).

* added e2e tests to verify that the select focus is working as it should.

* fixed according to feedback.

* updated snapshot.
2020-04-29 15:02:09 +02:00
Torkel Ödegaard
a35babee40 Changelog: Updates changelog with more feature details (#24040)
* Changelog: Updates changelog with more feature details

* spell fix

* spell fix

* Updates

* Readme update

* Updates
2020-04-29 14:50:54 +02:00
Arve Knudsen
8d8d9aac64 CircleCI: Bump grafana/build-container revision (#24043)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-29 14:47:31 +02:00
Leonard Gram
a7fa0e45eb changelog enterprise 7.0.0-beta1 (#24039) 2020-04-29 13:10:22 +02:00
Tobias Skarhed
82f055ac1d Storybook: Rewrite stories to CSF (#23989)
* ColorPicker to CSF format

* Convert stories to CSF

* Do not export ClipboardButton

* Update ConfirmButton

* Remove unused imports

* Fix feedback
2020-04-29 13:08:27 +02:00
Alexander Zobnin
afc78339bd Fix login page redirected from password reset (#24032) 2020-04-29 14:04:32 +03:00
Arve Knudsen
670c96a1db latest.json: Update testing version (#24038)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-29 12:44:22 +02:00
Ivana Huckova
c2ae64b64a Add header icon to Add data source page (#24033) 2020-04-29 11:05:58 +02:00
Leonard Gram
7a7dca232c Devenv: ignore enterprise (#24037) 2020-04-29 10:57:29 +02:00
Arve Knudsen
f2e37b79dc CircleCI: Upgrade build pipeline tool (#24021)
* CircleCI: Upgrade build pipeline tool
2020-04-29 10:42:23 +02:00
Arve Knudsen
33ba9bb21b verify-repo-update: Fix Dockerfile.deb (#24030)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-29 10:14:35 +02:00
Marcus Efraimsson
64aba38f49 Update changelog for v7.0.0-beta1 (#24007)
Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-Authored-By: Andrej Ocenas <mr.ocenas@gmail.com>
Co-Authored-By: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
2020-04-29 09:52:55 +02:00
Arve Knudsen
2a57e1108c Chore: Put what's new and release notes URLs in package.json (#24006)
* Put what's new and release notes URLs in package.json
* Upgrade build pipeline tool
2020-04-28 21:26:36 +02:00
Torkel Ödegaard
773dbb791a Update whats new (#24012) 2020-04-28 18:38:09 +02:00
Torkel Ödegaard
aaa249aa3b Docs: fix image link (#24011) 2020-04-28 18:31:54 +02:00
Andrej Ocenas
1f9ebf0402 Tracing: Fix view bounds after trace change (#23994) 2020-04-28 17:55:40 +02:00
Jon Gyllenswärd
6c7a917232 updated docs for reporting (#23733)
* updated docs

* peering comments

* Added info about what version test mails requires
2020-04-28 17:29:24 +02:00
Alex Khomenko
4c823d9221 Search: Convert time pickers to CSF (#24002) 2020-04-28 18:09:32 +03:00
Marcus Efraimsson
7c43dca9bb Fix pagination of issues/PR's in changelog generator (#23997)
Fix pagination of issues/PR's in changelog generator
2020-04-28 16:32:12 +02:00
Arve Knudsen
c24ca8ce41 CircleCI: Fix triggering of jobs for releases (#23999)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-28 16:05:35 +02:00
Emil Tullstedt
f722c665e7 Enterprise: List 7.0 features (#23956) 2020-04-28 15:22:30 +02:00
Alex Khomenko
dd31207ecf Search: minor fixes (#23984)
* Search: Use folder id as key when present

* Search: Do not render modals if not open
2020-04-28 15:31:11 +03:00
Torkel Ödegaard
88e9fccbc7 Docs: What's new in 7.0 placeholder (#23987)
* Docs: What's new in 7.0 placeholder

* Updated makefile
2020-04-28 14:17:54 +02:00
Arve Knudsen
154dc18809 Chore: Update Grafana version (#23985)
* Update Grafana version
2020-04-28 12:29:28 +02:00
Dieter Plaetinck
3d17d63891 Metrictank: Fix meta inspector consolidator field names (#23838)
to match https://github.com/grafana/metrictank/pull/1798
2020-04-28 10:48:21 +02:00
Ivana Huckova
94e28cb65b Docs: Query history 7.0 updates (#23955)
* Update docs about query history

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-04-28 10:21:59 +02:00
Marcus Andersson
7d58ec3d47 AlertTab: some ui updates (#23971)
* updated the alerting tab.

* changed so we use a confirm button.

* removed uncommeneted import.

* Change to secondary buttons

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* trying to fix issue with panel of undefined.

* Fix prettier

* Update public/app/features/alerting/AlertTab.tsx

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-28 10:06:27 +02:00
Marcus Andersson
cc3fc18076 Docs: enable packages reference docs for 7-beta (#23953)
* added packages reference menu item.

* removed the draft flag.

* Updated docs by running script.
2020-04-28 09:53:58 +02:00
Arve Knudsen
5442b0ab4f Docs: Fix building of docs (#23923)
* Docs: Fix building of docs
* CircleCI: Fixate grafana/docs-base image revision in job for building docs
2020-04-28 09:27:46 +02:00
Ryan McKinley
02140fff2d TestData/Graph: load arrow and zoom to data range (#23764) 2020-04-27 16:41:41 -07:00
Andrej Ocenas
843141d9da CloudWatch: Remove cloud watch flag (#23974) 2020-04-27 23:53:35 +02:00
Andrej Ocenas
f13f54c84f Explore: Fix query rows styles (#23973) 2020-04-27 23:53:15 +02:00
Dominik Prokop
8de606aa22 Various 7.0 UI tweaks (#23972)
* Set min height of panel pane to 200px

* Disable badge on viz picker when item is in disabled in search results

* Fix UserProfile inputs width

* Remove select caret in user admin permissions editor

* fix 23911
2020-04-27 23:28:24 +02:00
Torkel Ödegaard
6a1845997b Panels: Update panel logos (#23964) 2020-04-27 22:08:43 +02:00
Jan Garaj
796c6781b4 Docs: Add DescribeAlarms to minimal IAM policy (#23968)
DescribeAlarmHistory is used in the prefix matching of the annotations query
2020-04-27 13:02:18 -07:00
Arve Knudsen
d6cefafa12 Docs: Mark macro examples as code (#23932)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-27 21:43:32 +02:00
Mohit Nain
be7391550f Docs: Suggesting multiple changes for better readability (#23843)
* Suggesting multiple changes for better readability

* Update docs/sources/features/datasources/mssql.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/mssql.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/mssql.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-04-27 12:31:54 -07:00
Mohit Nain
7a0fecb578 Docs: Multiple changes to make document easier to read (#23842)
* multiple changes to make document easier to read

* Update docs/sources/features/datasources/loki.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/loki.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/loki.md

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* Update docs/sources/features/datasources/loki.md

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-27 12:21:55 -07:00
Marcus Efraimsson
b22649bf8d Dashboard: Handle min refresh interval when importing dashboard (#23959)
If refresh interval is lower than minimum refresh interval
when importing dashboard, use the minimum refresh interval
instead of returning error.

Fixes #23099
2020-04-27 21:17:28 +02:00
Marcus Efraimsson
0a1650d265 Image rendering: Fix missing icon on plugins list (#23958)
Fixes #23189
2020-04-27 21:15:44 +02:00
Jan Garaj
c45b6c86e1 Docs: Add DescribeAlarmHistory to minimal IAM policy (#23965)
DescribeAlarmHistory is used in the annotations query.
2020-04-27 21:13:46 +02:00
Amal
48e3b8e022 Docs: Minor correction in documentation (#23899)
* Minor correction in documentation

* Refactoring the previous change
2020-04-27 12:08:34 -07:00
Carl Bergquist
28a5530fc9 docs: adds provisioning config example (#23940) 2020-04-27 20:54:03 +02:00
Hugo Häggmark
d91c0d1dec PanelEditor: fixes save/apply for undefined props in restoreModel (#23939)
* PanelEditor: fixes save/apply for undefined props in restoreModel

* Refactor: changes after PR comments

* Refactor: changes sourcePanel refresh strategy

* Added unit tests and minor refactoring of method, starting with cleanup, then setting properties from model

* Update public/app/features/dashboard/state/PanelModel.test.ts

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-27 20:50:33 +02:00
Kyle Brandt
0dc8f4ea89 backend_plugins: duration support in Frame (#23962)
sdk v0.57.0
go mod tidy
2020-04-27 14:48:20 -04:00
Dominik Prokop
594ad77125 Make sidemenu header accept onClick events (#23957) 2020-04-27 20:36:28 +02:00
Torkel Ödegaard
0742dbc9be MaxDataPoints: Now used in interval calculation for all data sources (#23915)
* MaxDataPoints: Now enabled for all

* Updates to code and test

* Moved the panel query inspector

* PaneQueryRunner: Simplify logic and only take in maxDataPoints not width
2020-04-27 18:29:41 +02:00
Alex Khomenko
32492dd650 Search/ui issues (#23945)
* Search: Move layout to query reducer/hook

* Search: Move extra layout/sort logic to reducer

* Search: Tweak action row spacing

* Search: Update TagOption

* Search: Remove duplicate function

* Search: Add Clear tags button

* Search: Align checkbox

* Search: Add TagFilter.displayName

* Search: Update default placeholder

* Search: Return all dashboards for list view

* Search: Apply custom line-height to ActionRow checkbox
2020-04-27 19:16:03 +03:00
Arve Knudsen
295e15246e Fix Dockerfile* (#23954)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-27 18:13:27 +02:00
Marcus Olsson
fdf551dd0a Update data frame concept doc (#23921)
* Update data frame concept doc

* Fix typo

* Fix typo
2020-04-27 17:49:12 +02:00
Daniel Lee
c05049f395 azuremonitor: port azure log analytics query function to the backend (#23839)
* azuremonitor: add support for log analytics macros

Also adds tests for the kql macros

* azuremonitor: backend implementation for Log Analytics

* azuremonitor: remove gzip header from plugin route

The Go net/http library adds an accept encoding header
for gzip automatically.

https://golang.org/src/net/http/transport.go\#L2454

So no need to specify it manually

* azuremonitor: parses log analytics time series

* azuremonitor: support for table data for Log Analytics

* azuremonitor: for log analytics switch to calling the API...

...from the backend for time series and table queries.

* azuremonitor: fix missing err check

* azuremonitor: support Azure China, Azure Gov...

for log analytics on the backend.

* azuremonitor: review fixes

* azuremonitor: rename test files folder to testdata

To follow Go conventions for test data in tests

* azuremonitor: review fixes

* azuremonitor: better error message for http requests

* azuremonitor: fix for load workspaces on config page

* azuremonitor: strict null check fixes

Co-authored-by: bergquist <carl.bergquist@gmail.com>
2020-04-27 17:43:02 +02:00
Torkel Ödegaard
458f6bdb87 PanelEditor: Fixed issue with PanelModel change plugin type (#23949) 2020-04-27 17:32:35 +02:00
Marcus Efraimsson
76650e60e4 Image Rendering: New setting to control render request concurrency (#23950)
Fixes #23806

Co-Authored-By: Torkel Ödegaard <torkel@grafana.com>
Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-27 17:25:08 +02:00
Marcus Andersson
14de3db275 Build: adding support to rollup *.json files to include moment-timezone data. (#23951) 2020-04-27 17:20:15 +02:00
Marcus Efraimsson
854085dbc6 Dashboard: Enforce min dashboard refresh interval to 5 seconds per default (#23929)
Fixes #22493
2020-04-27 16:51:54 +02:00
Torkel Ödegaard
2c0a1d8428 Search: Adds search to main nav and removes open search click on dashboard name (#23943)
* Search: Adds search to main nav and removes open search click on dashboard name

* Updated snapshots

* Fixed strict null errors

* Fixed type issue
2020-04-27 16:38:04 +02:00
Tobias Skarhed
1b9a926afc Storybook: Add intro and reorganize (#23924)
* Update Intro

* Reorganize stories

* Hide panel for ThemeColors

* Update packages/grafana-ui/src/components/ColorPicker/ColorPicker.story.mdx

Co-Authored-By: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update intro

* Hide panel on Icon story

* Update README

* Add link

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2020-04-27 15:38:30 +02:00
Dominik Prokop
be712157e3 NewPanelEditor: fix wrong path to time regions template causing panel editor to bug (#23946) 2020-04-27 15:33:27 +02:00
Jon Gyllenswärd
9f04f8001f Disable emitDataRequest from explore (#23926) 2020-04-27 16:32:40 +03:00
Marcus Andersson
1a0c1a39e4 DateTime: adding support to select preferred timezone for presentation of date and time values. (#23586)
* added moment timezone package.

* added a qnd way of selecting timezone.

* added a first draft to display how it can be used.

* fixed failing tests.

* made moment.local to be in utc when running tests.

* added tests to verify that the timeZone support works as expected.

* Fixed so we use the formatter in the graph context menu.

* changed so we will format d3 according to timeZone.

* changed from class base to function based for easier consumption.

* fixed so tests got green.

* renamed to make it shorter.

* fixed formatting in logRow.

* removed unused value.

* added time formatter to flot.

* fixed failing tests.

* changed so history will use the formatting with support for timezone.

* added todo.

* added so we append the correct abbrivation behind time.

* added time zone abbrevation in timepicker.

* adding timezone in rangeutil tool.

* will use timezone when formatting range.

* changed so we use new functions to format date so timezone is respected.

* wip - dashboard settings.

* changed so the time picker settings is in react.

* added force update.

* wip to get the react graph to work.

* fixed formatting and parsing on the timepicker.

* updated snap to be correct.

* fixed so we format values properly in time picker.

* make sure we pass timezone on all the proper places.

* fixed so we use correct timeZone in explore.

* fixed failing tests.

* fixed so we always parse from local to selected timezone.

* removed unused variable.

* reverted back.

* trying to fix issue with directive.

* fixed issue.

* fixed strict null errors.

* fixed so we still can select default.

* make sure we reads the time zone from getTimezone
2020-04-27 15:28:06 +02:00
Mohit Nain
365de313f3 docs/sources/features/datasources/mysql.md: Improve language 2020-04-27 14:53:35 +02:00
Mohit Nain
bcc3118d09 docs/sources/features/datasources/opentsdb.md: Language improvements 2020-04-27 14:52:09 +02:00
Mohit Nain
1c69836869 docs/sources/features/datasources/prometheus.md: Fix language
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-27 14:51:28 +02:00
Alexander Zobnin
fa710a3172 Rendering: Add metrics (#23827)
* Rendering: base metrics

* Rendering: rendering_queue_size metric

* Chore: fix linter error

* Rendering metrics: refactoring

* Apply suggestions from code review

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Rendering metrics: handle DeadlineExceeded errors

* Rendering metrics: don't measure canceled request time

* Rendering metrics: revert deleting summary for canceled requests

* Update pkg/services/rendering/rendering.go

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Rendering: return ErrTimeout if context deadline exceeded

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-04-27 15:29:46 +03:00
Emil Tullstedt
830e8dc5fd Search: Replace search implementation (#23855) 2020-04-27 14:16:03 +02:00
Sofia Papagiannaki
bace47d40e Fix build-container (#23942) 2020-04-27 15:12:11 +03:00
Alex Khomenko
9771b1c745 Search/fix folder sort (#23893)
* Search: Move layout to query reducer/hook

* Search: Refactor search_srv

* Search: Fix types

* Search: Move extra layout/sort logic to reducer

* Search: Fix Select min-width

* Search: Fix filter by starred

* Search: Update tests

* Search: Simplify query return

* Search: Set width to auto on HorizontalGroup

* Search: Fix tests
2020-04-27 15:08:48 +03:00
Dominik Prokop
410e2a8ca0 NewPanelEditor: Fix visualisation list badge verflow (#23936) 2020-04-27 14:05:45 +02:00
Ivana Huckova
1c750169bd Icon: Update sigin icon (#23933) 2020-04-27 14:02:23 +02:00
Mohit Nain
7af0d1e8c0 docs/sources/features/datasources/testdata.md: Fix language 2020-04-27 13:54:42 +02:00
Agnès Toulet
f455f06540 DashNav: refactor action buttons and custom content (#23868)
* DashNav: refactor action buttons and custom content

* DashNav: remove code duplication

* DashNav: fix custom element display

* DashNav: fix strictNullChecks
2020-04-27 13:30:55 +02:00
Daniel Lee
b0488259d0 azuremonitor: fix for app insights azure china url (#23877) 2020-04-27 12:40:11 +02:00
Tobias Skarhed
f31f17d559 Fix strict nulls (#23931) 2020-04-27 12:07:32 +02:00
Tobias Skarhed
d0e23af228 Angular/Forms migration: Orgs list (#23821)
* Create new components

* Fix async issues

* Remove comments

* Update public/app/features/admin/AdminOrgsTable.tsx

* Update public/app/features/admin/AdminListOrgsPage.tsx

* Update public/app/features/admin/AdminListOrgsPage.tsx

* Remove angular code

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-27 10:00:17 +02:00
Hugo Häggmark
b09b49fb37 e2e: creates a separate package for selectors (#23858)
* Initial commit

* Chore: fixes after merge

* Chore: removes todos

* Chore: uncomment test

* Chore: adds missing externals to rollup config

* Refactor: selectors is master for everything

* Docs: updates Docs

* Chore: adds e2e-selectors to publish
2020-04-27 09:09:05 +02:00
Dominik Prokop
9ac7263e66 DashboardSave: fix save dashboard when changes are detected (#23909) 2020-04-27 08:07:56 +02:00
Ryan McKinley
5211a23f8d Chore: show grafana labs not project (#23913) 2020-04-26 15:34:56 -07:00
Torkel Ödegaard
49276f2c12 QueryTab: Design updates (#23906)
* WIP: first stage

* Another take

* argghhh

* Updated

* My brain is mush

* Minor progress

* Progres

* Starting to work

* Fixes

* fixed e2e
2020-04-26 21:59:14 +02:00
Alex Khomenko
b9a40fc346 Search: Fix expanded folder icon (#23903) 2020-04-26 16:12:49 +03:00
Dominik Prokop
3bd9e1dda3 NewPanelEditor: vis picker UI update (#23894)
* Fix storybook

* Add deprecated/alpha badge to panels in viz picker, fix long title display

* Move getFocusCss to mixins

* Updated hover/active state of vis picker item

* try fixing e2e

* Add removed label for e2e to be happy happy happy
2020-04-26 13:16:31 +02:00
Dominik Prokop
6dfad3b352 grafana/toolkit: Do not suggest Angular panel anymore, add note about Grafana tutorials (#23902) 2020-04-26 13:16:04 +02:00
Amal
20286dac53 Fix grammatical errors in documentation (#23900)
Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-26 12:07:20 +02:00
Dominik Prokop
4b00594758 Docs: Add doc comments for PanelPlugin (#23896) 2020-04-26 11:14:21 +02:00
Amal
fd6502b32f Minor grammatical correction (#23898) 2020-04-26 10:53:37 +02:00
Torkel Ödegaard
c797ae2527 Search: Minor tweak to placeholder color 2020-04-26 10:31:44 +02:00
Diana Payton
737f629145 Docs: Edit prometheus data source doc (#23760)
* Update prometheus.md

* Editing

* Update prometheus.md

* Update add-a-data-source.md

* Update prometheus.md

Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2020-04-26 09:42:24 +02:00
kay delaney
f48ba11d4c Datasource/Cloudwatch: Adds support for Cloudwatch Logs (#23566)
* Datasource/Cloudwatch: Adds support for Cloudwatch Logs

* Fix rebase leftover

* Use jsurl for AWS url serialization

* WIP: Temporary workaround for CLIQ metrics

* Only allow up to 20 log groups to be selected

* WIP additional changes

* More changes based on feedback

* More changes based on PR feedback

* Fix strict null errors
2020-04-25 22:48:20 +02:00
Dominik Prokop
af00fa7214 PanelPlugin: add deprecation notice to setEditor method (#23895) 2020-04-25 22:46:51 +02:00
Kyle Brandt
68e5b72cde Docs: Plugin docs for Dataframes (#23483)
Co-authored-by: Carl Bergquist <carl@grafana.com>
Co-authored-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Marcus Olsson <accounts+github@marcus.se.net>
2020-04-25 19:39:26 +02:00
Dominik Prokop
a56e55ac6c NewPanelEditor: increase sidebar min width, value mappings radio no longer full width (#23889) 2020-04-25 17:38:37 +02:00
Amal
d1665222a7 Minor change for better readability (#23884) 2020-04-25 17:24:09 +02:00
Amal
d9376035a4 Minor grammatical correction (#23885) 2020-04-25 17:23:06 +02:00
Dominik Prokop
d654255d32 NewPanelEditor: adjust panel menu items (#23888) 2020-04-25 16:15:08 +02:00
Tobias Skarhed
ff4d199ce4 Migration: Admin org edit page (#23866)
* Start migration

* Migrate admin org edit page
2020-04-25 14:14:22 +02:00
Torkel Ödegaard
e23f72b7fc RadioButtons: Updates design and no longer full width in panel edit (#23883) 2020-04-25 14:13:44 +02:00
Torkel Ödegaard
e505babbf4 ManageDashboards: Fixes and improvements (#23879)
* ManageDashboards: Fixes and improvements

* Fixed tests

* Fixed issue with item height and margin
2020-04-25 13:08:23 +02:00
Torkel Ödegaard
d6ba6440e4 Singlestat: Adds migration button and logic to migrate singlestat to stat panel (#23845)
* Singlestat: Migration button to migrate to new stat panel

* updated test
2020-04-25 11:00:27 +02:00
Dominik Prokop
c7b7a08baf NewPanelEditor: Make variables wrap and small layout refactor (#23862)
* NewPanelEditor: Make variables wrap  and small layout refactor

* review fix
2020-04-25 07:55:42 +02:00
Torkel Ödegaard
ef5cbee2b3 Search: Improvements to design (#23874)
* Search: updated design

* Fixed z-index

* Fixes

* Minor pixel push
2020-04-25 07:43:54 +02:00
Ivana Huckova
21cbcde15f Revert rc-slider dependency update, add z-index to tooltip (#23873) 2020-04-24 23:04:36 +02:00
tmarszal
2e6a713d25 Docs: Add version note about Stackdriver SLO queries (#23844)
Ref #22917

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-04-24 22:27:58 +02:00
Ivana Huckova
818f63f81e Zipkin: Add method to display query text (#23870) 2020-04-24 19:53:19 +02:00
Carl Bergquist
78566de75a adds template for backend datasource (#23864) 2020-04-24 19:45:45 +02:00
Torkel Ödegaard
6f02b51561 Search: Improving search look and feel (#23854)
* Search: Improving search look and feel

* Fixed issue with tag filter beeing cramped and wrapping tags

* Minor tag polish

* fixed type
2020-04-24 19:23:45 +02:00
Arve Knudsen
76b184b93c Packages: Bundle plugins (#23787)
* Add manifest for external plugins
* CircleCI: Build internal plug-ins
* CircleCI: Package internal and external plug-ins

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-24 19:01:34 +02:00
Ivana Huckova
66e5a1c0b3 Rich history: Fix create url and run query & style updates (#23627)
* Styling updates

* Create getQueryFromDisplayText method for Jaeger, Loki, Prometheus

* Fix createLink and runQuery methods for all datasources

* Update test

* Update Select from Legacy to current

* Update filtering

* Update public/app/core/utils/richHistory.test.ts

* Fix strictnullcheck errors

* Remove getQueryFromDisplayText method, as not needed

* Update saving of full query and use displayText for formatting

* Update tests

* Refactor create data query

* Remove parsing, store object instead

* Fix formatting error

* Remove object checking, transform everything to DataQuery

* Remove console.log

* Rename migrate function, add datasourceName as a useEffect dependency

* Fix z-index, move query
2020-04-24 18:23:31 +02:00
Tobias Skarhed
8d56f87473 Migration: Alerting - notifications list (#22548)
* Handle empty list

* Connect to redux

* Finish migration

* Remove comments

* Remove old files

* Remove console log

* Remove old import

* Forgot to add the new button

* Fix href

* Fix feedback
2020-04-24 18:13:45 +02:00
Alex Khomenko
1f2a70117b Search: cleanup old Angular files (#23860)
* Search: Remove wrapperRef

* Search: Remove angular search files

* Search: Unify search types

* Search: Remove redundant hideHeader prop

* Search: Remove app/types/search.ts

* Search: Update imports

* Search: Fix type errors
2020-04-24 18:07:57 +03:00
Andrej Ocenas
58b566a252 Tracing: Zipkin datasource (#23829) 2020-04-24 17:02:25 +02:00
Jess
800228c100 Storybook sorting (#23857)
* Resort Icon.story.tsx into Docs Overview category

* Make CallToActionCard.story.tsx internal

* Move ThemeColors to Docs Overview category

* Move Tag.story.tsx to Forms category

* Move TagList.story.tsx to Forms category

Co-authored-by: Clarity-89 <homes89@ukr.net>
2020-04-24 17:48:58 +03:00
Marcus Efraimsson
8f2be870f2 Dashboard: Handle no renderer available in panel share dialog (#23856)
Show a message when sharing dashboard panel on the Link tab and
 there's no renderer available/installed. 

Ref #13802
2020-04-24 16:40:18 +02:00
Alex Khomenko
3d9a88c7af Grafana-UI: Extend Layout props (#23771)
* Grafana-UI: Extend Layout props

* Grafana-UI: Merge container styles

* Search: Fix prop types

* Grafana-UI: remove className prop
2020-04-24 17:25:39 +03:00
Torkel Ödegaard
1955c3911b PanelEditor: Fixed switch tabs (#23859) 2020-04-24 14:18:59 +02:00
Arve Knudsen
51c19da98d Docker: Upgrade to Ubuntu 20.04 in Dockerfiles (#23852)
* Chore: Upgrade to Ubuntu 20.04
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-04-24 14:03:18 +02:00
Leonard Gram
c081513a96 Devenv: fix prometheus scrape ips (#23850)
* Devenv: fix prometheus scrape ips

* Devenv: fix grafana in devenv reference

* Devenv: fixes prom random data reference
2020-04-24 13:23:49 +02:00
Johannes Brück
a98c129d05 CloudWatch: Prefer webIdentity over EC2 role also when assuming a role (#23807)
Same as #23452 but for assumed roles.
When using service accounts (webIdentity) on EKS in combination 
with assuming roles in other AWS accounts Grafana needs to retrieve 
the service account credentials first and then needs to assume the 
configured role.
2020-04-24 13:05:51 +02:00
Hugo Häggmark
80ab18f43d e2e: adds e2e for panel edit (#23849)
* Explore: Create basic E2E test

* Feature: adds e2e tests for panel inspector

* Refactor: adds ts-ignore because of type checking errors

* Refactor: changes after PR comments and updates snapshot

* Refactor: adds typings back for IScope

* e2e: adds e2e for panel edit

Co-authored-by: Andreas Opferkuch <andreas.opferkuch@gmail.com>
2020-04-24 12:51:38 +02:00
Torkel Ödegaard
cf77c3a50b Metriktank: Linage UI updates (#23848) 2020-04-24 11:52:02 +02:00
Marcus Efraimsson
58de0dabd4 Alerting: Upload error image when image renderer unavailable (#23713)
When Include image is enabled for an alert notification channel, but there's 
no image renderer available/installed when sending notification an error 
image will be uploaded/attached explaining that you need to install the 
Grafana Image Renderer plugin.

Ref #13802

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-24 11:35:55 +02:00
Marcus Efraimsson
98df2ec745 Alerting: Handle image renderer unavailable when edit notifiers (#23711)
If no image renderer available/installed when adding a new  alert notification 
channel will set Include image to false per default, otherwise true as before.
If no image renderer available/installed when adding/edit alert notification 
channel will show an informational message that you need to install the 
Grafana Image Renderer plugin for Grafana to be able to render an image. 

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-24 10:42:13 +02:00
Daniel Lee
52154b465b dsproxy: adds support for url params for plugin routes (#23503)
* dsproxy: adds support for url params for plugin routes

* docs: fixes after review

* pluginproxy: rename Params to URLParams

* Update pkg/plugins/app_plugin.go

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* Apply suggestions from code review

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* pluginproxy: rename struct

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-04-24 10:32:13 +02:00
Torkel Ödegaard
59bea141f2 Transformations: Simple fix for labels to fields problem with time series field names (#23828)
* Simple fix for labels to fields transform problem

* Added unit test
2020-04-24 10:11:14 +02:00
Alex Khomenko
fb8a555f19 Search/virtualize list (#23710)
* Search: Add FixedSizeList for result items

* Search: Move SectionHeader to a separate file

* Search: Add useListHeight hook

* Search: Fix horizontal scrollbar

* Search: Remove custom scrollbar

* Search: Do not fetch dashboard folder on route change

* Search: Update tests

* Search: Remove extra checkbox renders

* Search: Move wrapper ref outside search results

* Search: Fix param type

* Search: Fix merge conflicts

* Search: Virtualize dashboard list

* Search: Update layout

* Search: Pass wrapper to search results

* Search: Update dashboard redirect

* Search: Remove unused css

* Search: Revert config

* Search: Use AutoSizer

* Search: Remove redundant appEvents call

* Search: Use List layout in folder view
2020-04-24 11:08:06 +03:00
Omar Nahhas Sanchez
cf23f15a08 Adding debug line to search ldap. (#23824) 2020-04-24 09:53:42 +02:00
Ivana Huckova
47c6bd6963 Fix PromQuery cascader when selected option has no children (#23835) 2020-04-24 09:45:44 +02:00
Tobias Skarhed
e18e4cf015 Forms migration: Data/Panel link editor (#23778)
* DataLink input to new form styles

* Make Angular work with inline editor

* Remove onRemove and desiableRemove

* Remove DataLinksEditor

* Change order of inputs

* Enable syntax highlight

* Fix datalinks for Elastic
2020-04-24 09:26:22 +02:00
Tobias Skarhed
3fbdcf1070 Form migrations: Teams and alert list (#23810)
* Basic migration

* Update test

* Fix feedback
2020-04-24 09:26:09 +02:00
Hugo Häggmark
e4d492fd35 e2e: adds inspect drawer tests (#23823)
* Explore: Create basic E2E test

* Feature: adds e2e tests for panel inspector

* Refactor: adds ts-ignore because of type checking errors

* Refactor: changes after PR comments and updates snapshot

* Refactor: adds typings back for IScope

* Refactor: changes after PR comments

Co-authored-by: Andreas Opferkuch <andreas.opferkuch@gmail.com>
2020-04-24 08:48:04 +02:00
Joseph Robinson
db3f2b90e9 Docs: URL update to Relref to repair broken links (#23783)
* NewPanelEditor: Panel edit tweaks (#22415)

* NewPanelEditor: Alternative edit layout

* Fixed full height issue

* panel-edit-tabs experiment

* minor tweaks

* PanelEditor: Minor tweaks

* Docs: URL update to Relref to repair broken links

Rewrote URL references in the text for the Administration guide
and older Whats New page to repair broken links, and change
to the Relref format to build the website with Hugo.

Closes #22378

* Remove stale file, caught in this
branch and PR from my Fork. contribute/style-guides/markdown-style-guide.md

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-23 13:19:05 -07:00
Dominik Prokop
6320e5c91f NewPanelEditor: bring back queries not being run on editmode navigation (#23837) 2020-04-23 22:10:08 +02:00
Torkel Ödegaard
2f5bea27b1 NewDataSourcePage: Restore signature badge lost in merge (#23832) 2020-04-23 21:39:08 +02:00
Stephanie Closson
e35f27ea8f Toolkit: fixes for security and publishing (#23749)
* Fixes and security patches:
1. Always keep the source directory, just don't package the source
2. Do not publish the SSH key for common plugin tasks.
Changed to environment variable

* env variable renamed.

* Re-added the src remove

* touch config.yml for rebuild
2020-04-23 12:58:22 -06:00
Andrej Ocenas
170a0df194 Logs: Derived fields link design update (#23695) 2020-04-23 20:47:54 +02:00
Andrej Ocenas
376765b3d7 Tracing: Remove feature flag (#23834) 2020-04-23 20:46:42 +02:00
Dominik Prokop
de1e70a474 NewPanelEditor: don't break when plugin is skipDataQuery (#23836) 2020-04-23 20:36:42 +02:00
Kyle Brandt
80e1191ca0 Backend Plugins: (breaking change) Add PluginContext (#23788)
* breaking change for newer backend plugins
* use exported protobuf converters and sdk types to reduce duplicate code
* uses grafana-plugin-sdk-go@v0.54.0
2020-04-23 14:08:21 -04:00
Arve Knudsen
bf6a488a33 Update latest.json (#23833)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-23 19:33:05 +02:00
Arve Knudsen
ffdef9e771 CHANGELOG.md: Update (#23831)
* CHANGELOG.md: Update
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-04-23 19:32:38 +02:00
Kyle Brandt
6d500e31b9 Backend: Remove Go vendor folder (#23796) 2020-04-23 13:23:51 -04:00
Dominik Prokop
e0dbd87a5a Transformations: Organise fields transformer fixes & detailing (#23812)
* Transformers: Organise fields transformer detailing

* Table header cell - fix text overflowing columns
2020-04-23 16:21:54 +02:00
Leonard Gram
ebdbb0c96d Rendering: makes sure IsAvailable can be used during init of other services (#23817)
* Rendering: makes sure service knows if it is configured after Init()

* Rendering: refactor
2020-04-23 14:44:52 +02:00
Torkel Ödegaard
0284747c88 TablePanel: Fix XSS issue in header column rename (#23816)
* prevent xss

* added escaping on tooltip.

* Rebase done

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-04-23 14:15:48 +02:00
Dominik Prokop
c9e7796b33 Table: Add default cell link style and tooltip to data links in table (#23818) 2020-04-23 13:57:08 +02:00
Arve Knudsen
f4d40224f2 CircleCI: Upgrade shellcheck to v0.7.1 and pin version (#23815)
* CircleCI: Upgrade shellcheck to v0.7.1 and pin version

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-23 12:22:51 +02:00
Ryan McKinley
3d89f04562 Plugins: show signing status on datasources and plugins (#23542)
* show signing status

* show signing status

* Progress on signed badge style

* Progress on signing status look and updated card background

* Updates

* Transforms card tweak

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-23 11:52:11 +02:00
Ivana Huckova
68ba60adaf Typeahead: Fix z-index (#23809) 2020-04-23 11:46:13 +02:00
Torkel Ödegaard
3955e8cbad Security: Fix annotation popup XSS vulnerability (#23813)
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-04-23 11:35:43 +02:00
Ivana Huckova
645dc944db Explore: Fix split functionality (#23801)
* Fix splitting functionality, remove passing of parameters from button

* Format comment
2020-04-23 11:20:07 +02:00
Jess
3eddce3258 UI Docs: ColorPicker component group (#23366)
* Create .mdx for ColorPicker component group

Describes the building blocks of the component and how they work together.

* Rename ColorPicker.mdx to ColorPicker.story.mdx

* Update packages/grafana-ui/src/components/ColorPicker/ColorPicker.story.mdx

Clean up tags

Co-Authored-By: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

* Update packages/grafana-ui/src/components/ColorPicker/ColorPicker.story.mdx

Co-Authored-By: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
2020-04-23 10:50:24 +02:00
Dominik Prokop
fe28e2a6b1 Transformations: UI tweaks, filter by name regex validation (#23800)
* Add validation to filter by name regex, minor layout tweaks

* Use cards uin for non configured transformations
2020-04-23 10:12:06 +02:00
Dominik Prokop
4b42697912 Transformations: debug mode tweaks (#23802) 2020-04-23 09:56:56 +02:00
Alex Khomenko
906cc6d317 Search: Fix strict null errors (#23804) 2020-04-23 09:55:10 +02:00
Alex Khomenko
c0fe565499 Search add sorting picker (#23746)
* Search: Extend search_srv with getSortOptions

* Search: Enable sorting

* Search: Fullwidth search

* Search: Add SortPicker

* Search: Add useSearchLayout

* Search: Update sort query

* Search: Refactor items rendering

* Search: Add sort to manage dashboards

* Search: Add sort icon

* Search: Mock getSortOptions

* Search: Fix Select sizes

* Search: Move SortPicker to Select

* Grafana-UI: Add ActionRow.tsx

* Grafana-UI: Use ActionRow in dashboard search

* Grafana-UI: Update ActionRow styles

* Search: Update tests

* Search: enable clearing TagFilter

* Search: Move getSortOptions outside of component

* Search: Fix import

* Search: Limit container width

* Search: Replace SearchField's clear text with icon

* Search: Fix section items query #23792

* Search: Add icons for layout switch

* Search: Remove layout switch for folder page
2020-04-23 08:18:53 +03:00
Amal
66d405acab Docs: Correcting a reference link in documentation (#23747)
* Correcting a reference link in documentation

* Changed link as relative path, as asked by reviewer
2020-04-22 11:41:25 -07:00
Hugo Häggmark
ca385805c9 PanelEditor: stores option group collapse state (#23781)
* PanelEditor: stores option group collapse state

* Refactor: adds props to OptionsGroup instead
2020-04-22 19:56:37 +02:00
Andrej Ocenas
319a0585a5 Logs: Add href to internal link (#23757) 2020-04-22 19:42:28 +02:00
Dominik Prokop
eae11f53f3 Transformations: Make sidebar subscribe to panel's query runner (#23785)
* Make panel edit sidebar options use lates data from panel query runner

* Update select's z-index

* Review
2020-04-22 19:21:48 +02:00
Torkel Ödegaard
45dfa20467 Buttons: Center text in buttons (#23789)
* Buttons: Center buttons

* Updated size of transformation button

* removed snapshot
2020-04-22 18:47:41 +02:00
Tobias Skarhed
78a6d39ebb Forms migration: LayoutSelector (#23790) 2020-04-22 17:49:46 +02:00
Torkel Ödegaard
83608baf2f Select: Fixed z-index issue (#23786) 2020-04-22 16:18:22 +02:00
Alexander Zobnin
e8f4b46aae UI: add InfoBox component (#23701)
* UI: inherit LinkButton props from ButtonHTMLAttributes

* Chore: fix implicit any

* UI: add InfoBox component

* UI: fix InfoBox border color

* Chore: use new style for defining stories

* Chore: InfoBox refactor

* Chore: inherit className attribute from HTMLDivElement
2020-04-22 16:46:01 +03:00
Amal
a9032f9188 docs/sources/installation/upgrading.md: Fix language 2020-04-22 14:42:20 +02:00
Emil Tullstedt
58a605ad67 Docs: Move Postgres version warning and remove details (#23782) 2020-04-22 14:40:42 +02:00
kay delaney
bf3313c82a Datasource/Loki: Remove code dealing with legacy Loki endpoints (#23437) 2020-04-22 12:59:06 +01:00
Dominik Prokop
6715cf22a3 Transformations: Improve UI and add some love to filter by name (#23751)
* Change filterByName options to accept arrays instead of strings

* Improve transformations UI

* Minor updates

* Minor UI changes

* Review
2020-04-22 13:38:50 +02:00
Hugo Häggmark
bcf5d4b25c Transformers: adds labels as columns transformer (#23703)
* Transformers: adds labels as columns transformer

* Refactor: adds support for same timestamps with different labels

* Refactor: adds basic transform ui

* Refactor: adds sorted result

* Refactor: renames transformer
2020-04-22 12:21:34 +02:00
Torkel Ödegaard
0a8ce714cb VizRepeater: fixed issue with resolved auto orientation passed back from VizRepeater (#23767)
* VizRepeater: fixed issue with resolved auto orientation passed back from VizRepeater

* Updated variable name
2020-04-22 12:01:02 +02:00
Torkel Ödegaard
aa7d2c6af3 E2E: Fixed e2e test issue due to change in testdata scenario change logic (#23774) 2020-04-22 12:00:30 +02:00
Arve Knudsen
49a90cd764 Dockerfile: Copy in the tools directory, to fix build (#23773)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-22 11:11:19 +02:00
Arve Knudsen
7d88018531 DataSourceProxy: Handle URL parsing error (#23731)
* pluginproxy: Handle URL parsing error
* pkg/api: Validate data source URLs
* pkg/api: Return 400 for URL validation error
2020-04-22 10:30:06 +02:00
Agnès Toulet
c3e3067cf4 Drawer: update z-index to show tooltips (#23770) 2020-04-22 10:28:34 +02:00
Alex Khomenko
89a75343eb Search: Load folder page (#23768) 2020-04-22 11:24:29 +03:00
Torkel Ödegaard
5bf43af5ae Docker: Fix root docker file build (#23772)
Fixes #23754
2020-04-22 10:18:36 +02:00
Amal
3d72c7fd12 docs/sources/features/explore/index.md: Fix language 2020-04-22 09:20:28 +02:00
Peter Holmberg
4183921c62 Dashboard import: Bug fixes (#23591)
* clear dashboard on unmount

* fix menu z-index, folderpicker width

* fix issue with saving dashboard in another folder

* use foldermodel instead of selectablevalue

* using z-index from theme

* updated names

* update snapshot

* remove size from folderpicker

* use connectWithCleanup

* update snapshot
2020-04-22 09:04:33 +02:00
Peter Holmberg
e16213724c DevEnv: Revert to clean stale assets (#23742) 2020-04-22 07:49:04 +02:00
Ryan McKinley
32d7a4d33a TablePanel: avoid toArray for memoizedData (#23744) 2020-04-21 14:42:27 -07:00
Amal
1ca3ce59e2 Docs: Minor typo fix in documentation (#23745) 2020-04-21 13:06:25 -07:00
Andrej Ocenas
84e9004da4 Tracing: Change color palette. (#23656) 2020-04-21 22:04:51 +02:00
Amal
3c36c0f043 Docs: Grammatical correction in documentation (#23752) 2020-04-21 12:57:39 -07:00
Amal
ca20b386bb docs/sources/tutorials/ha_setup.md: Fix typo 2020-04-21 20:01:14 +02:00
Marcus Efraimsson
61de19250d Image Rendering: Make it work using serve_from_sub_path configured (#23706)
Make rendering work when using serve_from_sub_path and not have rendering.renderer_url configured.

Fixes #21925
2020-04-21 19:57:11 +02:00
Torkel Ödegaard
ea1dd9e4da TextArea: Fixed default height (#23743) 2020-04-21 18:34:20 +02:00
Torkel Ödegaard
c26bfe9e03 Prettier: Add prettier config that imports prettier from toolkit (#23729) 2020-04-21 17:23:49 +02:00
kay delaney
3d23ab549b UI: Adds option to limit number of visible selected options for Select component (#23722)
* UI: Adds option to limit number of visible selected options to Select component
2020-04-21 16:06:34 +01:00
Marcus Efraimsson
871ad73414 Backend plugins: Renderer v2 plugin (#23625)
grafana-plugin-model is legacy and is replaced by new backend 
plugins SDK and architecture. Renderer is not part of SDK and 
we want to keep it that way for now since it's highly unlikely there 
will be more than one kind of renderer plugin.
So this PR adds support for renderer plugin v2.
Also adds support sending a Device Scale Factor parameter to the 
plugin v2 remote rendering service and by that replaces #22474.
Adds support sending a Headers parameter to the plugin v2 and
remote rendering service which for now only include 
Accect-Language header (the user locale in browser when using 
Grafana), ref grafana/grafana-image-renderer#45.
Fixes health check json details response.
Adds image renderer plugin configuration settings in defaults.ini 
and sample.ini.

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-21 16:16:41 +02:00
Andrej Ocenas
97bb3dcf2d Remove file (#23741) 2020-04-21 15:52:08 +02:00
Leonard Gram
8620b7c2aa Search: raise service init prio (#23740) 2020-04-21 15:30:09 +02:00
Amal
c72d8b763e docs/sources/plugins/developing/datasources.md: Improve language 2020-04-21 15:11:34 +02:00
Andrej Ocenas
a89d629b7e Tracing: Add some error handling to JaegerQueryField (#23599) 2020-04-21 14:18:56 +02:00
Dominik Prokop
40114e8c07 NewPanelEditor: UI update of add panel widget (#23715)
* Small update proposal to add panel widget

* Fix smoketest

* Minor tweaks

* update snaps god damn it
2020-04-21 13:40:49 +02:00
Tobias Skarhed
7e4292508f Form migrations: Final components to LegacyForms (#23707)
* FormField to LegacyForms

* FormLabel to InlineFormLabel

* Move SecretFormField to LeagcyForms
2020-04-21 11:42:21 +02:00
Emil Tullstedt
b7809918f0 Dashboard: Update tests for testing fallback support (#23730) 2020-04-21 11:31:10 +02:00
Ivana Huckova
df60dbd749 @grafana/ui: Fix login icon (#23732)
* Fix sign in button

* Fix modal button in button
2020-04-21 10:55:48 +02:00
Andrej Ocenas
1b8d669ac0 Docs: Datasource uid docs (#23700) 2020-04-21 10:46:51 +02:00
Tobias Skarhed
9bbc007cb9 Input: Width prop (#23615)
* Add width property

* Remove unused import

* Spelling mistake

* Add width to interface

* Make width optional

* Remove size

* Update snapshot

* Remove size from places

* Add size prop for button

* Update width

* Update snapshots
2020-04-21 10:42:57 +02:00
Marcus Andersson
a2d741f60f Docs: run the api-extractor on master to update docs (#23726)
* regenerated packages docs.

* fixed spelling issues.

* fixed spelling issues.
2020-04-21 10:41:50 +02:00
Torkel Ödegaard
017767ae39 InputDatasource: Fixed prettier errors (#23679)
* InputDatasource: Fixed prettier errors

* Fixed prettier config in toolkit to make it consistent with grafana core prettier config
2020-04-21 10:14:14 +02:00
Torkel Ödegaard
4d9d3270af CSS: Various css bug fixes (Safari fix for graph panels and more) (#23704)
* CSS: Various css bug fixes

* Updated
2020-04-21 09:12:34 +02:00
Amal
4a13467312 docs/sources/administration/metrics.md: Improve language 2020-04-20 21:45:12 +02:00
Amal
6f9c744f21 docs/sources/installation/configuration.md: Improve language 2020-04-20 21:44:16 +02:00
Amal
c8c08d4f82 docs/sources/features/dashboard/dashboards.md: Improve language 2020-04-20 21:27:05 +02:00
Dominik Prokop
b37e66f915 NewPanelEditor: Move visualisation picker to the sidebar pane (#23696)
* Move visualisation picker to the sidebar pane

* Remove vis tab from bottom pane

* Visualisation to panel type title
2020-04-20 20:29:32 +02:00
Ryan McKinley
9464115fc0 TableCell: show JSON rather than [object Object] (#23683) 2020-04-20 11:10:03 -07:00
Ryan McKinley
229176f1b0 Transformers: calculate a new field based on the row values (#23675) 2020-04-20 09:57:04 -07:00
Emil Tullstedt
b669bfdf5f Dashboard: Add failsafe for slug generation (#23709) 2020-04-20 18:17:33 +02:00
Jack Stevenson
c0635947e8 Add ServerlessDatabaseCapacity to AWS/RDS metrics (#23635) 2020-04-20 18:14:17 +02:00
Emil Tullstedt
83193aed3d Search: Fix title search null pointer (#23705) 2020-04-20 17:29:35 +02:00
Alex Khomenko
8709c9a8a5 Search: Toggle Search based on search query (#23648)
* Search: Toggle Search based on search query

* Search: Fix types and closed search param

* Search: Remove appEvents from SearchWrapper

* Search: Reset folder on close

Co-Authored-By: Alexander Zobnin <alexanderzobnin@gmail.com>

* Search: Disable reloadOnSearch for manage dashboards urls

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
2020-04-20 18:04:51 +03:00
Emil Tullstedt
55c306eb6d Refactor search (#23550)
Co-Authored-By: Arve Knudsen <arve.knudsen@grafana.com>
Co-Authored-By: Leonard Gram <leonard.gram@grafana.com>
2020-04-20 16:20:45 +02:00
Andrej Ocenas
e5dd7efdee Provisioning: Allows specifying uid for datasource and use that in derived fields (#23585)
* Add uid to datasource

* Fix uid passing when provisioning

* Better error handling and Uid column type change

* Fix test and strict null error counts

* Add backend tests

* Add tests

* Fix strict null checks

* Update test

* Improve tests

* Update pkg/services/sqlstore/datasource.go

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* Variable rename

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-20 15:48:38 +02:00
Agnès Toulet
d5f8d976f0 Drawer: align component style with PanelInspector (#23694)
* Drawer: add subtitle, expandable button and refactor style

* Drawer: update header style and z-index

* Drawer: refactor Drawer component and PanelInspector

* PanelInspector: add expandable

* Drawer: update stories with new props

* Inspector: rename InspectHeader -> InspectSubtitle

* Inspector: fix tabs spacing

* Drawer: remove z-index

* Update public/app/features/dashboard/components/Inspector/InspectSubtitle.tsx

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Drawer: apply PR feedbacks

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-20 15:27:33 +02:00
Ivana Huckova
174ee95153 Store: Error handling for setObject (#23650)
* Error handling for setObject to store

* Update public/app/core/store.ts

Co-Authored-By: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* Update public/app/features/explore/RichHistory/RichHistory.tsx

Co-Authored-By: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* Move setState outside of try-catch block

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2020-04-20 15:13:02 +02:00
Dominik Prokop
4ea41dc19d Fix failing master (#23702) 2020-04-20 14:53:51 +02:00
Ivana Huckova
f37814f3b1 Fix getLogLevelFromKey when non-string supplied (#23654) 2020-04-20 13:50:14 +02:00
Tobias Skarhed
1f6a6b3802 Storybook: Small fixes (#23692) 2020-04-20 13:33:37 +02:00
Carl Bergquist
46fd7c094b Alertmanager: Basic auth should not be required (#23691) 2020-04-20 11:19:31 +02:00
Torkel Ödegaard
56a7de562e Table: Improvements to column resizing, style and alignment (#23663)
* Table: Fixed to column alignment

* testing table state reducer

* Styles starting to work

* Persisting column resize now works

* Trying to fix Table storybook stories

* Minor updates

* fixed ts issue

* Table: Support duplicate field names, and use data frame directly instead of copying data and other improvements (#23681)

* Poc at use data frame directly

* working ok

* Table improvements
2020-04-20 09:27:40 +02:00
Torkel Ödegaard
3aa8eb0176 NewPanelEdit: Improvements to angular panels and other fixes (#23678)
* Removed old editor components

* Angular panel improvements

* Progress

* Updated tests

* Simple persistence for angular panel option state

* Improving graph edit experiance

* Improving series overrides

* updated e2e test

* Regstry: refactoring
2020-04-20 08:47:25 +02:00
Dominik Prokop
d2a13c4715 FieldOverride: Support data links via field overrides (#23590)
* Move xss and sanitize packages to grafana-data

* Move text, url and location utils to grafana-data

* Move grafana config types to grafana-data

* Move field display value proxy to grafana-data

* Fix

* Move data links built in vars to grafana-data

* Attach links supplier to when applying field overrides

* Prep tests

* Use links suppliers attached via field overrides

* locationUtil dependencies type

* Move sanitize-url declaration to grafana-data

* Revert "Move sanitize-url declaration to grafana-data"

This reverts commit 11db9f5e55.

* Fix typo

* fix ts vol1

* Remove import from runtime in data.... Make TS happy at the same time ;)

* Lovely TS, please shut up

* Lovely TS, please shut up vol2

* fix tests

* Fixes

* minor refactor

* Attach get links to FieldDisplayValue for seamless usage

* Update packages/grafana-data/src/field/fieldOverrides.ts

* Make storybook build
2020-04-20 07:37:38 +02:00
Torkel Ödegaard
e6c9b1305e Prometheus: Fixed error in PromLink, fixed ts issue 2020-04-20 07:35:35 +02:00
Torkel Ödegaard
67a256fcb4 Prometheus: Fixed error in PromLink 2020-04-20 07:34:49 +02:00
Dominik Prokop
a78ca939d1 Fix: grafana/ui imports (#23680) 2020-04-19 13:18:36 +02:00
Agnès Toulet
19dcaf6bc9 Dashboard: Add fields in DashboardMeta (#23647) 2020-04-19 11:26:32 +02:00
Diana Payton
e05f686758 Docs: Update documentation-style-guide.md (#23659)
Added Divio link
2020-04-19 07:17:19 +02:00
Diana Payton
a343b62a23 Docs: Update README.md (#23660) 2020-04-19 07:16:57 +02:00
Ryan McKinley
1e03bb2895 Bundled Plugins: fix build issues with DirectInput (#23640)
* pass query error

* and the root

* not optional

* building bundled plugin

* missing file

* remove other branch

* fix prettier
2020-04-19 07:05:25 +02:00
Ryan McKinley
88ec7e097f toDataFrame: detect field properties using in rather than hasOwnProperty (#23673) 2020-04-18 15:11:24 -07:00
Ryan McKinley
806dd3f604 QueryEditors: include error when no data is returned (#23632) 2020-04-18 14:59:36 -07:00
Torkel Ödegaard
f30074c70a NewPanelEditor: Save dashboard from edit mode now works, and other fixes (#23668) 2020-04-18 18:00:54 +02:00
Torkel Ödegaard
165a0471ad NewPanelEdit: Minor edit mode fixes (#23666)
* Minor edit mode fixes

* Updated
2020-04-18 15:48:04 +02:00
Dominik Prokop
539edba31b Overrides: Show option group counters for options that represent collections (#23655) 2020-04-18 14:05:38 +02:00
Stephanie Closson
4e521a84b4 Tweaks and comments for ci-improvements, stability, and readibility (#23658)
* Tweaks and comments for ci-improvements, stability, and readibility
- Made naming more obvious and intuitive
- CI supports grafana e2e plus more granular design
  (side effect that it takes slightly longer, but negligable)
- disable strict e2e errors through environment variable
- Added tools for linting and for building plugin-ci

* feedback from stevev - remove version. Causes problems
2020-04-17 14:48:42 -06:00
Stephanie Closson
336ab8990e Toolkit: Update slim debian image for e2e testing (#23629)
* Because alpine uses musl instead of libc, the e2e/cypress was not compatible
So:
- Created new VM based on debian-slim
- Could also be used as a build VM

Fixes:
- ginstall issue with merge somewhere.
- Trimmed down the alpine VM since we don't need the extra libraries for cypress

* Fix: Don't need cp on debian
Fix: Don't use /bin/sh on debian. Only for alpine. Use /bin/bash on debian
Fix: Missing dependencies to e2e tests
2020-04-17 14:29:10 -06:00
Dominik Prokop
a7904f13cc Remove temporary NewPanelEditorContext (#23652) 2020-04-17 18:04:57 +02:00
Diana Payton
43fc6c3a17 Docs: Grafana internal metrics update (#23448)
* Update metrics.md

* Updated metrics.md and configuration.md

* Added links to data sources

* Update metrics.md

* Update docs/sources/administration/metrics.md

Co-Authored-By: Carl Bergquist <carl@grafana.com>

Co-authored-by: Carl Bergquist <carl@grafana.com>
Co-authored-by: bergquist <carl.bergquist@gmail.com>
2020-04-17 07:37:09 -07:00
Hugo Häggmark
97c5e2971d Transformers: changes reduce transformer (#23611)
* Transformers: changes reduce transformer

* Refactor: fixes lenght of frame

* Minor tweaks and polish

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-17 16:27:00 +02:00
Hugo Häggmark
ed8c3430c4 PanelEditorTabs: adds counter to Query, Alert and Transform (#23645) 2020-04-17 14:46:32 +02:00
Alex Khomenko
89c8855f9d Search: migrate manage dashboards (#23530)
* Search: add search wrapper

* Search: add DashboardSearch.tsx

* Search: enable search

* Search: update types

* Search: useReducer for saving search results

* Search: use default query

* Search: add toggle custom action

* Search: add onQueryChange

* Search: debounce search

* Search: pas dispatch as a prop

* Search: add tag filter

* Search: Fix types

* Search: revert changes

* Search: close overlay on esc

* Search: enable tag filtering

* Search: clear query

* Search: add autofocus to search field

* Search: Rename close to closeSearch

* Search: Add no results message

* Search: Add loading state

* Search: Remove Select from Forms namespace

* Remove Add selectedIndex

* Remove Add getFlattenedSections

* Remove Enable selecting items

* Search: add hasId

* Search: preselect first item

* Search: Add utils tests

* Search: Fix moving selection down

* Search: Add findSelected

* Search: Add type to section

* Search: Handle Enter key press on item highlight

* Search: Move reducer et al. to separate files

* Search: Remove redundant render check

* Search: Close overlay on Esc and ArrowLeft press

* Search: Add close button

* Search: Document utils

* Search: use Icon for remove icon

* Search: Add DashboardSearch.test.tsx

* Search: Move test data to a separate file

* Search: Finalise DashboardSearch.test.tsx

* Add search reducer tests

* Search: Add search results loading indicator

* Search: Remove inline function

* Search: Do not mutate item

* Search: Tweak utils

* Search: Do not clear query on tag clear

* Search: Fix folder:current search

* Search: Fix results scroll

* Search: Update tests

* Search: Close overlay on cog icon click

* Add mobile styles for close button

* Search: Use CustomScrollbar

* Search: Memoize TagList.tsx

* Search: Fix type errors

* Search: More strictNullChecks fixes

* Search: Add ManageDashboards.tsx

* Search: Add mergeReducers

* Search: Use mergeReducers

* Search: remove default state from reducers

* Search: Fix recent and starred icons

* Search: Enable search

* Search: Add markup

* Search: Separate manageDashboardsReducer

* Search: Add DashboardActions.tsx

* Use new Select for TagFilter

* Search: Use TagFilter for search filters

* Search: Use TagList

* Search: Add toggleSection

* Search: Add more actions

* Search add manageDashboards.test.ts

* Search: Add getCheckedUids

* Search: Add modify and toggle checked actions

* Search: Update tests

* Search: Update component template

* Search: Enable section toggle

* Search: Derive canMove and canDelete

* Search: Handle delete items

* Search: Fix tests

* Search: Enable toggle items

* Search: Add confirm modal subtitle

* Search: Use theme vars

* Search: Add getCheckedDashboardsUids

* Search: Add MoveToFolderModal

* Search: Enable moving dashboards

* Search: Fix strict null checks errors

* Search: Fix strict null checks errors[2]

* Search: Enable filters

* Search: Add useSearchQuery.ts

* Search: Toggle items when toggling all

* Search: Update useSearchQuery to accept custom params

* Search: Add useSearchQuery to dashboard search

* Search: use SearchField for manage dashboards

* Search: Remove event param from query change

* Search: Add base search hooks

* Search: refactor useSearch to accept reducer

* Search: use useDashboardSearch hook

* Search: Fix useSearchQuery params

* Search: Enable folder search

* Search: Update tests

* Search: Pass the props to manage-dashboards

* Search: Add search filters margin

* Search: Remove search-field-wrapper class and hide logic for it

* Search: Adjust SearchField styles

* Search: Move search-results-container inside SearchResults

* Search: Fix type errors

* Search: Add EmptyListCTA

* Search: Update move message

* Search: Cleanup

* Search: Add todo

* Search: Fix action type

* Search: Use React wrapper vs FolderDashboardsCtrl and DashboardListCtrl

* Search: DashboardList => DashboardListPage

* Search: Remove ManageDashboards from angular_wrappers

* Minor style tweaks

* Search: Use LinkButton

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-17 15:29:20 +03:00
Torkel Ödegaard
1816ab8013 Inspect: Transformers (#23598)
* WIP: Inspect transformers

* Updated

* Transformations working in inspect drawer and series to columns working as normal transformation

* Minor name change

* Updated

* Updated

* Fix: fixes crash with dataFrameIndex out of bounds

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-04-17 14:03:21 +02:00
Mohit Nain
705467242d docs/sources/features/datasources/graphite.md: Fix typos 2020-04-17 13:38:26 +02:00
Dominik Prokop
416111c5f6 FieldOverrides: UI updates (#23630)
* UI improvements for field overrides

* Update tests

* Fix missing key

* Fix e2e
2020-04-17 12:52:01 +02:00
Tobias Skarhed
a9e408fecf Forms migration: Change password (#23623)
* Migrate ChangePassword

* Add validation
2020-04-17 11:24:21 +02:00
Alexander Zobnin
f023e7a399 SAML Role and Team sync (open source part) (#23391)
* SAML: add default params for role and team sync

* SAML: add org_mapping option

* SAML: support allowed_organizations option

* Chore: expose RedirectWithError from HTTPServer

* Chore: return RedirectResponse (fix superfluous response.writeheader message)

* HTTPServer: expose ValidateRedirectTo() and CookieOptionsFromCfg()

* Config: move SAML section to the enterprise
2020-04-17 10:48:37 +03:00
Hugo Häggmark
0205c42bfa Transformers: fixes column names generated by seriesToColumn transformer (#23642) 2020-04-17 09:33:56 +02:00
Ryan McKinley
6c021f7bb9 Table: add a select option when multiple tables exist (#23545)
* add a table picker

* move picker to the top

* add missing change

* Removed overflow from panel-content so dropdown menus can extend a panel, moved the select to the bottom

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-16 21:35:58 +02:00
Hugo Häggmark
e64e8dd098 Tabs: adds counter component (#23548)
* Chore: Initial commit

* Initial commit

* Refactor: some style changes

* Refactor: removes isDark/isLight theme logic

* Minor style tweak

* Minor style tweak

* Minor adjustments

* Refactor: changes after PR comments

* Refactor: moves margin-left to counter

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-16 21:28:19 +02:00
Torkel Ödegaard
ba60be97fe UX: Minor style tweaks and fixes (#23614)
* UX: Minor style tweaks and fixes

* Updated
2020-04-16 17:55:08 +02:00
Torkel Ödegaard
9e1bdce5e0 Modals: Fixed alignment in header (#23618) 2020-04-16 17:50:16 +02:00
Shavonn Brown
e873f94bd4 revent optional event arg change (#23622) 2020-04-16 11:38:54 -04:00
Carl Bergquist
9652a1410b Build: Stricter linting should break the build (#23606) 2020-04-16 16:09:27 +02:00
Sofia Papagiannaki
19f03e593c Docs: update users API (#23570)
* Docs: update users api

* Apply suggestions from code review

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-04-16 16:45:22 +03:00
Andrej Ocenas
28543e11ba Explore: Prevents sizing issue when split (#23596)
* Update tests

* Remove imports
2020-04-16 14:28:46 +02:00
Ivana Huckova
6937f3549b @grafana/ui: Various smaller Icon updates (#23588)
* Remove icon types duplicates, update getAllIcons

* Update Explore-related icons, positioning

* Update Getting started icons

* Update navmodel

* Style adjustments, css changes

* Update tests

* Updatee icon name in test file
2020-04-16 13:49:58 +02:00
Stephanie Closson
2de79a4d8c Because alpine uses musl instead of libc, the e2e/cypress was not compatible (#23602)
So:
- Created new VM based on debian-slim
- Could also be used as a build VM

Fixes:
- ginstall issue with merge somewhere.
- Trimmed down the alpine VM since we don't need the extra libraries for cypress
2020-04-16 05:38:56 -06:00
Marcus Efraimsson
ed51ce3ae1 Backend Plugins: Discard logged messages from logger named stdio (#23601)
Discard logged messages coming from backend plugin logger named 
stdio since that service is not in use. 

Fixes #23461
2020-04-16 13:08:07 +02:00
Torkel Ödegaard
7fc9921be3 Fixed share json (#23607) 2020-04-16 09:31:40 +02:00
Carl Bergquist
5fc255bd89 Linting fixes for provisoning (#23600) 2020-04-16 05:46:20 +02:00
Marcus Efraimsson
6e313e7d37 Image Rendering: Remove PhantomJS support (#23460)
Removes all references and usage of PhantomJS #23375.
Remove direct link rendered image e2e smoke test for now.
Docker: Fix installing chrome in ubuntu custom docker image.
Improve handling of image renderer not available/installed #23593.
Add PhantomJS breaking change and upgrading notes.
Use grabpl v0.2.10.

Closes #13802

Co-authored-by: Kyle Brandt <kyle@grafana.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-04-15 22:17:41 +02:00
Tobias Skarhed
0a1ab60b8c Storybook: Organizing (#23572)
* Initial reorganizing

* Update Layout props table

* Change sorting and move stories
2020-04-15 21:51:20 +02:00
Ivana Huckova
95876f2be7 @grafana/ui: Remove ColorPallete component (#23592)
* Remove ColorPalette and its tests as it is not used anywhere

* Remove obsolete snapshot test
2020-04-15 21:33:07 +02:00
Johannes Midgren
4c80eb7537 Docs: Change header levels of last three sections (#23587)
The last three sections of this document are not rendered on https://grafana.com/docs/grafana/latest/alerting/notifications 
It seems like in all other instances (other .md docs of this project), level one headers are only used at the top of the page, so I assume using level two headers will make them show. Level two headers do also match the overall structure of the documentation.
2020-04-15 10:31:22 -07:00
Arve Knudsen
0dd2db8540 CircleCI: Upgrade the build pipeline tool (#23595)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-15 17:41:12 +02:00
Torkel Ödegaard
82fc2803f0 Table: Fixed error going into new panel edit (#23594) 2020-04-15 17:40:02 +02:00
Ryan McKinley
17059489d8 Inspector: move Panel JSON and query inspector to the inspector (#23354)
* move Panel JSON to inspector

* move Panel JSON to inspector

* update test

* use stats display options

* move query inspector to inspector

* open inspector from the queries section

* subscribe to results

* subscribe to results

* open the right tab

* apply review feedback

* update menus (inspect tabs)

* Dashboard: extend dashnav to add custom content (#23433)

* Dashlist: Fixed dashlist broken in edit mode (#23426)

* Chore: Fix bunch of strict null error to fix master CI (#23443)

* Fix bunch of null error

* Fix failing test

* Another test fix

* Docs: Add SQL region annotation examples (#23268)

Add region annotation examples for SQL data sources in docs.

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Docs: Update contributing doc to install node@12. (#23450)

* NewPanelEdit: Minor style and description tweaks, AND PanelQueryRunner & autoMinMax (#23445)

* NewPanelEdit: Minor style and description tweaks

* Removed the worst snapshot of all time

* ReactTable: adds color text to field options (#23427)

* Feature: adds text color field config

* Refactor: created an extension point

* Refactor: uses HOC for extension instead

* Fix: fixes background styling from affecting cells without display.color

* Chore: export OptionsUIRegistryBuilder on grafana/data (#23444)

* export the ui registry

* add to utils index also

* DataLinks: Do not full page reload data links links (#23429)

* Templating: Fix global variable "__org.id" (#23362)

* Fixed global variable __org.id value

* correct orgId value

* reverted the change as variables moved to new file

* Chore: reduce null check errors to 788 (currently over 798) (#23449)

* Fixed ts errors so build will succeed

* Update packages/grafana-data/src/types/graph.ts

Co-Authored-By: Ryan McKinley <ryantxu@gmail.com>

* Feedback from code review

* Leaving out trivial typing's

* Fix error with color being undefined now.

* fix test with timezone issue

* Fixed test

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* Cloudwatch: prefer webIdentity over EC2 role (#23452)

* Plugins: add a signature status flag (#23420)

* Progress

* fixed button

* Final touches

* now works from edit mode

* fix layout

* show raw objects

* move query inspector buttons to the bottom

* update snapshot

* Updated design

* Made full page reload work

* Fixed minor style issue

* Updated

* More fixes

* Removed unused imports

* Updated

* Moved to data tab out to seperate component

* fixed ts issue

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Agnès Toulet <35176601+AgnesToulet@users.noreply.github.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: Alexandre de Verteuil <alexandre@grafana.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Cyril Tovena <cyril.tovena@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Vikky Omkar <vikkyomkar@gmail.com>
Co-authored-by: Stephanie Closson <srclosson@gmail.com>
Co-authored-by: Dário Nascimento <dfrnascimento@gmail.com>
2020-04-15 16:51:51 +02:00
Tobias Skarhed
cff70b6648 Forms migration: Org users page (#23372)
* Migrate UsersActionBar

* Invites table

* Migrate Users page

* Select version of OrgPicker

* OrgRolePicker to use Select only

* Fix modal issue

* Move legacy Switch

* Move from Forms folder

* Fix failing test

* Merge and fix issues

* Update OrgRole issues

* OrgUser type

* Remove unused import

* Update Snapshot
2020-04-15 16:49:20 +02:00
Andrej Ocenas
1864807b15 Tracing: Performance optimization (#23474)
* Add integration with Jeager
Add Jaeger datasource and modify derived fields in loki to allow for opening a trace in Jager in separate split.
Modifies build so that this branch docker images are pushed to docker hub
Add a traceui dir with docker-compose and provision files for demoing.:wq

* Enable docker logger plugin to send logs to loki

* Add placeholder zipkin datasource

* Fixed rebase issues, added enhanceDataFrame to non-legacy code path

* Trace selector for jaeger query field

* Fix logs default mode for Loki

* Fix loading jaeger query field services on split

* Updated grafana image in traceui/compose file

* Fix prettier error

* Hide behind feature flag, clean up unused code.

* Fix tests

* Fix tests

* Cleanup code and review feedback

* Remove traceui directory

* Remove circle build changes

* Fix feature toggles object

* Fix merge issues

* Add trace ui in Explore

* WIP

* WIP

* WIP

* Make jaeger datasource return trace data instead of link

* Allow js in jest tests

* Return data from Jaeger datasource

* Take yarn.lock from master

* Fix missing component

* Update yarn lock

* Fix some ts and lint errors

* Fix merge

* Fix type errors

* Make tests pass again

* Add tests

* Fix es5 compatibility

* Add header with minimap

* Fix sizing issue due to column resizer handle

* Fix issues with sizing, search functionality, duplicate react, tests

* Refactor TraceView component, fix tests

* Fix type errors

* Add dark theme styling

* Add tests for hooks

* More color changes

* Fix tests to deal with additional theme wrappers.

* Add memoization

* Fix duplicate identifier

Co-authored-by: David Kaltschmidt <david.kaltschmidt@gmail.com>
2020-04-15 16:04:01 +02:00
Marcus Olsson
f48d444a14 Remove guides (#23589) 2020-04-15 15:19:12 +02:00
Agnès Toulet
c796f70a3b Toolkit: Update node_modules path to fix Windows error (#23582) 2020-04-15 12:32:22 +02:00
Leonard Gram
f997f85eb7 CI: scan master and release images oss/enterprise (#23475) 2020-04-15 12:07:49 +02:00
Marcus Efraimsson
2c36137457 Fix instantiation of plugin settings (#23583)
Forgot to instantiate plugin settings in #23451
2020-04-15 11:57:44 +02:00
Émile Fugulin
d721dd13cd Allow API to assign new user to a specific organization (#21775)
* Allow API to assign new user to a specific organization

* Add defer block to test

* Add API tests and return 400 instead of 500 for bad orgId

* Minor test improvements
2020-04-15 12:11:45 +03:00
Tobias Skarhed
da6056d5e1 Form migrations: Forms/switch move folders (#23430)
* Move legacy Switch

* Move from Forms folder

* Fix prettify issue

* Fix prettify issue
2020-04-15 10:59:15 +02:00
Marcus Andersson
ab98a8be3b Runtime: make sure we don't lose nested default config values (#23560)
* Fixed so we dont miss the deep default options.

* removed console log.

* remove check of feature toggle and assuming that the new variables are the default ones.

* removed e2e statement about used featuretoggles.
2020-04-15 10:54:52 +02:00
Marcus Andersson
ab8305fcb9 Docs: added code comments for everything in the @grafana/runtime package. (#23456)
* added comments for the angular loader.

* added code documentation for backendSrv.

* docs for datasource_srv.

* added some more docs.

* added documentation for the locationsrv.

* started to add docs for echo srv.

* added docs for meta srv.2

* added docs for analytics.

* draft documentation of the DataSourceWithBackend.

* added docs for last files.

* fixed all warnigns in api-extractor.

* fixed some typos and captializations.
2020-04-15 10:46:51 +02:00
Alexander Tymchuk
b3df2d007a Fix a lexical flaw (#23447)
Please also note, that `https://github.com/grafana/worldmap-panel/blob/master/.eslintrc` does not exist (referenced in `Linting` section) .
2020-04-15 10:19:23 +02:00
Tobias Skarhed
fa6a43c6e5 Docs: Select (#23398)
* Start Select docs

* Writ emore docs

* Apply suggestions from code review

Co-Authored-By: Alex Khomenko <Clarity-89@users.noreply.github.com>

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2020-04-15 10:11:25 +02:00
ilyastoli
b980cedfd5 CloudWatch: Added AWS Chatbot metrics and dimensions (#23516)
Adding AWS Chatbot metics according to https://docs.aws.amazon.com/chatbot/latest/adminguide/monitoring-cloudwatch.html
2020-04-15 10:35:21 +03:00
Hugo Häggmark
0091885b13 Variables: fixes error when setting adhoc variables values (#23580) 2020-04-15 08:17:51 +02:00
Carl Bergquist
80f40040b0 Linting fixes for dashboard provsioning (#23576) 2020-04-15 08:12:52 +02:00
Ryan McKinley
010c67cc71 Chore: update rxjs (#23577) 2020-04-14 16:22:03 -07:00
Stephanie Closson
52575ff03f Toolkit: Copy config files to dist for plugin use/Fix circleci build errors (#23575)
* replaced run

* consolidated dist and toolkit

* Solved a few more issues
1. Need to explicitly copy circleci config to dist
   so that it's published
2. Detect build directory, and use "local" or "linked"
   mode for local builds.

* Reverted change used only for testing

* grafana-toolkit.js always required now. Copy to dist

* removed grafana-toolkit.dist.js, no longer required

* feedback from code review

* Code review comments 2.
2020-04-14 15:05:18 -06:00
Ivana Huckova
0652671443 Dashboard search: Update input and closing button (#23573)
* Update Dashboard search page

* Update tests, remove unused icon types, adjust x icon position

* Update icon.ts
2020-04-14 21:29:42 +02:00
Torkel Ödegaard
460561a25c Transformations: UX updates (#23574) 2020-04-14 21:17:44 +02:00
Ryan McKinley
8b48a1c806 Table Panel: use react as the default table panel (#23543) 2020-04-14 12:14:06 -07:00
Artur Kondas
9f2af718dc Provisioning: Validate that dashboard providers have unique names (#22898)
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: bergquist <carl.bergquist@gmail.com>
2020-04-14 20:54:00 +02:00
Tobias Skarhed
f15593684a Form migrations: Last components from Forms namespace (#23556)
* Migrate RadioButtonGroup

* Migrate Label

* Migrate Form

* Migrate Field

* Missing Form import

* Migrate InputControl

* Migrate Checkbox

* Move InputControl and uncomment

* Fix small issues

* inor fix

* Fix import

* Fix stuff
2020-04-14 18:52:56 +02:00
Stephanie Closson
a28dfaf177 Toolkit: Fix error for running in linked mode vs non-linked mode (#23571)
* replaced run

* consolidated dist and toolkit
2020-04-14 10:46:29 -06:00
Robby Milo
8c9204ae8e Docs: fix links (#23470) 2020-04-14 18:28:57 +02:00
Tobias Skarhed
5cd2b22684 Storybook: Change deploy bucket (#23569) 2020-04-14 18:28:41 +02:00
Marcus Efraimsson
34266cd369 Backend Plugins: Plugin configuration using Grafana config (#23451)
Enables adding a section `plugin.<plugin id>` and key/value to
Grafana configuration file which will be converted and sent
as environment variables to the backend plugin.
Also sends some additional environment variables, Grafana
version (GF_VERSION), Grafana edition (GF_EDITION) and 
enterprise license path (GF_ENTERPRISE_LICENSE_PATH).

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

Fixes #21515,
2020-04-14 18:04:27 +02:00
Arve Knudsen
941cd59894 grafana-build-container: Update armv7 musl compiler (#23558)
* grafana-build-container: Update armv7 musl compiler

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

* grafana-build-container: Bump version

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

* CircleCI: Use newer grafana/build-container image

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-14 16:59:45 +02:00
Diana Payton
d18dacf7bf Docs: Update menu.yaml (#23476)
Changed Tutorials to Guides
2020-04-14 06:58:39 -07:00
Ivana Huckova
0949d3292d Replace Icons for IconButtons when used as buttons (#23554) 2020-04-14 15:15:36 +02:00
Hugo Häggmark
2661054fe8 Hangouts: fixes notifications for alerts with empty message (#23559)
* Hangouts: fixes notifications for alerts with empty message

* Update pkg/services/alerting/notifiers/googlechat.go

Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-04-14 15:02:58 +02:00
Ryan McKinley
aaab636bf4 Plugins: verify manifest signature (#23519)
* try decode

* vendor crypto deps

* commited missing vendor deps

* Theme: Refactoring theme colors variables  (#23513)

* Theme: Typography updates

* Updated

* Updated snapshot

* Renamed colors to palette

* Introduce colors namespace

* Massive theme color move

* Removing color selection logic with more abstract concepts

* Updates

* Minor sidemenu change

* Fix example jaeger agent port in docs (#23514)

* @grafana/ui: Replace various icons using Icon component (#23442)

* Replace icons in dashboard and settings

* Replace icons in alerting

* Update batch of icons

* Implement icons accross various files

* Style updates

* Search: Fix recent and starred icons

* Update styling and details

* Replace new icon created by unicons

* Fix e2e test, styling

* Minor styling updates

Co-authored-by: Clarity-89 <homes89@ukr.net>

* trying with p512 key

* trying with p512 key

* lint

* update with real signatures

* fixes spacing in test files

* remove convey from test

* use errutil to wrap errors

* removes print statement

* splitt tests into two run statements

* unexport plugin manifest struct

Co-authored-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Vitaly Zhuravlev <v-zhuravlev@users.noreply.github.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Clarity-89 <homes89@ukr.net>
2020-04-14 06:02:39 -07:00
Torkel Ödegaard
61460ea3a2 Graphite: Fixed cannot read finally of undefiend (#23512) 2020-04-14 14:18:42 +02:00
Andrej Ocenas
cf1ebd5a3d Tracing: Dark theme styling for TraceView (#23406)
* Add integration with Jeager
Add Jaeger datasource and modify derived fields in loki to allow for opening a trace in Jager in separate split.
Modifies build so that this branch docker images are pushed to docker hub
Add a traceui dir with docker-compose and provision files for demoing.:wq

* Enable docker logger plugin to send logs to loki

* Add placeholder zipkin datasource

* Fixed rebase issues, added enhanceDataFrame to non-legacy code path

* Trace selector for jaeger query field

* Fix logs default mode for Loki

* Fix loading jaeger query field services on split

* Updated grafana image in traceui/compose file

* Fix prettier error

* Hide behind feature flag, clean up unused code.

* Fix tests

* Fix tests

* Cleanup code and review feedback

* Remove traceui directory

* Remove circle build changes

* Fix feature toggles object

* Fix merge issues

* Add trace ui in Explore

* WIP

* WIP

* WIP

* Make jaeger datasource return trace data instead of link

* Allow js in jest tests

* Return data from Jaeger datasource

* Take yarn.lock from master

* Fix missing component

* Update yarn lock

* Fix some ts and lint errors

* Fix merge

* Fix type errors

* Make tests pass again

* Add tests

* Fix es5 compatibility

* Add header with minimap

* Fix sizing issue due to column resizer handle

* Fix issues with sizing, search functionality, duplicate react, tests

* Refactor TraceView component, fix tests

* Fix type errors

* Add dark theme styling

* Add tests for hooks

* More color changes

* Fix tests to deal with additional theme wrappers.

Co-authored-by: David Kaltschmidt <david.kaltschmidt@gmail.com>
2020-04-14 13:26:33 +02:00
Carl Bergquist
754dfdfa87 Lower log level for some startup logs statements (#23517) 2020-04-14 12:18:45 +02:00
Torkel Ödegaard
bc60f9c403 Theme: Typography variables overhaul, theme cleanup, improvents to storybook ThemeColors component (#23531)
* Began text theme refactoring

* Consolidating blue varaibles

* Theme: Typography overhaul and theme cleanup

* Theme updates, alignment and fixes

* Updated snapshots

* Restored template variable class

* Updates

* added container

* Updated snapshot
2020-04-14 11:32:14 +02:00
Dominik Prokop
16bc5c118d DashboardSave: Display error message when folder/dashboard name validation fails (#23416)
* Display error message when folder/dashboard name validation fails

* Fix test

* Better error handling

* Fix tests
2020-04-14 10:55:27 +02:00
Ivana Huckova
95e635f154 Replace Icon for buttonIcon in logDetailsRow (#23522) 2020-04-14 09:01:35 +02:00
Mohit Nain
5c018c9fa9 Fix typos in docs/sources/features/datasources/elasticsearch.md 2020-04-14 08:55:11 +02:00
Tobias Skarhed
4cf8e1d6a7 Storybook: Update URL to push to new bucket (#23441) 2020-04-14 08:26:41 +02:00
Stephanie Closson
c5f21bdae9 Toolkit: Provide update plugin to allow plugins configuration to normalize (#23540)
* Toolkit: Update plugin added
- To normalize an bring a plugins "managed" config up to date

* Added changes for filter only release

* changed name

* updated test for checking files in manifest
2020-04-13 17:10:33 -06:00
Mohit Nain
32390c1c39 Docs: Correcting couple of typos in the document (#23539) 2020-04-13 12:03:14 -07:00
Stephanie Closson
ae95287d1e New alpine based plugin ci image (#23533)
* New alpine based plugin ci image
- smaller, based on alpine (downloads in 7 to 10 seconds)
- Has updated gget that uses tar.gz
  - Unpacks to /opt/grafana
- Compatible cp with toolkit

* needed build tools for go lint

* added built vm to test tool

* add circleci plugin config

* added openssh to image

* fix for gget & renamed to ginstall
2020-04-13 11:53:16 -06:00
Mohit Nain
a70dec6c88 Stackdriver data source: Fix typos in docs. 2020-04-13 10:43:37 +02:00
Torkel Ödegaard
8b7decf57b Styles & Theme: Inline form styles polish & tweaks (#23521)
* Styles: Refactoring and tweaks to inline form styles

* Minor change

* Minor fix

* Updated snapshot

* tweaks

* minor tweak

* Updated modal style

* Updated snapshot

* Updated more snapshots
2020-04-13 09:58:40 +02:00
Ryan McKinley
d4516439ec Chore: rename TimePicker to TimeRangePicker (#23524)
* rename TimePicker to TimeRangePicker

* more updates

* rename snapshot
2020-04-12 21:05:29 -07:00
Ivana Huckova
1c58202b26 @grafana/ui: Replace various icons using Icon component (#23442)
* Replace icons in dashboard and settings

* Replace icons in alerting

* Update batch of icons

* Implement icons accross various files

* Style updates

* Search: Fix recent and starred icons

* Update styling and details

* Replace new icon created by unicons

* Fix e2e test, styling

* Minor styling updates

Co-authored-by: Clarity-89 <homes89@ukr.net>
2020-04-12 22:20:02 +02:00
Vitaly Zhuravlev
0aa95d97c8 Fix example jaeger agent port in docs (#23514) 2020-04-12 21:38:16 +02:00
Torkel Ödegaard
1ba8f1647e Theme: Refactoring theme colors variables (#23513)
* Theme: Typography updates

* Updated

* Updated snapshot

* Renamed colors to palette

* Introduce colors namespace

* Massive theme color move

* Removing color selection logic with more abstract concepts

* Updates

* Minor sidemenu change
2020-04-12 15:05:49 +02:00
Carl Bergquist
0fd5945542 Fixes linting errors in datasource provisioning. (#23515) 2020-04-11 21:07:07 +02:00
Ryan McKinley
6f1a25a896 DataFrame: expose an object array as a data frame (#23494) 2020-04-11 07:08:22 -07:00
Torkel Ödegaard
6cb7d95916 Components: IconButton (#23510)
* IconButton: New component to share pointer, size & hover style for icon buttons

* Progress

* IconButton: new component

* Think I am done

* Updated snapshots

* Do not like the black button reverting that, and not the plus-circle changed to plus

* fixed test

* fixed e2e test

* Fixed ts issue
2020-04-11 16:07:18 +02:00
Ryan McKinley
afec54d257 Tookit: set verison from info.version (#23511) 2020-04-10 22:49:25 -07:00
Ryan McKinley
fc55c8d017 Toolkit: more logging while signging (#23509) 2020-04-10 21:09:06 -07:00
Ryan McKinley
db166c4c41 Chore: remove file export (use inspector/toCSV()) (#23508)
* remove file export... use CSV download

* remove file export... use CSV download
2020-04-10 21:08:19 -07:00
Ryan McKinley
8ed6ab2bc9 Toolkit: add CI to the signing URL (#23507) 2020-04-10 16:11:20 -07:00
Dominik Prokop
58257a95a3 Transformations: Refactor to use single registry for transformations (#23502)
* Use single registry for transformations

* Fix transformations tests

* Added documentation comments and minor refactor

* Added documentation comments and minor refactor
Minor misunderstanding between me and Typescript. We should be good friends back now.

* Fix registry import
2020-04-10 19:21:49 +02:00
Stephanie Closson
7f61f3cc43 Fix: 404 is returned as an exception. Catch and if 404, don't worry about it (#23505) 2020-04-10 11:18:44 -06:00
Arve Knudsen
3dde8585ff Docs: Document default limit of /api/folders (#23435)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-10 17:43:00 +02:00
Alex Khomenko
6d1e323b78 Grafana UI: make menuPlacement customizable (#23499) 2020-04-10 18:03:27 +03:00
Jacky
1ff69db5cb Make name unique to fix issue #22426 (#22458)
* make name unique

* delete mini class instead rename

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-10 17:02:18 +02:00
Torkel Ödegaard
5a4f690807 NewPanelEditor: Enable new edit mode (#23405)
* WIP: initial commit to transition to new edit mode

* More old edit cleanup

* Minor update

* Refactoring url edit/fullscreen state to simplify logic, now seperate states

* Fixed tests and part of the explore integration

* Updated snapshot

* Fix alert rule links

* Fixed issue going back from explore

* Updated snapshots

* Fixes and changes

* Fixed bridge srv issue

* Fixed add panel issue

* Removed console log

* Removed render

* Tests: fixes e2e smoketest

* Make description optional

* Fixed typings

* e2e fixes

* removed import

* updated snapshot

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-04-10 16:37:26 +02:00
Dominik Prokop
f9c0c22d85 Add documentation comments for declarative options API (#23495) 2020-04-10 13:29:48 +02:00
Dominik Prokop
3ebba56f6b NewPanelEdit: Remove legacy editors for thresholds, value mappings and field properties (#23497)
* Remove legacy value mappings editor

* Remove FieldPropertiesEditor

* Remove legacy ThresholdsEditor
2020-04-10 13:29:16 +02:00
Dominik Prokop
94f87c7288 Fix react missing key warnings (#23498) 2020-04-10 13:28:26 +02:00
Ryan McKinley
32555fc769 Plugins: add a deprecated state (#23496)
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-10 11:30:36 +02:00
Alex Khomenko
f458da4d7f React generator (#23150)
* Toolkit: Setup templates

* Toolkit: Add plop

* Toolkit: Setup createComponent task

* Toolkit: Use lodash templates

* Toolkit: Generate story and mdx file

* Toolkit: Add story type

* Toolkit: Fix types

* Toolkit: Add test template

* Toolkit: Remove plop

* Toolkit: Tweak types

* Toolkit: Minor fixes

* Toolkit: Add internal story option

* Toolkit: Fix test

* Toolkit: Clarify prompt

* Toolkit: add prompt list for component group

* Toolkit: make generator script internal

* Toolkit: add description

* Toolkit: add missing when condition
2020-04-10 11:32:49 +03:00
Torkel Ödegaard
1468bab360 Redux: Added config to redux development middlewares that checks for mutations and serializability (#23492)
* Redux: Added config to redux development middlewares that checks for mutations and serializability

* Disable these middlewares, they are too slow

* Update public/app/store/configureStore.ts

* Update public/app/store/configureStore.ts

* Prettier fix

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-10 10:08:42 +02:00
Ryan McKinley
a56615749a Plugins: fix debug formatting when scanning for files (#23484) 2020-04-10 00:45:07 -07:00
Alexander Zobnin
4d81cec34f Admin: Fix Synced via LDAP message for non-LDAP external users (#23477)
* UserAdmin: remove Synced via LDAP message for non-LDAP users

* UserAdmin: show "Synced via <provider>" message for external users
2020-04-10 09:23:27 +03:00
Ryan McKinley
bb357adcab NewEditor: don't show field tabs for non data panels (#23487) 2020-04-09 21:26:37 -07:00
Lukas Siatka
ba70b59f4c DevEnv: update frontend dependencies - redux (#22143)
* DevEnv: updates @types/react-redux 7.1.2. -> 7.1.7

* DevEnv: updates react-redux 7.1.1 -> 7.1.3

* DevEnv: updates redux 4.0.4 -> 4.0.5

* DevEnv: updates @reduxjs/toolkit 1.2.1 -> 1.2.3

* DevEnv: updates @types/redux-mock-store 1.0.1 -> 1.0.2

* DevEvn: updates redux-mock-store 1.5.3 -> 1.5.4

* DevEnv: updates react-redux 7.1.3 -> 7.2.0

* DevEnv: updates @reduxjs/toolkit 1.2.3 -> 1.3.4

* DevEnv: updates redux middleware
2020-04-10 01:53:33 +02:00
Ryan McKinley
b710f21a06 Toolkit: catch errors from signing service (#23486) 2020-04-09 13:30:34 -07:00
Joshua Shannon
2da704be55 Docs: Change Grafana.net to Grafana.com/plugins (#23479)
This already linked to grafana.com, I just changed the text of the link to reflect where the link actually directs you to.
2020-04-09 12:48:01 -07:00
Kyle Brandt
5153673884 BackendPlugins: update to sdk v0.42.0
misc cleanup
2020-04-09 15:47:30 -04:00
Dominik Prokop
712564f66a NewPanelEdit: Add unified UI to queries and transformations (#23478)
* Do not use pointer cursor on icon by default

* Allow items alignment in the HorizontalGroup layout

* Add util for rendering components based on their type (element or function)

* Components for rendering query and transformation rows in a unified way

* Apply new UI fo query and transformation rows

* Add some tests

* Minor fix for scroll area

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-09 21:23:22 +02:00
Dominik Prokop
76827d2152 NewPanelEdit: General options categorisation (#23145)
* First bar gauge panel option

* Update doc comments

* Minor changes

* progress

* Minor type updates

* Fixing typing errors

* Fix that TS!

* Bring satisfaction to that beast called typescript

* Prototype

* Remove import

* Experimenting with different named categories

* Experimenting with category naming

* Naming is very hard

* merge master

* Remove commented code

* Fix merge

* Categorise panel options into collapsible sections

* Remove categories from table panel

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-09 21:22:43 +02:00
Torkel Ödegaard
278c312d58 React: Add why-did-you-render dev extension to better see what components re-render and why (in console) (#23455)
* React: Add why-did-you-render dev extension to better understand what components re-renders

* Lock version

* Updated yarn locj
2020-04-09 19:44:05 +02:00
Alex Khomenko
d831dde349 Use new Select for TagFilter (#23472) 2020-04-09 20:21:27 +03:00
Marcus Andersson
32066a3f67 Build: removed circular dependencies to make grafana/ui build again (#23468)
* fixed dependecy issues.

* Fixed so we don't have any circular dependencies.

* added missing type.

* fixed formatting issue of config.

* skipping sourcemap again.
2020-04-09 09:42:59 -07:00
Ryan McKinley
227b233aaa Toolkit: save a json manifest file for signing (#23446) 2020-04-09 08:28:30 -07:00
ilyastoli
692a73875b CloudWatch: Added missing Cassandra metrics (#23467)
Adding missing CloudWatch metrics Cassandra
2020-04-09 17:08:28 +03:00
Carl Bergquist
a08cbbcc81 Instrument backend plugin requests (#23346) 2020-04-09 14:47:46 +02:00
Ryan
1f0e1b33bc Postgres: Add SSL support for datasource (#21341)
* Add SSL certificate/key fields to Postgres data source configuration

Co-authored-by: Edwin Cordeiro <edwin@scordeiro.net>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-09 12:48:29 +02:00
Dominik Prokop
94f2a3ebae Packages: Fix for imports from indexes (#23458), fixes e2e 2020-04-09 11:30:25 +02:00
Torkel Ödegaard
b00e70997c Forms: Fixed forms namespace change issue 2020-04-09 09:56:53 +02:00
Tobias Skarhed
c11ea0b973 Form migrations: TextArea from Forms namespace (#23436)
* Move from Forms namespace and move folder

* Figrate pages from Forms

* Make Enterprise mergable
2020-04-09 09:16:10 +02:00
Ryan McKinley
468f5d15ab Plugins: add a signature status flag (#23420) 2020-04-09 00:00:16 -07:00
Dário Nascimento
7329671793 Cloudwatch: prefer webIdentity over EC2 role (#23452) 2020-04-08 23:58:32 -07:00
Stephanie Closson
3acc318d72 Chore: reduce null check errors to 788 (currently over 798) (#23449)
* Fixed ts errors so build will succeed

* Update packages/grafana-data/src/types/graph.ts

Co-Authored-By: Ryan McKinley <ryantxu@gmail.com>

* Feedback from code review

* Leaving out trivial typing's

* Fix error with color being undefined now.

* fix test with timezone issue

* Fixed test

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-09 08:29:36 +02:00
Vikky Omkar
bbfe628a32 Templating: Fix global variable "__org.id" (#23362)
* Fixed global variable __org.id value

* correct orgId value

* reverted the change as variables moved to new file
2020-04-09 08:00:07 +02:00
Torkel Ödegaard
02d303a595 DataLinks: Do not full page reload data links links (#23429) 2020-04-09 07:58:57 +02:00
Ryan McKinley
38082747dc Chore: export OptionsUIRegistryBuilder on grafana/data (#23444)
* export the ui registry

* add to utils index also
2020-04-09 07:57:03 +02:00
Hugo Häggmark
d36397e7bd ReactTable: adds color text to field options (#23427)
* Feature: adds text color field config

* Refactor: created an extension point

* Refactor: uses HOC for extension instead

* Fix: fixes background styling from affecting cells without display.color
2020-04-09 07:42:31 +02:00
Torkel Ödegaard
d257e661cd NewPanelEdit: Minor style and description tweaks, AND PanelQueryRunner & autoMinMax (#23445)
* NewPanelEdit: Minor style and description tweaks

* Removed the worst snapshot of all time
2020-04-09 05:47:12 +02:00
Cyril Tovena
24b928c88d Docs: Update contributing doc to install node@12. (#23450) 2020-04-08 20:29:10 -07:00
Alexandre de Verteuil
8b2bdd807b Docs: Add SQL region annotation examples (#23268)
Add region annotation examples for SQL data sources in docs.

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2020-04-09 02:32:45 +02:00
Andrej Ocenas
263dcb1452 Chore: Fix bunch of strict null error to fix master CI (#23443)
* Fix bunch of null error

* Fix failing test

* Another test fix
2020-04-08 23:44:10 +02:00
Torkel Ödegaard
363bf7506d Dashlist: Fixed dashlist broken in edit mode (#23426) 2020-04-08 21:45:21 +02:00
Agnès Toulet
04d3c3aaed Dashboard: extend dashnav to add custom content (#23433) 2020-04-08 21:13:12 +02:00
Dominik Prokop
ea792edd3a NewPanelEditor/Panels: refactor setDefault to setPanelOptions (#23404)
* Remove deprecated setDefault usages

* Add simple support for conditinal field config properties

* Use new API in NewsPanel

* Update tests

* Fix check
2020-04-08 19:21:26 +02:00
Marcus Efraimsson
a29056966c Use v0.39.0 of SDK (#23388) 2020-04-08 18:54:23 +02:00
Stephanie Closson
242db64158 Learnings from latest automated git publish. Small tweaks (#23440) 2020-04-08 09:22:36 -06:00
Andrej Ocenas
008bee8f27 Tracing: Adds header and minimap (#23315)
* Add integration with Jeager
Add Jaeger datasource and modify derived fields in loki to allow for opening a trace in Jager in separate split.
Modifies build so that this branch docker images are pushed to docker hub
Add a traceui dir with docker-compose and provision files for demoing.:wq

* Enable docker logger plugin to send logs to loki

* Add placeholder zipkin datasource

* Fixed rebase issues, added enhanceDataFrame to non-legacy code path

* Trace selector for jaeger query field

* Fix logs default mode for Loki

* Fix loading jaeger query field services on split

* Updated grafana image in traceui/compose file

* Fix prettier error

* Hide behind feature flag, clean up unused code.

* Fix tests

* Fix tests

* Cleanup code and review feedback

* Remove traceui directory

* Remove circle build changes

* Fix feature toggles object

* Fix merge issues

* Add trace ui in Explore

* WIP

* WIP

* WIP

* Make jaeger datasource return trace data instead of link

* Allow js in jest tests

* Return data from Jaeger datasource

* Take yarn.lock from master

* Fix missing component

* Update yarn lock

* Fix some ts and lint errors

* Fix merge

* Fix type errors

* Make tests pass again

* Add tests

* Fix es5 compatibility

* Add header with minimap

* Fix sizing issue due to column resizer handle

* Fix issues with sizing, search functionality, duplicate react, tests

* Refactor TraceView component, fix tests

* Fix type errors

* Add tests for hooks

Co-authored-by: David Kaltschmidt <david.kaltschmidt@gmail.com>
2020-04-08 17:16:22 +02:00
Alex Khomenko
d04dce6a37 Search/refactor dashboard search (#23274)
* Search: add search wrapper

* Search: add DashboardSearch.tsx

* Search: enable search

* Search: update types

* Search: useReducer for saving search results

* Search: use default query

* Search: add toggle custom action

* Search: add onQueryChange

* Search: debounce search

* Search: pas dispatch as a prop

* Search: add tag filter

* Search: Fix types

* Search: revert changes

* Search: close overlay on esc

* Search: enable tag filtering

* Search: clear query

* Search: add autofocus to search field

* Search: Rename close to closeSearch

* Search: Add no results message

* Search: Add loading state

* Search: Remove Select from Forms namespace

* Remove Add selectedIndex

* Remove Add getFlattenedSections

* Remove Enable selecting items

* Search: add hasId

* Search: preselect first item

* Search: Add utils tests

* Search: Fix moving selection down

* Search: Add findSelected

* Search: Add type to section

* Search: Handle Enter key press on item highlight

* Search: Move reducer et al. to separate files

* Search: Remove redundant render check

* Search: Close overlay on Esc and ArrowLeft press

* Search: Add close button

* Search: Document utils

* Search: use Icon for remove icon

* Search: Add DashboardSearch.test.tsx

* Search: Move test data to a separate file

* Search: Finalise DashboardSearch.test.tsx

* Add search reducer tests

* Search: Add search results loading indicator

* Search: Remove inline function

* Search: Do not mutate item

* Search: Tweak utils

* Search: Do not clear query on tag clear

* Search: Fix folder:current search

* Search: Fix results scroll

* Search: Update tests

* Search: Close overlay on cog icon click

* Add mobile styles for close button

* Search: Use CustomScrollbar

* Search: Memoize TagList.tsx

* Search: Fix type errors

* Search: More strictNullChecks fixes

* Search: Consistent handler names

* Search: Fix search items types in test

* Search: Fix merge conflicts

* Search: Fix strictNullChecks errors
2020-04-08 18:14:03 +03:00
Patrik Karlström
dbda5aece9 cloudwatch: Replicate SDK behaviour for WebIdentityRole (#21594)
* Replicate SDK behaviour for WebIdentityRole

Fix #20473

* Use WebIdentityRole in s3 uploader as well

* Use consistent casing

* use WebIdentityRole to assume another role

Co-authored-by: eV <ev@7pr.xyz>
2020-04-08 15:05:24 +02:00
Ivana Huckova
431f454d57 @grafana/ui: Create Icon component and replace part of the icons (#23402)
* Part1: Unicons implementation (#23197)

* Create a new Icon component

* Update icons in main sidebar

* Update icons in Useful links and in react components on  main site

* Update icons in Useful links and in main top navigation

* Adjust sizing

* Update panel navigation and timepicker

* Update icons in Panel menu

* NewPanelEditor: Fixed so that test alert rule works in new edit mode (#23179)

* Update icons in add panel widget

* Resolve merge conflict

* Fix part of the test errors and type errors

* Fix storybook errors

* Update getAvailableIcons import in storybook knobs

* Fix import path

* Fix SyntaxError: Cannot use import statement outside a module in test environment error

* Remove dynamic imports

* Remove types as using @ts-ignore

* Update snapshot test

* Add @iconscout/react-unicons to the shouldExclude list as it is blundled with es2015 syntax

* Remove color prop from icon, remove color implemetation in mono icons

* Update navbar styling

* Move toPascalCase to utils/string

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* Resolve type errors resulted from merge

* Part2: Unicons implementation (#23266)

* Create a new Icon component

* Update icons in main sidebar

* Update icons in Useful links and in react components on  main site

* Update icons in Useful links and in main top navigation

* Adjust sizing

* Update panel navigation and timepicker

* Update icons in Panel menu

* Update icons in add panel widget

* Resolve merge conflict

* Fix part of the test errors and type errors

* Fix storybook errors

* Update getAvailableIcons import in storybook knobs

* Fix import path

* Fix SyntaxError: Cannot use import statement outside a module in test environment error

* Remove dynamic imports

* Remove types as using @ts-ignore

* Update snapshot test

* Add @iconscout/react-unicons to the shouldExclude list as it is blundled with es2015 syntax

* Implment icons in Tabs

* Implement icons in search items and  empty  list

* Update buttons

* Update button-related snapshot tests

* Update icons in modals and page headers

* Create anfular wrapper and update all icons on search screen

* Update sizing, remove colors, update snapshot tests

* Remove color prop from icon, remove color implemetation in mono icons

* Remove color props from monochrome icons

* Complete update of icons for search screen

* Update icons for infor tooltips, playlist, permissions

* Support temporarly font awesome icons used in enterprise grafana

* Part1: Unicons implementation (#23197)

* Create a new Icon component

* Update icons in main sidebar

* Update icons in Useful links and in react components on  main site

* Update icons in Useful links and in main top navigation

* Adjust sizing

* Update panel navigation and timepicker

* Update icons in Panel menu

* NewPanelEditor: Fixed so that test alert rule works in new edit mode (#23179)

* Update icons in add panel widget

* Resolve merge conflict

* Fix part of the test errors and type errors

* Fix storybook errors

* Update getAvailableIcons import in storybook knobs

* Fix import path

* Fix SyntaxError: Cannot use import statement outside a module in test environment error

* Remove dynamic imports

* Remove types as using @ts-ignore

* Update snapshot test

* Add @iconscout/react-unicons to the shouldExclude list as it is blundled with es2015 syntax

* Remove color prop from icon, remove color implemetation in mono icons

* Update navbar styling

* Move toPascalCase to utils/string

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* Icons update

* Add optional chaining to for isFontAwesome variable

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* Part3:  Unicons implementation (#23356)

* Create a new Icon component

* Update icons in main sidebar

* Update icons in Useful links and in react components on  main site

* Update icons in Useful links and in main top navigation

* Adjust sizing

* Update panel navigation and timepicker

* Update icons in Panel menu

* Update icons in add panel widget

* Resolve merge conflict

* Fix part of the test errors and type errors

* Fix storybook errors

* Update getAvailableIcons import in storybook knobs

* Fix import path

* Fix SyntaxError: Cannot use import statement outside a module in test environment error

* Remove dynamic imports

* Remove types as using @ts-ignore

* Update snapshot test

* Add @iconscout/react-unicons to the shouldExclude list as it is blundled with es2015 syntax

* Implment icons in Tabs

* Implement icons in search items and  empty  list

* Update buttons

* Update button-related snapshot tests

* Update icons in modals and page headers

* Create anfular wrapper and update all icons on search screen

* Update sizing, remove colors, update snapshot tests

* Remove color prop from icon, remove color implemetation in mono icons

* Remove color props from monochrome icons

* Complete update of icons for search screen

* Update icons for infor tooltips, playlist, permissions

* Support temporarly font awesome icons used in enterprise grafana

* Part1: Unicons implementation (#23197)

* Create a new Icon component

* Update icons in main sidebar

* Update icons in Useful links and in react components on  main site

* Update icons in Useful links and in main top navigation

* Adjust sizing

* Update panel navigation and timepicker

* Update icons in Panel menu

* NewPanelEditor: Fixed so that test alert rule works in new edit mode (#23179)

* Update icons in add panel widget

* Resolve merge conflict

* Fix part of the test errors and type errors

* Fix storybook errors

* Update getAvailableIcons import in storybook knobs

* Fix import path

* Fix SyntaxError: Cannot use import statement outside a module in test environment error

* Remove dynamic imports

* Remove types as using @ts-ignore

* Update snapshot test

* Add @iconscout/react-unicons to the shouldExclude list as it is blundled with es2015 syntax

* Remove color prop from icon, remove color implemetation in mono icons

* Update navbar styling

* Move toPascalCase to utils/string

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* Update icons in Explore

* Update icons in alerting

* Update + and x buttons

* Update icons in configurations and settings

* Update close icons

* Update icons in rich history

* Update alert messages

* Add optional chaining to for isFontAwesome variable

* Remove icon mock, set up jest.config

* Fix navbar plus icon

* Fir enable-bacground to enableBackgournd

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* Merge remote branch origin master to icons-unicons

* Revert "Merge remote branch origin master to icons-unicons"

This reverts commit 3f25d50a39.

* Size-up dashnav icons

* Fix alerting icons, panel headers, update tests

* Fix typecheck error

* Adjustments - add panel icon, spacing

* Set TerserPlugin sourceMap to false to prevent running out of memory when publishing storybook

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-08 14:33:31 +02:00
Arve Knudsen
7799dd84c1 Chore: Upgrade to Go 1.14 (#23371)
* Chore: Upgrade to Go 1.14
* Chore: Bump version of grafana/grafana-ci-deploy Docker image
* Chore: Fix/bump version of grafana/build-container Docker image
* CircleCI: Upgrade build Docker images
2020-04-08 14:13:05 +02:00
Robby Milo
bd27647574 Docs: fix time series table (#23400)
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-08 14:09:34 +02:00
Torkel Ödegaard
137b47ccbd NewPanelEdit: Minor fixes (#23425) 2020-04-08 13:49:35 +02:00
Jess
05ea159082 Docs: Switch.mdx (#23142)
* Add "When to use" info to Switch.mdx

* Update Switch.mdx
2020-04-08 13:03:48 +02:00
Torkel Ödegaard
23407e9a32 Docs: Update changelog with attribution 2020-04-08 10:56:23 +02:00
Tobias Skarhed
61a2a713ea Forms migrations: Move Switch from Forms namespace (#23386) 2020-04-08 10:17:19 +02:00
Torkel Ödegaard
6779033bca Forms: Fixed form style issues due to recent style changes (#23421)
* Forms: Fixed form style issues due to recent style changes

* Removed unused import
2020-04-08 10:14:03 +02:00
kay delaney
a3b581a5f3 Chore: More robust identification of time/value fields in makeSeriesForLogs (#23392)
* Chore: More robust identification of time/value fields in makeSeriesForLogs
2020-04-08 09:07:12 +01:00
Ryan McKinley
2f7ba21593 Docs: add basic docs for QueryResultMetaNotice (#23410)
* add basic docs

* fix typo

* use link not url
2020-04-08 08:18:48 +02:00
Torkel Ödegaard
0612293543 NewPanelEdit: minor improvement to angular panels 2020-04-08 07:47:15 +02:00
Stephanie Closson
8ed29a7bdf Toolkit: handle 404 errors gracefully on unpublish in circleci-release-next-packages.sh (#23417)
* handle 404 errors gracefully

* need to redirect stderr to stdout to check for 404s
2020-04-07 16:51:02 -06:00
Ryan McKinley
4a2a2b163b Query: make queryType a top level property (#23412) 2020-04-07 13:58:08 -07:00
Ryan McKinley
4a3399e953 DataSourceWithBackend: resources response (#23411) 2020-04-07 12:52:31 -07:00
Ryan McKinley
938c61865d Chore: fix build, make prettier happy (#23414) 2020-04-07 12:27:32 -07:00
Torkel Ödegaard
da9402b434 Packages: Fix rollup issue in master with Table component (#23413) 2020-04-07 21:12:53 +02:00
Kyle Brandt
80729e9fb1 Chore: remove unused go package dynmap (#23409) 2020-04-07 14:58:10 -04:00
Marcus Andersson
1496da036b PanelEdit: made the transformers tab re-render on changes (#23384)
* fixed so the transformers UI is less buggy.

* changed so we don't mutate state.
2020-04-07 19:54:06 +02:00
Stephanie Closson
20246a31f3 Fix for deprecating packages (#23403)
* Fix for deprecating packages

* fixed tabs

* code review - added set -eo pipefail
2020-04-07 09:29:31 -06:00
Ryan McKinley
67e45a1d43 Plugins: do not publish bundled plugins to npm (#23401) 2020-04-07 08:01:06 -07:00
Dominik Prokop
7425f9b400 Fix merge 2020-04-07 16:23:04 +02:00
Kyle Brandt
f6cbb26167 BackendPlugin: Change QueryData response format (#23234)
* BackendPlugin: (wip) change response format
goes with https://github.com/grafana/grafana-plugin-sdk-go/pull/109

* fix error mapping in wrapper

* latest of my sdk branch

* latest of my sdk branch

* TransformWrapper fixes

* latest of sdk branch (removes extra meta)

* add metadata in wrappers

* also set error string

* sdk: v0.35.0
2020-04-07 10:13:14 -04:00
Tuan Anh Hoang-Vu
afd8ffde69 BackendSrv: include credentials when withCredentials option is set (#23380)
The fetch() API won't send cookies or other type of credentials unless
you set the credentials init option. Some datasources like Prometheus
and Elasticsearch have `withCredentials` option in Browser access mode,
but this option is not currently getting passed in the fetch() API.

Fixes #23338.
2020-04-07 16:09:02 +02:00
Hugo Häggmark
da41cd645a ReactTable: adds possibility to resize columns (#23365)
* Refactor: adds one form of column resize to React-Table

* Refactor: resizing works

* Refactor: adds onColumnResize

* Refactor: fixes so sorting is not invoked when resizing

* Refactor: fixes styles for resizer

* Refactor: removes callback call

* Refactor: changes after comments

* Refactor: updates code according to new api

* Improved styling

* fix

* Refactor: adds back resizable panel option and defaults to false

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-07 15:20:27 +02:00
Dominik Prokop
92231cc42e FieldConfig: Set field config defaults based on config registry (#23376)
* Set field config defaults based on config registry

* Rename FIeldPropertyEditorItem to FieldConfigPopertyItem

* Remove console.log

* Simplify overrides persistence model and add support for nested properties in overrides

* Review updates
2020-04-07 15:02:08 +02:00
Hugo Häggmark
3c61627ab7 ReactTable: adds alignment options (#23389) 2020-04-07 14:02:18 +02:00
Robby Milo
cf43709316 Docs: fix image, add nginx code type (#23387) 2020-04-07 12:08:05 +02:00
Marcus Andersson
6a5794aa7a adding missing named export. (#23385) 2020-04-07 11:33:11 +02:00
Alexander Zobnin
2af87b4c6c Docs: remove azure and okta from generic oauth page (#23359) 2020-04-07 12:25:06 +03:00
Tobias Skarhed
21f55d1345 @grafana/ui docs: Input (#23228)
* Add prefix and suffix example

* Update doc

* Update packages/grafana-ui/src/components/Forms/Input/Input.mdx

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Add light theme to be loaded for docs

* Add more docs

* Make Legacy stories internal

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-07 09:24:24 +02:00
Ryan McKinley
03e3ddcbdb Plugins: add a bundle plugins folder (#20850) 2020-04-07 00:04:24 -07:00
Tobias Skarhed
553f50e4f5 Form migrations: Switch to LegacyForms namespace (#23357)
* Move Switch to Legacy namespace

* Make story internal

* Fix import
2020-04-07 08:50:54 +02:00
Marcus Andersson
d6b8aaa7b0 Transformers UI: Fixed import issue. (#23382) 2020-04-07 07:37:54 +02:00
Tobias Skarhed
6748ceae67 Update storybook.md (#23374) 2020-04-07 06:59:50 +02:00
Marcus Andersson
1f717f514a TabelPanel: add support for organizing fields/columns. (#23135)
* Added draft on transformers to sort and hide fields.

* added structure for the UI.

* draft on sorting/filtering UI.

* simplified the datastructure a bit.

* added draft on drag and drop support.

* added some super simple styling. Nothing final still waiting for a proper design on this.

* updated lockfile after merge.

* changed so we use the new path for button.

* added one more test.

* Ignore feature toggle

* Moved editor to app

* Added top description

* Minor update

* Did some renaming and simplified the code a bit.

* fixed so we dont use capital naming on the transformer.

* changed to an vertical drag and drop design.

* added support to rename fields.

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-07 06:54:09 +02:00
Stephanie Closson
139753358d Fixes for toolkit (#23379)
1. Typo in the default email address
2. Nested promises causing problems in some situations. Return a promise
and resolve in the outer function
3. If extension still have '.' in front remove it prior to matching.
2020-04-06 17:28:48 -06:00
Nathan Webster
7f13b446e4 Docs: Improve AzureAD documentation for allowed_groups (#23326) 2020-04-06 10:23:49 -07:00
Stephanie Closson
20d3a9a00e Circle ci fixes automated build (#23373)
* Lessons learned from using circle-ci
1. Make it clearer that GITHUB_TOKEN or GITHUB_ACCESS_TOKEN
are required for a release. Don't build without them.
2. Default gracefully to an reasonable email address.

(It does not have to actually exist, but the api needs it to publish)

* template for testing

* Wrote a basic test.

* Simple test

* Slight fix to brackets

* Code review changes

* Fix for test. Setup environment properly
2020-04-06 10:22:53 -06:00
Dan Cech
2ecc7f22b9 delete old dashboard versions in multiple batches (#23348) 2020-04-06 11:44:14 -04:00
Erik Sundell
d94796a022 Auth: Remove trailing / in cookies' path (#22265) (#22265)
According to the stackoverflow answer below, it is recommended to not
include a trailing / in cookies' path. By removing the trailing / for
our cookies path value, people's browsers visiting grafana will pass the
cookie not only to /grafana/ sub paths but also to /grafana sub paths.

This commit avoids the situation where a user would visit
http://localhost/grafana, get redirected to
http://localhost/grafana/login, and following login get redirected back
to http://localhost/grafana, but since the grafana_session cookie isn't
passed along get redirected back once more to
http://localhost/grafana/login.

ref: https://stackoverflow.com/questions/36131023/setting-a-slash-on-cookie-path/53784228#53784228
ref: https://tools.ietf.org/html/rfc6265#section-5.1.4
2020-04-06 17:56:19 +03:00
Peter Holmberg
2299e6bfef TextArea: Combine style and classname (#23367) 2020-04-06 16:52:48 +02:00
Torkel Ödegaard
b10392733d FieldConfig: Unify the custom and standard registry (#23307)
* FieldConfig: Unifying standard and custom registry

* Adding path to option items to make id be prefixed for custom options

* Code updates progress

* Add docs back

* Fix TS

* ld overrides tests from ui to data

* Refactor - rename

* Gauge and table cleanup

* F-I-X e2e

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-06 16:24:41 +02:00
Ryan McKinley
6347a1f1eb VizPicker: show plugins that start with query text first (#23355)
* show plugins that start with queyr text first

* Memoize keyboard handler

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-06 15:06:41 +02:00
Vikky Omkar
97184c1750 Fix: Show organization popup in alphabetical order (#22259)
* Show organization popup in alphabetical order
* GetUserOrgList: Sort organizations by name in API

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-06 13:27:11 +02:00
Tobias Skarhed
f91c7a81ce Forms migration: Move Input folders (#23313)
* Remove exports

* Move folders

* Fix errors
2020-04-06 11:20:22 +02:00
Agnès Toulet
56687a08f9 Core: use go-datemath in timerange utility (#23120)
* Core: use go-datemath in time_range

* Core: update timerange for negative epoch

* Core: update gtime component

* Core: clean up time_range tests

* Update pkg/components/gtime/gtime.go

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* Core: clean gtime tests

* components/gtime: Fix test

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

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-06 09:00:05 +02:00
Torkel Ödegaard
69bdcccd10 NewPanelEdit: Minor style tweaks & fix to transparent panels (#23353)
* NewPanelEdit: Minor style tweaks

* Fixed ts issue

* Tweaked breakpoint
2020-04-06 08:22:49 +02:00
Ryan McKinley
7ab11027b0 TemplateSrv: expose limited templateSrv in grafana/runtime (#23339) 2020-04-05 21:44:49 -07:00
Jesse Tan
c89ad9b038 TimeSrv: Try to parse 8 and 15 digit numbers as timestamps if parsing as date fails (#21694)
* Try to parse 8 and 15 digit numbers as timestamps if parsing as date fails

Fixes #19738

* Add tests
2020-04-06 06:19:14 +02:00
Torkel Ödegaard
2106f0afc6 Theme: Updates gf-form & form-field to better match new form styles (#23345)
* Theme: Updates old gf-form-styles

* Removed margin buttom

* updated

* updated

* This will take some time

* More style tweaks to both light and dark theme

* Minor change

* Tweaked table styles
2020-04-05 20:02:52 +02:00
Torkel Ödegaard
09bcdc1020 NewPanelEdit: Fixed missing react keys in list error 2020-04-05 15:21:53 +02:00
Ryan McKinley
3ec88a013f NewPanelEdit: Move field defaults to own tab, and merge general and panel options to first options tab (#23350)
* use dropdown

* keep padding the same

* keep padding the same

* Refactoring and moving to components

* Updated

* Alt names

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-05 14:09:43 +02:00
Torkel Ödegaard
3fae28be52 FieldOverride: Fixed number override so that it return undefined for null/undefined values and not NaN (#23344)
* FieldOverride: Fixed number override so that it return undefined for null/undefined values and not NaN

* Made process function be able to return undefined an null
2020-04-05 06:52:33 +02:00
Marcus Andersson
dea91c1fd6 Panel: added possibility to group plugins in a panel according to a grid. (#22028)
* POC grid layout of gague.

* added a grid property that can be used to auto size the charts within a panel.

* fill the grid

* fix lint

* change default for stat panel

* avoid empty cells

* Moved to absolute positioning

* Fixed spacing

* Another fix

* Improve layout algorithm

* VizRepeater: Reverted back to so this is auto behavior for some panels

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-04 16:57:06 +02:00
Torkel Ödegaard
5ccefed7d7 NewPanelEditor: Tab rename and minor fix 2020-04-04 15:44:55 +02:00
Torkel Ödegaard
c4ba425d16 UX: Minor responsive improvement 2020-04-04 15:39:43 +02:00
Peter Holmberg
7e3b43eabb Dashboard: Save json should preserve folderId (#23314) 2020-04-04 14:55:41 +02:00
Krzysztof Dąbrowski
44604cfa4f Dashboad: Remove dashboard title check (#23343) 2020-04-04 14:49:59 +02:00
Torkel Ödegaard
ac0beb690b NewPanelEditor: Update layout with a top bar, and panel bar (#23336)
* NewPanelEdit: Layout experiments

* Progress on new layout

* Fixed ts issue
2020-04-04 14:25:06 +02:00
Sebastian Brandt
6e56aeeaf5 Table: Fix Yoda-esque sentence in info popup (#23324)
I changed the semantics a bit so they fit into the "format first" thing
that seems to be going on there.
2020-04-04 11:15:20 +02:00
Volodymyr Sergeyev
9751a2a7ca Fix 23056: fixed typo linewidth->lineWidth in Graph component (#23341) 2020-04-04 11:09:50 +02:00
Shavonn Brown
816b611eb9 Plugins docs (#21826)
* mostly minor edits while reading

* Update docs/sources/plugins/developing/development.md

* Update docs/sources/plugins/developing/apps.md

* Update docs/sources/plugins/developing/development.md

* Update docs/sources/plugins/developing/development.md

* Update docs/sources/plugins/developing/development.md

* Update docs/sources/plugins/developing/development.md

* Update docs/sources/plugins/developing/development.md

* notes updates

* Update docs/sources/plugins/developing/development.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* update to ref tutorials

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-04-03 16:58:50 -04:00
Kirill Freiman
643735f590 tsconfig: set jsx option to "react" (#23335)
Explicit setting of this option helps to vscode properly work with .tsx files (https://github.com/Microsoft/vscode/issues/15814)
2020-04-03 13:48:41 -07:00
Ryan McKinley
a1157b1744 Inspector: remove feature flag and angular "Export CSV" menu option (#23160) 2020-04-03 11:24:50 -07:00
Ryan McKinley
6366e43a44 Chore: swap [value,time] order when converting to DataFrame (#23206) 2020-04-03 11:11:28 -07:00
Andrej Ocenas
e257536e88 Remove sidebar border (#23325) 2020-04-03 20:08:40 +02:00
Stephanie Closson
ad934a58d2 Handle unpublish by deprecating package (#23310)
* Handle unpublish by deprecating package

* Fixed tabs.

* fixed array iterate

* Fixed quoting problems

* various shellcheck fixes
2020-04-03 11:55:43 -06:00
Andrej Ocenas
7f6bb1c6e0 Tracing: Fix failing test (#23332) 2020-04-03 19:15:33 +02:00
Arve Knudsen
0fd6edab64 services/sqlstore: Order results in UserSearch by username/email (#23328)
* services/sqlstore: Order results in UserSearch by username/email
* Add index (login,email) on user table
2020-04-03 19:15:10 +02:00
Tobias Skarhed
b86789c66b Docs: task template typo (#23322) 2020-04-03 17:19:01 +02:00
Dominik Prokop
b5af933183 Packages: make jaeger workspace package private (#23329) 2020-04-03 16:50:27 +02:00
Leonard Gram
a49d619874 Devenv: prom 1.7.6 (#23321) 2020-04-03 16:12:03 +02:00
Alex Khomenko
002ebc9cbb Storybook: update docs for Layout (#23288)
* Storybook: expand layout docs

* Search: Ad align prop

* Search: Default align to normal

* Search: Expand docs
2020-04-03 14:13:54 +03:00
Arve Knudsen
5645d74cbc Server: Exit with 0 if no error (#23312)
Make grafana-server exit with 0 if no error occurred.
2020-04-03 11:34:18 +02:00
Torkel Ödegaard
54ddaecea1 Table: Fixing scrolling draging the vertical handle (#23311)
* Table: Fixing scrolling draging the vertical handle

* updated snapshots
2020-04-03 10:21:15 +02:00
Tobias Skarhed
2e58a65e8f Forms migration: Remove Input from Forms namespace (#23301) 2020-04-03 10:04:19 +02:00
Hugo Häggmark
c7ffc1199c Variables: turns on newVariables as a new default (#23272)
* Variables: turns on newVariables as default

* Chore: adds default templating state

* Some small refactorings to get the template_srv tests to get green when toggle is enabled by default.

* Refactor: adds getVariables dependency to DashboardModel

* Tests: fixes StackDriver tests

* Tests: updates snapshots

* Tests: updates snapshot for DashboardGrid.test.tsx

* Tests: fixes DashboardModel.test.ts

* fixed initDashboard tests.

* renamed variable.

* changed so we use the templating.list when running the migration work.

* changed so we always returns the variables in sorted order.

* Tests: fixed cloudwatch tests

* added so we set the global template variable props.

* Fixed tests and added moved logic to complete templateSrv variables.

* removed unneccesary updateIndex.

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-04-03 09:38:14 +02:00
Dominik Prokop
bf046d7577 NewPanelEditor Render search results in front of the list of plugins (#23302) 2020-04-03 08:39:57 +02:00
Sven-Hendrik Haase
b63b82976b Docs: Document the ability to use env vars in ldap.toml (#23304)
This was implemented but never documented.

This is related to:
https://github.com/grafana/grafana/issues/8832
https://github.com/grafana/grafana/issues/5248
https://github.com/grafana/grafana/pull/20173
2020-04-02 14:07:49 -07:00
Stephanie Closson
c5252f1b64 Toolkit: simplify the plugin ci docker image (#23267)
* removing src dir on publish

* Moved from binary to native typescript
1. Moved to a native typescrpt github publish using the existing
github client.
2. Change dist.js to detect running in a linked environment.
Todo: Optimize docker image for build size.

* Optimized build of docker container
Much smaller. From 5.47 gb to 2.88

* Feedback from discussion with Ryan
- Added gget for getting grafana versions
- Added infrastructure for testing
- Uploaded new docker image

* Fixed typo... Not sure what happened there :)

* Added command to download canary

* small fix for displaying versions in help

* Removed --dev option
Should really just rename version to (ex: 1.2.0-dev)

* removing src dir on publish

* Moved from binary to native typescript
1. Moved to a native typescrpt github publish using the existing
github client.
2. Change dist.js to detect running in a linked environment.
Todo: Optimize docker image for build size.

* Optimized build of docker container
Much smaller. From 5.47 gb to 2.88

* Feedback from discussion with Ryan
- Added gget for getting grafana versions
- Added infrastructure for testing
- Uploaded new docker image

* Fixed typo... Not sure what happened there :)

* Added command to download canary

* small fix for displaying versions in help

* Removed --dev option
Should really just rename version to (ex: 1.2.0-dev)
2020-04-02 13:57:33 -06:00
Vikky Omkar
06ba5201bb CloudWatch: Added Cassandra namespace (#23299) 2020-04-02 19:06:54 +03:00
Tobias Skarhed
1704fe074a Codeowner: Marcus Olsson and Jess for .mdx files (#23290)
* Codeowner: Marcus Olsson for .mdx files

* Update CODEOWNERS
2020-04-02 16:54:04 +02:00
Dominik Prokop
0cf5ae5001 DashboardSave: fix light theme JSON preview (#23279) 2020-04-02 16:53:24 +02:00
Alexander Zobnin
7afdfd2ef4 Okta OAuth provider (team sync support) (#22972)
* Okta OAuth support

* Chore: fix linter error

* Chore: move IsEmailAllowed to SocialBase

* Chore: move IsSignupAllowed to SocialBase

* Chore: review fixes

* Okta: support allowed_groups

* Okta: default config

* Chore: move extractEmail() to OktaClaims struct

* Chore: review fixes

* generic_oauth_test: Handle error cases

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

* generic_oauth_test: Handle error cases

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

* Docs: Okta OAuth

* Chore: don't return expected errors from searchJSONForAttr

* Docs: role mapping

* Chore: review fixes (searchJSONForAttr)

* Docs: review fixes

* Update docs/sources/auth/okta.md

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* Update docs/sources/auth/okta.md

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* Chore: log error if searchJSONForAttr failed

* Docs: add Okta login link

* Docs: review fixes

* Docs: add reference to the org roles

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-02 17:35:48 +03:00
Tobias Skarhed
703476b3ae Forms migration: Input namespace (#23286)
* Update exports

* Add LegacyForms namespace

* Update ci grep
2020-04-02 16:18:06 +02:00
Peter Holmberg
97769188f2 Panel Inspect: Add JSON Model Tab (#23131)
* add tab

* add process measurement

* add json model tab

* render tab

* removed duplicated code and added keys to stats rows
2020-04-02 16:12:53 +02:00
Alex Khomenko
c993e1c988 Remove Select from Forms namespace (#23289) 2020-04-02 16:18:06 +03:00
Mohit Nain
1f3c64f784 Multiple occurrences removed to overcome typo (#23278) 2020-04-02 14:56:23 +02:00
Torkel Ödegaard
6560d2e0e9 NewPanelEdit: Adding variables to new panel editor (#23203) 2020-04-02 13:56:20 +02:00
Andreas Opferkuch
7e85e4d096 Utils: Use 's' as default for unit-less intervals (#23248)
* Utils: Use 's' as default for unit-less intervals

If the user specifies a string that is a unit-less number, it is
assumed that they meant seconds.

Fixes #22362

* Rephrase tooltip for better line break position
2020-04-02 13:43:32 +02:00
Andrej Ocenas
a4d4dd325f Explore: Add trace UI to show traces from tracing datasources (#23047)
* Add integration with Jeager
Add Jaeger datasource and modify derived fields in loki to allow for opening a trace in Jager in separate split.
Modifies build so that this branch docker images are pushed to docker hub
Add a traceui dir with docker-compose and provision files for demoing.:wq

* Enable docker logger plugin to send logs to loki

* Add placeholder zipkin datasource

* Fixed rebase issues, added enhanceDataFrame to non-legacy code path

* Trace selector for jaeger query field

* Fix logs default mode for Loki

* Fix loading jaeger query field services on split

* Updated grafana image in traceui/compose file

* Fix prettier error

* Hide behind feature flag, clean up unused code.

* Fix tests

* Fix tests

* Cleanup code and review feedback

* Remove traceui directory

* Remove circle build changes

* Fix feature toggles object

* Fix merge issues

* Add trace ui in Explore

* WIP

* WIP

* WIP

* Make jaeger datasource return trace data instead of link

* Allow js in jest tests

* Return data from Jaeger datasource

* Take yarn.lock from master

* Fix missing component

* Update yarn lock

* Fix some ts and lint errors

* Fix merge

* Fix type errors

* Make tests pass again

* Add tests

* Fix es5 compatibility

Co-authored-by: David Kaltschmidt <david.kaltschmidt@gmail.com>
2020-04-02 13:34:16 +02:00
Mohit Nain
a40c258544 Correcting couple of typos in the document (#23285)
line 46 and 183 has been modified to overcome the typo
2020-04-02 13:29:41 +02:00
Tobias Skarhed
a2a579cea7 Forms migration: Finalizing Select namespace (#23281) 2020-04-02 13:25:09 +02:00
Torkel Ödegaard
61e6e41ead FieldConfig: Some name change suggestions and moving defaults to PanelPlugin (#23265)
* FieldConfig: Some name change suggestions and moving defaults to PanelPlugin

* More name changes
2020-04-02 13:24:50 +02:00
Alex Khomenko
ce3a1fc56c Search/migrate search filter actions (#23133)
* Search: Initial setup

* Search: Use icon prop

* Search: Add button variants

* Search: Enable toggle all

* Search: Fix starred filter

* Search: update tests

* Search: Enable filters

* Search: Use emotion styling

* Search: Enable dashboard deleting

* Search: Enable dashboard moving

* Search: Update tests

* Search: Add SearchResultsFilter.test.tsx

* Search: Tweak types

* Search: Remove onReset

* Search: Remove redundant fragment

* Search: Use HorizontalGroup

* Search: Alight top checkbox
2020-04-02 14:07:31 +03:00
flopp999
9c9f6f168b Submenu: Changed location for Current Org: (#22941)
* Changed location for Current Org:

Current Org: was below the current Org, I changed it so you can deside what looks correct.
I also put an "." after Org, since it is a shorting

* removed an empty line

* Update snapshot

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-04-02 13:01:03 +02:00
Alex Khomenko
ab283fe827 Grafana UI: Fix fullWidth prop (#23280) 2020-04-02 13:30:01 +03:00
Torkel Ödegaard
b4382fff8c Docs: Update changelog for v6.7.2 also ran prettier on the CHANGELOG.md (#23277) 2020-04-02 11:29:43 +02:00
Tobias Skarhed
b34281e250 Forms migration: Old Select to Legacy namespace (#23200)
* Export other components as Legacy

* More Select Legacy

* Add namespacing to more files

* Export new elements

* Move Legacy Select folder

* Let's not forget the scss file

* Move new Select folder

* Move new Select from Forms namespace

* Little oopsie

* Fix errors

* Fix merge issues
2020-04-02 10:57:35 +02:00
Carl Bergquist
15bff3114f Usagestats: Add usage stats about what type of datasource is used in alerting. (#23125) 2020-04-02 08:45:04 +02:00
John McBride
b017e437d8 Fix typo in oauth error (#23270)
fixes: #23269
2020-04-02 08:24:59 +02:00
Lukas Siatka
51e485e26b DevEnv: updates react-hook-form 5.0.3 -> 5.1.3 in grafana-ui package (#23005) 2020-04-02 07:42:22 +02:00
Ryan McKinley
7bb6ff30c3 Toolkit: use src/README.md if it exists (#23271) 2020-04-01 22:06:01 -07:00
sam
a6f2ae1fbd AzureMonitor: Fix Log Analytics and Application Insights for Azure China (#21803) (#22753)
Something funky going on with GitHub - the build has passed.
2020-04-02 01:22:31 +02:00
Dominik Prokop
59467d3cb3 NewPanelEdit: add search, scroll and some layout to vis tab (#23253) 2020-04-01 22:09:14 +02:00
Carl Bergquist
540d1d9b4e Support using multiple datasources for testing bulk alerting. (#23258) 2020-04-01 20:55:37 +02:00
Mohit Nain
27dc0b0f63 Docs: Line 107 correction to remove multiple occurrence (#23264) 2020-04-01 11:00:01 -07:00
Mohit Nain
c446fefd14 Docs: Typo correction in line 30 (#23263) 2020-04-01 10:58:49 -07:00
Marcus Andersson
ac7af7d4c3 TemplateVariables: make sure we handle multi/single value with correct data type (#23208)
* Fixed issue with multi value.

* Made some refactorings after feedback from Torkel and Hugo.

* minor refactorings.

* changed so we don't make the current value to array if multi is false.

* added snapshot to contain v23.

* Fixed so we always use the correct type when setting value for multi/non-multi.

* added some more tests.

* added tests.

* some small adjustments after feedback
2020-04-01 18:13:38 +02:00
Hugo Häggmark
6402dde646 Docs: update Changelog with backendSrv plugin notice (#23244)
* Chore: updates CHANGELOG

* Docs: updates after PR comments
2020-04-01 18:06:38 +02:00
Marcus Andersson
aae76d797b TemplateVariable: moved templateSrv dependency from reducer to prevent side effect issues. 2020-04-01 18:05:16 +02:00
Tobias Skarhed
69259d62a0 Forms migration: User edit (#23110)
* Forms for UserProfile

* Migrate to new Form styles

* Add remove icon

* Remove unused import

* Update public/app/features/admin/UserOrgs.tsx

* Remove comment

* Remove icon and add text

* Make every ButtonGroup unique - regardless of values

* Remove visual glitch etc.

* Fic failing typecheck
2020-04-01 17:36:08 +02:00
Torkel Ödegaard
6803db87de Theme: Clean up placeholder variables (#23257)
* Theme: Clean up placeholder variables

* Updated snapshot
2020-04-01 16:56:42 +02:00
Torkel Ödegaard
fb114a7524 Snapshots: Sanitize orignal url (#23254) 2020-04-01 16:04:46 +02:00
Noval Agung Prayogo
ea35ae4d1f Chore: Update the xorm dependency (#22376)
* Upgrade xorm

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-01 15:57:21 +02:00
Tobias Skarhed
d7d94d13a0 Forms migration: New datasource (#23221)
* Add Icon to Button and add newForms to FilterInput

* Reset button changes

* Update feedback

* Update Snapshots
2020-04-01 15:55:23 +02:00
Dominik Prokop
dcf6bbc14f NewPanelEditor: Options/FieldConfig API for defaults and common options selection (#23214)
* Add "some" typesafety to panel options/field config APIs

* Allow selected common field config properties config, allow option defaults config via fluent API

* Update packages/grafana-data/src/panel/PanelPlugin.ts

Co-Authored-By: Ryan McKinley <ryantxu@gmail.com>

* Add defaults support for custom field config

* Enable defaults setting for standard and custom field configs

* Remove setFieldConfigDefaults from PanelPlugin API and replace it with useStandardFieldConfig

* Update API for standard field config defaults

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-04-01 15:33:10 +02:00
Hugo Häggmark
a92bcb78a5 ReactTable: upgrades react table to 7.0.0 and typings (#23247)
* Chore: bumps react-table and types

* Chore: reverts changes to root package.json

* ReactTable: upgrades react-table to 7.0.0 and typings

* Refactor: changes after PR comments
2020-04-01 14:24:17 +02:00
Torkel Ödegaard
baa7255ad0 NewPanelEdit: Use secondary as the button in the sidebar (#23250) 2020-04-01 13:43:59 +02:00
Peter Holmberg
8c142b9075 Forms: Add image and description to option (#23230)
* Add image and description to option

* add back flex grow on option
2020-04-01 13:42:21 +02:00
Torkel Ödegaard
ccb8187ccd Plugins: Expose promiseToDigest (#23249) 2020-04-01 13:32:12 +02:00
Mohit Nain
8b68fb3221 docs/sources/reference/share_dashboard.md: Improve language
Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>
2020-04-01 10:07:17 +02:00
Torkel Ödegaard
49d2910e39 Variables: Do not update variable from url when value is the same (#23220) 2020-04-01 09:44:57 +02:00
melchiormoulin
1814dc5afc Alertmanager: Adds support for basic auth (#23231)
Add basicauth username and password to the alertmanager notifier UI
2020-04-01 09:29:28 +02:00
Mohit Nain
98da152f51 docs/sources/reference/search.md: Fix language 2020-04-01 08:48:52 +02:00
Shavonn Brown
4f3d995343 add tooltip prop and fix folder name (#22901)
* add tooltip prop and fix folder name

* fix folder name refs
2020-03-31 11:50:45 -04:00
Peter Holmberg
ec743cf9a7 Migration: Migrate Dashboard Import to React (#22338)
* first things

* introduce headers and moving buttons

* adding reducer and action for gcom dashboard

* action working

* continue building on import form

* change dashboard title

* add prop to not render a label

* first things

* introduce headers and moving buttons

* adding reducer and action for gcom dashboard

* action working

* continue building on import form

* change dashboard title

* add prop to not render a label

* import form layout

* break out form to component

* add actions and reader for file upload

* fix upload issue

* modified data types to handle both gcom and file upload

* import dashboard json

* save dashboard

* start change uid

* change dashboard uid

* fix spacing and date format

* fix import from json

* handle uid and title change

* revert change in panelinspect

* redo fileupload component

* after review

* redo forms to use Forms functionality

* first attempt on async validation

* use ternary on uid input

* removed unused actions, fixed async validation on form

* post form if invalid, break out form to component

* sync file with master

* fix after merge

* nits

* export formapi type

* redo page to use forms validation

* fix inputs and validation

* readd post

* add guards on data source and constants

* type checks and strict nulls

* strict nulls

* validate onchange and fix import button when valid

* shorten validate call

* reexport OnSubmit type

* add comment for overwrite useEffect

* move validation functions to util

* fix button imports

* remove angular import

* move title and uid validation
2020-03-31 16:29:44 +02:00
Mohit Nain
d863e569b6 Docs: Adding the missing helping verb (#23180)
* Adding the missing helping verb

added line 21 to have it on same platform as other points

* Update docs/sources/features/dashboard/dashboards.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-03-31 07:16:58 -07:00
Marcus Andersson
87796c2b23 Storybook: Field validation Story (#23227) 2020-03-31 15:59:12 +02:00
Steven Vachon
dc8bbc8148 @grafana/e2e: select specific datasource option element (#23216)
... because, oddly, the previous selection worked locally but not in CI
2020-03-31 08:50:17 -04:00
flopp999
df6a4a435c Text change in search (#22929)
* Text change

made it more understandable that this is a search field

* Made "New Folder"-button green

Since New Dashboard was green I thought New Folder; Import also would be green. Green seems to be the color for creating new items

* Update playlist_search.html

* change search text

* wrong link

* Update playlist.md

* Update manage_dashboards.html

* Update manage_dashboards.html

* replaced Filter

* replaced Filter

* replaced Filter

* replaced filter

* changed text for placeholder

* Update UsersActionBar.tsx

* Update UserListAdminPage.tsx

* update snapshots

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-03-31 14:06:07 +02:00
Alex Khomenko
16d3d5b507 Fix search item links (#23210)
* Wrap search into into a

* Justify Icon

* Align items inside section header

* Remove log

* Fix clicking tags inside search item
2020-03-31 14:48:15 +03:00
Andrej Ocenas
e799d0fdec Docs: Add note about ulimit in bash_profile (#22562)
* Add note about ulimit in bash_profile

* developer-guide.md: Document retaining ulimit changes

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

* Fix language

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

* developer-guide.md: Describe troubleshooting ulimit issues

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

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-31 10:00:55 +02:00
Carl Bergquist
0f0481efaa removes squadcast from docs (#23213)
removes squadcast since its not a core alert notifier. Mentioning all
services that support the Grafana webhook is not feasible for our docs
2020-03-31 09:07:07 +02:00
Marcus Efraimsson
6bd7411f04 Alerting: Only include image in notifier when enabled (#23194)
Fixes a bug when you had multiple notifiers for a rule, but not all 
had enabled to include image.

Fixes #22883
2020-03-31 00:46:01 +02:00
Torkel Ödegaard
ea08c148df NewPanelEdit: Use secondary as the button in the sidebar (#23211) 2020-03-30 21:28:13 +02:00
flopp999
911a91308f Units: add (IEC) and (Metric) (#23175)
since only bits and bytes is displayed when it is selected, I added (IEC) and (Metric)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-30 20:47:13 +02:00
Linus Groh
050ff2d68e Docs: Fix lists on Loki datasource page (#23158)
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-30 09:19:26 -07:00
Hugo Häggmark
aacdfcd1a0 Variables: removes cloneDeep from getVariables selector (#23196)
* Refactor: removes getVariables

* Refactor: renames getVariableClones to getVariables
2020-03-30 17:03:34 +02:00
rtrompier
474dac1501 OAuth : Introduce new setting for configuring max age of OAuth state cookie (#23195)
* Cookie : Increase duration to avoid error

When using oauth2 authentication with multifactor, the 60s delay may be too short

* Introduce new setting for OAuth state cookie max age

Co-authored-by: Sofia Papagiannaki <sofia@grafana.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-30 17:44:58 +03:00
Mohit Nain
f1548b4b11 couple of changes to the document (#23181)
* Improve wording in docs/sources/reference/annotations.md
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-30 16:42:23 +02:00
Mohit Nain
62abe7a08c Typo correction (#23186) 2020-03-30 16:40:52 +02:00
Torkel Ödegaard
bdf5654837 Theme:s Tooltip fixes (#23174)
* LightTheme: Fixed tooltips background & text

* LightTheme: Fixed tooltips background & text
2020-03-30 16:31:53 +02:00
Alejandro Suarez
a75211ce0d Added apt command to upgrade (#23123) 2020-03-30 15:50:02 +02:00
Torkel Ödegaard
d524bb1ff0 NewPanelEdit: Side options collapse/expand design update (#23161)
* WIP: Panel options search

* Panel options search

* Minor update

* Fixed ts issues

* StatPanel: Fixed duplicate option exception

* Added some polish

* Updated snapshot

* Minor fix

* updated snapshot
2020-03-30 14:39:18 +02:00
Torkel Ödegaard
1633bacba9 NewPanelEditor: Fixed so that test alert rule works in new edit mode (#23179) 2020-03-30 13:50:18 +02:00
Arve Knudsen
3cf82df8b3 CircleCI: Revert to using shared workspace instead of GCS (#23190)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-30 13:16:15 +02:00
Arve Knudsen
8103c3e2c8 CircleCI: Fix cross platform Docker builds (#23192) 2020-03-30 12:01:45 +02:00
Tobias Skarhed
3385ed9007 Storybook: Update theme switcher (#23187) 2020-03-30 11:50:46 +02:00
Hugo Häggmark
3feb4e71c5 Dashboard: removes variables property (#23107) 2020-03-30 07:52:00 +02:00
Hugo Häggmark
5307cfeabd Transformers: adds series to column transformer (#23012)
* Refactor: adds first naive implemenation of join by field name

* Chore: changes after PR comments

* Refactor: fixes labels and adds support for multiple columns
2020-03-30 06:24:54 +02:00
Torkel Ödegaard
21188bb739 StatPanel: Fixed duplicate option exception (#23168) 2020-03-29 07:16:42 +02:00
Torkel Ödegaard
53630b5f13 StatPanels: Refactoring DisplayValueOptions and renaming & adding new panel options to react panels (#23153)
* StatPanels: Refactoring DisplayValueOptions and renaming

* added return

* Progress

* Updated

* Made radio groups full width by default in panel options

* Fixed ts issue

* Updated

* Added remaining options

* Removed unused type

* Updated snapshot

* Renamed to ReduceDataOptions
2020-03-28 23:11:50 +01:00
Arve Knudsen
8d2db9af7b CircleCI: Reduce dependency on workspace (#23159) 2020-03-28 13:06:21 +01:00
Arve Knudsen
c344e1f6b2 CircleCI: Replace machine executors (#23151)
* CircleCI: Get rid of machine executors
* CircleCI: Use new Circle images
* CircleCI: Tweak dependency graph
2020-03-28 10:43:20 +01:00
Torkel Ödegaard
366aa6b5d5 DashboardSettings: Fixed modal issue (#23155)
Fixes #23148
2020-03-28 07:51:15 +01:00
Torkel Ödegaard
f2337c9855 Webpack: Do not clean webpack output on every rebuild (#23157) 2020-03-28 06:40:29 +01:00
Stephanie Closson
b6c1a063be must publish a dist folder as well (#23152) 2020-03-27 09:44:55 -06:00
Arve Knudsen
1a5bd30329 CircleCI: Cache packages in GCS instead of in workspace (#23130)
* CircleCI: Cache packages in GCS instead of workspace
* CircleCI: Cache yarn packages
* CircleCI: Consolidate on --frozen-lockfile
2020-03-27 14:47:42 +01:00
Tobias Skarhed
6d6d86f940 Storybook: Add internal stories functionality (#23139) 2020-03-27 14:37:08 +01:00
Steven Vachon
9272c0817c @grafana/e2e: exit with non-0 code on error (#23121) 2020-03-27 08:59:43 -04:00
Torkel Ödegaard
08133ea31a BarGauge: First bar gauge panel option & some refactoring (#23128)
* First bar gauge panel option

* Update doc comments

* Minor changes

* progress

* Fixing typing errors

* Minor type updates

* Fix that TS!

* Bring satisfaction to that beast called typescript

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-03-27 12:38:46 +01:00
Torkel Ödegaard
7e094ac559 Buttons: Fixed vertical centering, now pixel perfect (#23140) 2020-03-27 12:38:28 +01:00
Arve Knudsen
660a453f74 CircleCI: Tweak concurrency when packaging (#23129) 2020-03-27 12:25:54 +01:00
Erik Sundell
a111cc0d5c Stackdriver: Support for SLO queries (#22917)
* wip: add slo support

* Export DataSourcePlugin

* wip: break out metric query editor into its own component

* wip: refactor frontend - keep SLO and Metric query in differnt objects

* wip - load services and slos

* Fix broken test

* Add interactive slo expression builder

* Change order of dropdowns

* Refactoring backend model. slo unit testing in progress

* Unit test migration and SLOs

* Cleanup SLO editor

* Simplify alias by component

* Support alias by for slos

* Support slos in variable queries

* Fix broken last query error

* Update Help section to include SLO aliases

* streamline datasource resource cache

* Break out api specific stuff in datasource to its own file

* Move get projects call to frontend

* Refactor api caching

* Unit test api service

* Fix lint go issue

* Fix typescript strict errors

* Fix test datasource

* Use budget fraction selector instead of budget

* Reset SLO when service is changed

* Handle error in case resource call returned no data

* Show real SLI display name

* Use unsafe prefix on will mount hook

* Store goal in query model since it will be used as soon as graph panel supports adding a threshold

* Add comment to describe why componentWillMount is used

* Interpolate sloid

* Break out SLO aggregation into its own func

* Also test group bys for metricquery test

* Remove not used type fields

* Remove annoying stackdriver prefix from error message

* Default view param to FULL

* Add part about SLO query builder in docs

* Use new images

* Fixes after feedback

* Add one more group by test

* Make stackdriver types internal

* Update docs/sources/features/datasources/stackdriver.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/stackdriver.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/datasources/stackdriver.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Updates after PR feedback

* add test for when no alias by defined

* fix infinite loop when newVariables feature flag is on

onChange being called in componentDidUpdate produces an
infinite loop when using the new React template variable
implementation.

Also fixes a spelling mistake

* implements feedback for documentation changes

* more doc changes

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Daniel Lee <dan.limerick@gmail.com>
2020-03-27 12:01:16 +01:00
Torkel Ödegaard
e19493ae24 RadioButtonGroup: Fixed vertical centering (#23138) 2020-03-27 11:38:09 +01:00
Alex Khomenko
7e2fedb0cc Storybook: Sort icons by name (#23115)
* Storybook: Sort icons by name

* Storybook: Add icon search
2020-03-27 11:09:23 +02:00
Ivana Huckova
be157b8457 Update raw range only if isMathString (#23122) 2020-03-27 10:04:43 +01:00
Torkel Ödegaard
16306ccacb NewPanelEditor: Fixed color option error (#23127) 2020-03-27 07:04:40 +01:00
Torkel Ödegaard
de314851a6 NewPanelEditor: Fixes alert state & annotations, alert history (#23124)
* Updated title to show dashboard title

* Sort of fixed annotations and alerting state
2020-03-27 06:40:14 +01:00
Dominik Prokop
4eae1b5483 NewPanelEditor: fluent API for custom field config and panel options creation (#23070)
* Registry of standard option editors

* Move override processors  to grafana data

* API for declaratively creating field config/panel options

* Enable declarative API in PanelPlugin for options and field config

* Use new api in react table panel

* Add color and unit picker to option registries

* Add some docs and tests

* Fix tests
2020-03-26 21:48:46 +01:00
Barak Kakoun
0c9e50c7da All endpoints deleted (#23113)
because id is never defined on notification object, the condition 'n.id === an.id' is equal to 'undefined === undefined' which is always true.
that code is responsible for the situation when you delete one endpoint and it removes all of them.
2020-03-26 19:30:31 +01:00
Arve Knudsen
c191bf64aa CircleCI: Build and publish Docker images in same job (#23092)
* CircleCI: Build and publish Docker images in same job
* CircleCI: Adjust dependency graph
* CircleCI: Specify grabpl concurrency
* CircleCI: Adjust resource classes
2020-03-26 17:25:01 +01:00
Steven Vachon
a4308fffe7 @grafana/e2e: API improvements (#23079)
* Minor changes

* Fixtures path is now relative to the project directory

* URL support module now has individual exports

* Scenario context timing issues resolved

... caused by being ran synchronously, instead of as part of Cypress' asynchronous queue.

* Scenario context API now supports multiple keys per function call

* addDataSource flow accepts a config argument

… and optionally checks datasource health status

* Added readProvisions command

* Added addPanel flow
2020-03-26 12:15:58 -04:00
Lukas Siatka
13ab84f201 DevEnv: update frontend dependencies - react-transition-group (#22998)
* DevEnv: updates @types/react-transition-group 2.0.16 -> 4.2.4

* DevEnv: updates @types/react-transition-group 2.0.16 -> 4.2.4 in grafana-ui package

* DevEnv: updates react-transition-group 2.6.1 -> 4.3.0 in grafana-ui package

* DevEnv: updates react-transition-group 2.6.1 -> 4.3.0
2020-03-26 16:04:14 +01:00
Ryan McKinley
1ff736b4b3 e2e: remove old toolkit e2e implementation (#23091) 2020-03-26 07:31:44 -07:00
Lukas Siatka
107a0d86f9 Bugfix: updates highlighter passed style prop from string to object (#23112) 2020-03-26 15:18:39 +01:00
Torkel Ödegaard
936594f5d0 DashboardSettings: Fixed scrolling (#23108) 2020-03-26 14:36:24 +01:00
Andrej Ocenas
4c5005e575 Explore: Fix 100% height of graph and table panel (#23101)
* Fix 100% height styles

* Move utility class to component styles
2020-03-26 13:24:58 +01:00
Tobias Skarhed
e5f4ac8ca0 Forms Migrations; Remove Buttons from Forms namespace (#23105) 2020-03-26 12:47:21 +01:00
Lukas Siatka
01d4cb9e37 DevEnv: update frontend dependencies - mixed 3/4 (#22995)
* DevEnv: updates pixelmatch 4.0.2 -> 5.1.0

* DevEnv: updates pixelmatch 5.0.2 -> 5.1.0 in grafana-toolkit package

* DevEnv: updates postcss-flexbugs-fixes 4.1.0 -> 4.2.0 in grafana-toolkit package

* DevEnv: updates postcss-preset-env 6.6.0 -> 6.7.0 in grafana-toolkit package

* DevEnv: updates less 3.10.3 -> 3.11.1 in grafana-toolkit package

* DevEnv: updates ora 3.4.0 -> 4.0.3 in grafana-toolkit package

* DevEnv: updates semver 6.1.1 -> 7.1.3 in grafana-toolkit package

* DevEnv: updates simple-git 1.112.0 -> 1.132.0 in grafana-toolkit package

* DevEnv: updates ora import to commonjs after its update
2020-03-26 12:46:46 +01:00
Lukas Siatka
6a9480e3b4 DevEnv: updates react-docgen-typescript-loader 3.3.0 -> 3.7.1 (#23003) 2020-03-26 12:46:09 +01:00
Dominik Prokop
046d9c1af4 DashboardSave: Add new dashboard check (#23104) 2020-03-26 12:09:39 +01:00
Tobias Skarhed
5cdb8f8e44 Form Migrations: Button (#23019)
* Update legacy exports and fix Type errors

* Remove Button and LinkButton from Forms namespace

* Fix errors

* Update snapshots

* Move Legacy button

* Migrate more Buttons

* Remove legacy button dependency

* Move button up

* Remove legacy button

* Update Snapshots

* Fix ComponentSize issues

* Switch primary button

* Switch primary

* Add classNames and fix some angular directive issues

* Fix failing build and remove log

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-03-26 11:50:27 +01:00
Agnès Toulet
f63877f247 Core: Add go-datemath library (#22978) 2020-03-26 10:26:47 +01:00
Alex Khomenko
85dc4e565e Search/migrate search results (#22930)
* Search: Setup SearchResults.tsx

* Search: add watchDepth

* Search: Use SearchResults.tsx in Angular template

* Search: Render search result header

* Search: Move new search components to features/search

* Search: Render nested dashboards

* Search: Expand dashboard folder

* Search: Remove fa prefix from icon names

* Search: Enable search results toggling

* Search: Add onItemClick handler

* Search: Add missing aria-label

* Search: Add no results message

* Search: Fix e2e selectors

* Search: Update SearchField imports

* Search: Add conditional classes

* Search: Abstract DashboardCheckbox

* Search: Separate ResultItem

* Search: Style ResultItem

* Search: Separate search components

* Search: Tweak checkbox styling

* Search: Simplify component names

* Search: Separate tag component

* Search: Checkbox docs

* Search: Remove inline on click

* Add Tag component

* Add Tag story

* Add TagList

* Group Tab and TabList

* Fix typechecks

* Remove Meta

* Use forwardRef for the Tag

* Search: Use TagList from grafana/ui

* Search: Add media query for TagList

* Search: Add types

* Search: Remove selectThemeVariant from SearchItem.tsx

* Search: Style section + header

* Search: Use semantic html

* Search: Adjust section padding

* Search: Setup tests

* Search: Fix tests

* Search: tweak result styles

* Search: Expand SearchResults tests

* Search: Add SearchItem tests

* Search: Use SearchResults in search.html

* Search: Toggle search result sections

* Search: Make selected prop optional

* Search: Fix tag selection

* Search: Fix tag filter onChange

* Search: Fix uncontrolled state change warning

* Search: Update icon names

* Search: memoize SearchCheckbox.tsx

* Search: Update types

* Search: Cleanup events

* Search: Semantic html

* Use styleMixins

* Search: Tweak styling

* Search: useCallback for checkbox toggle

* Search: Add stylesFactory

Co-authored-by: CirceCI <circleci@grafana.com>
2020-03-26 10:09:08 +01:00
flopp999
77459ae8d8 Docs: Fix broken link (#23090) 2020-03-26 09:37:59 +01:00
Mohit Nain
5a1fce1081 Fix language in docs/sources/features/panels/heatmap.md 2020-03-26 08:00:10 +01:00
Mohit Nain
9aeb97c499 Fix language in docs/sources/features/panels/singlestat.md 2020-03-26 07:58:06 +01:00
Ryan McKinley
19123444a1 Chore: move specific DataQuery props to loki/tsdb (#23086) 2020-03-25 22:30:22 -07:00
Ryan McKinley
27913289d3 Chore: fix typo and remove deprecation (#23073) 2020-03-25 17:21:09 -07:00
David Ellis
e5d7c6e280 DOCS - Repeating panels require variable to have one or more items (#23080)
* add note that it's not supported to repeat a panel zero times
see https://github.com/grafana/grafana/issues/23036#issuecomment-603479142

Signed-off-by: David Ellis <ellisda@gmail.com>

* Update docs/sources/reference/templating.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-03-25 13:22:11 -07:00
Arve Knudsen
52cd6068d1 CircleCI: Make k8s deployment depend on enterprise Docker image (#23078)
* CircleCI: Make k8s deployment depend on enterprise Docker image
* CircleCI: Upgrade grabpl
2020-03-25 18:35:38 +01:00
Diana Payton
6f9c3ab8ab Docs: Update index.md in Explore (#23072)
Minor grammar edits and added link to Organization roles topic.
2020-03-25 09:41:05 -07:00
Arve Knudsen
c813fc7871 CircleCI: Upgrade build pipeline tool (#23076) 2020-03-25 17:33:08 +01:00
Lukas Siatka
4c2b191a83 Revert "DevEnv: update frontend dependencies - react-table (#23006)" (#23075)
This reverts commit d6b6b0f25c.
2020-03-25 17:11:14 +01:00
Marcus Andersson
f75387bd14 Fix: reverted back to import * as module instead of using namespaces (#23069)
* Removed namespace declaration to prevent issues with external plugins.

* fixed imports and tests.
2020-03-25 17:01:43 +01:00
Mohit Nain
c4693378dd Docs: Correcting missing articles (#23051) 2020-03-25 08:03:15 -07:00
Arve Knudsen
14b169d62b CircleCI: Fix deploying to k8s (#23068) 2020-03-25 15:42:56 +01:00
Arve Knudsen
35ecf79ae5 CircleCI: Deploy master builds to Kubernetes (#23034) 2020-03-25 14:45:55 +01:00
Lukas Siatka
b8018fad34 DevEnv: update frontend dependencies - react-test-renderer (#23004)
* DevEnv: updates @types/react-test-renderer 16.9.0 -> 16.9.2 in grafana-ui package

* DevEnv: updates react-test-renderer 16.9.0 -> 16.13.1 in grafana-ui package
2020-03-25 14:24:34 +01:00
Lukas Siatka
05fd583938 DevEnv: update frontend dependencies - react-highlight-words (#23009)
* DevEnv: updates react-highlight-words 0.11.0 -> 0.16.0

* DevEnv: updates react-highlight-words 0.11.0 -> 0.16.0 in grafana-ui package
2020-03-25 14:23:58 +01:00
Torkel Ödegaard
4b6fe5bcc3 Packages: Fixing rollup issue (#23063)
Co-authored-by: CirceCI <circleci@grafana.com>
2020-03-25 14:23:23 +01:00
huanggze
69c5efcf00 Cleanup: move interface ProvisioningService into provisioning package (#23061) 2020-03-25 14:14:24 +01:00
Torkel Ödegaard
0870ccea7d NewPanelEdit: Fixed error with custom override properties (#23055) 2020-03-25 14:04:41 +01:00
Mohit Nain
0ed78068a2 docs/sources/features/panels/gauge.md: Fix typo 2020-03-25 13:59:36 +01:00
Hugo Häggmark
6f3ca2616f Chore: fixes test data in processDataFrame.test.ts (#23058) 2020-03-25 13:18:41 +01:00
Ivana Huckova
65d97edb3b Create ComponentSize type and replace ButtonSize with it (#23059) 2020-03-25 13:10:37 +01:00
Lukas Siatka
d6b6b0f25c DevEnv: update frontend dependencies - react-table (#23006)
* DevEnv: updates @types/react-table 7.0.2 -> 7.0.12 in grafana-ui package

* DevEnv: updates react-table 7.0.0-rc.15 -> 7.0.0 in grafana-ui package

* Updated yarn.lock

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-03-25 13:09:44 +01:00
Andrej Ocenas
ae09ccbf79 Trace UI demo (#20297)
* Add integration with Jeager
Add Jaeger datasource and modify derived fields in loki to allow for opening a trace in Jager in separate split.
Modifies build so that this branch docker images are pushed to docker hub
Add a traceui dir with docker-compose and provision files for demoing.:wq

* Enable docker logger plugin to send logs to loki

* Add placeholder zipkin datasource

* Fixed rebase issues, added enhanceDataFrame to non-legacy code path

* Trace selector for jaeger query field

* Fix logs default mode for Loki

* Fix loading jaeger query field services on split

* Updated grafana image in traceui/compose file

* Fix prettier error

* Hide behind feature flag, clean up unused code.

* Fix tests

* Fix tests

* Cleanup code and review feedback

* Remove traceui directory

* Remove circle build changes

* Fix feature toggles object

* Fix merge issues

* Fix some null errors

* Fix test after strict null changes

* Review feedback fixes

* Fix toggle name

Co-authored-by: David Kaltschmidt <david.kaltschmidt@gmail.com>
2020-03-25 12:25:39 +01:00
Arve Knudsen
b6f73e35a5 Chore: Typecheck TypeScript in CI pipelines (#23052)
* circle-test-frontend.sh: Typecheck TypeScript
* Chore: fixes type errors
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-03-25 12:19:21 +01:00
kay delaney
40e875369b Explore: Allows a user to cancel a running query (#22545) 2020-03-25 10:38:14 +00:00
Mohit Nain
910f65d2ab Fix types in docs/sources/features/panels/stat.md 2020-03-25 11:33:26 +01:00
Lukas Siatka
3f08a789d7 DevEnv: update frontend dependencies - apache arrow, bizcharts, commander (#22994)
* DevEnv: updates bizcharts 3.5.5 -> 3.5.8 in grafana-ui package

* DevEnv: updates apache-arrow 0.15.1 -> 0.16.0 in grafana-data package

* DevEnv: updates commander 2.20.0 -> 5.0.0 in grafana-toolkit package

* DevEnv: updates commander 4.1.1 -> 5.0.0 in grafana-e2e package
2020-03-25 11:01:02 +01:00
Torkel Ödegaard
40d195e4a7 BackendSrv: Adds config to response to fix external plugins that use this (#23032)
* BackendSrv: Added config to response

* QueryInspector: Removing config from showing up

* Replace config with request and make it be the unmodified params sent in
2020-03-25 10:21:12 +01:00
Lukas Siatka
bcad3fbda1 DevEnv: update frontend dependencies - rc (#22977)
* DevEnv: updates rc-cascader 0.17.5 -> 1.0.1

* DevEnv: updates rc-cascader 0.17.5 -> 1.0.1 in grafana-ui package

* DevEnv: updates rc-drawer 3.0.2 -> 3.1.3 in grafana-ui package

* DevEnv: updates rc-time-picker 3.7.2 -> 3.7.3 in grafana-ui package

* DevEnv: updates rc-slider 8.7.1 -> 9.2.3 in grafana-ui package

* Fix option mappings

* Some clean up of the code.

* removed unused function.

Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2020-03-25 10:10:26 +01:00
Torkel Ödegaard
e8efd17ea9 Buttons: Improves vertical alignment in buttons (#23030)
* Buttons: Improves vertical alignment in buttons

* Updated snapshot

* Fixed strict null errors
2020-03-25 09:21:44 +01:00
Agnès Toulet
d825b9e799 Analytics: Send event when opening a dashboard (#22921)
* Analytics: add open dashboard event

* Analytics: move code to analyticsProcessor

* Dashboard: fix init tests

* Analytics: remove open event for new dashboard

* Analytics: rename analyticsProcessor functions
2020-03-25 09:01:49 +01:00
Torkel Ödegaard
8e1fe6a9dd PackageJson: Moved scripts to the top (#23038)
* PackageJson: Moved scripts to the top

* Updated

* Updated
2020-03-25 07:19:57 +01:00
Arve Knudsen
3b134998b9 CircleCI: Increase memory/CPU for some jobs (#23035)
* CircleCI: Increase resource class for some jobs
2020-03-24 18:23:58 +01:00
BhartiAgrawalNvidia
ce8df91cc9 Fixing issue 16090 where Grafana uses illegal characters in requests … (#21447)
* Fixing issue 16090 where Grafana uses illegal characters in requests to Prometheus

* Rebase with Grafana and Merge branch 'master' of https://github.com/BhartiAgrawalNvidia/grafana into fix-16090

# Conflicts:
#	public/app/plugins/datasource/prometheus/language_provider.ts

* Rebase with Grafana and Merge branch 'master' of https://github.com/BhartiAgrawalNvidia/grafana into fix-16090

# Conflicts:
#	public/app/plugins/datasource/prometheus/language_provider.ts

* Use querystring to escape the url

Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-24 17:02:50 +01:00
Lukas Siatka
98420c63d1 DevEnv: update frontend dependencies - react-window (#23010)
* DevEnv: updates react-window 1.7.1 -> 1.8.5

* DevEnv: updates @types/react-window 1.7.0 -> 1.8.1

* DevEnv: updates lockfile - removes merge conflicts

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-03-24 17:01:54 +01:00
Diana Payton
b3f0ee32e6 Docs: Update _index.md (#22979) 2020-03-24 08:55:58 -07:00
Diana Payton
dd28c99a55 Docs: Update _index.md (#22980)
Added ServiceNow link
2020-03-24 08:27:27 -07:00
xiaobeiyang
803f553552 Variable: Support more variable formatting. (#21622)
* Support more variable formatting.
Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-24 16:26:58 +01:00
Hugo Häggmark
31ad86ffc0 TemplateSrv: deprecates templateSrv.variables and adds getVariables (#23026)
* TemplateSrv: deprecates templateSrv.variables and adds getVariables

* Update public/app/plugins/datasource/postgres/query_ctrl.ts

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Update public/app/plugins/datasource/stackdriver/components/VariableQueryEditor.test.tsx

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Update public/app/plugins/datasource/cloudwatch/datasource.ts

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Update public/app/plugins/datasource/mysql/query_ctrl.ts

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Chore: updates after PR comments

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-03-24 16:03:53 +01:00
Torkel Ödegaard
441e87d4d4 NewPanelEdit: Adding repeating options (#22984)
* NewPanelEdit: Adding repeating options

* Added all repeat options

* reduce strict null errors
2020-03-24 15:44:13 +01:00
Diana Payton
57c55f7e16 Update documentation-style-guide.md (#22733)
Co-authored-by: bergquist <carl.bergquist@gmail.com>
2020-03-24 07:19:02 -07:00
Marcus Efraimsson
b0253219eb Use v0.33.0 of SDK (#23031) 2020-03-24 15:01:02 +01:00
Arve Knudsen
15455ab593 CircleCI: Run golangci-lint in two batches (#23021)
* CircleCI: Run golangci-lint in two batches

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

* CircleCI: Fix typo

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

* Chore: adds fallback value to time series class

* Chore: changes fallback value from null to empty string in FilterInput component

* Update public/app/core/time_series2.ts

Co-Authored-By: Hugo Häggmark <hugo.haggmark@grafana.com>

* Chore: updates || to ?? operators

Co-authored-by: Lukas Siatka <lukasz.siatka@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-03-24 13:50:05 +01:00
Alex Khomenko
014e7d9261 Granfana ui/tag components (#22964)
* Add Tag component

* Add Tag story

* Add TagList

* Group Tab and TabList

* Fix typechecks

* Remove Meta

* Use forwardRef for the Tag

* Add actions instead of console.log

* Add previews
2020-03-24 13:52:20 +02:00
Arve Knudsen
289a5fb862 Chore: Fix golangci-lint timeout config, disable govet (#23015)
* golangci-lint: Fix timeout config; disable govet
* CircleCI: Use official golangci-lint binary
2020-03-24 11:57:22 +01:00
Hugo Häggmark
a0d9851cb9 Chore: adds report.xxxx.json to gitignore (#23016) 2020-03-24 11:15:04 +01:00
Ivana Huckova
dd732eac50 Rich history: Improve animation (#22983) 2020-03-24 11:13:38 +01:00
Lukas Siatka
54bf9cc9ea DevEnv: updates react-use 12.8.0 -> 13.27.0 (#23001) 2020-03-24 10:50:10 +01:00
Torkel Ödegaard
08c95c3419 UI: Theme changes (#22880)
* Theme: Updates the theme to align panel & page background colors

* Updated dashboard settings view to be similar to new panel edit

* Updated themes

* Added shadow

* Updates generated files

* Minor fix to inspect drawer

* Clean up old dashboard setttings stuff

* Polish to search

* Updated truth image

* Minor tweaks to dropdown menu

* Updates and alignments between inspect drawer and explore rich history

* removed unused variables

* Minor tweak to light page header bg
2020-03-24 10:30:53 +01:00
Lukas Siatka
e2f7f85222 DevEnv: update frontend dependencies - eslint (#22990)
* DevEnv: updates eslint-plugin-jsdoc 21.0.0 -> 22.1.0

* DevEnv: updates @typescript-eslint/eslint-plugin 2.19.2 -> 2.24.0 in grafana-toolkit package

* DevEnv: updates @typescript-eslint/parser 2.19.2 -> 2.24.0 in grafana-toolkit package

* DevEnv: updates eslint 6.7.2 -> 6.8.0 in grafana-toolkit package

* DevEnv: updates eslint-config-prettier 6.7.0 -> 6.10.0 in grafana-toolkit package

* DevEnv: updates eslint-plugin-prettier 3.1.1 -> 3.1.2 in grafana-toolkit package

* DevEnv: updates eslint-plugin-jsdoc 18.4.1 -> 22.1.0 in grafana-toolkit package
2020-03-24 08:25:57 +01:00
Lukas Siatka
d4d3874a38 DevEnv: update frontend dependencies - react-dev-utils (#23007)
* DevEnv: updates @types/react-dev-utils 9.0.1 -> 9.0.4 in grafana-toolkit package

* DevEnv: updates react-dev-utils 9.0.1 -> 10.2.1 in grafana-toolkit package
2020-03-24 08:25:12 +01:00
Lukas Siatka
01ebaf9260 DevEnv: update frontend dependencies - storybook (#22976)
* DevEnv: updates storybook-dark-mode 0.3.0 -> 0.3.1 in grafana-ui package

* DevEnv: updates @storybook/addon-actions 5.3.9 -> 5.3.17 in grafana-ui package

* DevEnv: updates @storybook/addon-docs 5.3.9 -> 5.3.17 in grafana-ui package

* DevEnv: updates @storybook/addon-info 5.3.9 -> 5.3.17 in grafana-ui package

* DevEnv: updates @storybook/addon-knobs 5.3.9 -> 5.3.17 in grafana-ui package

* DevEnv: updates @storybook/addon-storysource 5.3.14 -> 5.3.17 in grafana-ui package

* DevEnv: updates @storybook/theming 5.3.9 -> 5.3.17 in grafana-ui package

* DevEnv: updates @storybook/react 5.3.9 -> 5.3.17 in grafana-ui package
2020-03-24 08:23:52 +01:00
Marcus Andersson
41bc1aa3ae DataLinks: make sure we use the correct datapoint when dataset contains null value. (#22981)
* Fix to make sure we have the correct dataIndex when using data links.

* fixed strict null errors.

* decreased number of errors.
2020-03-24 08:19:19 +01:00
Lukas Siatka
18f4e3ce47 DevEnv: update frontend dependencies - ts-node & node-sass (#22988)
* DevEnv: updates ts-node 8.6.2 -> 8.8.1

* DevEnv: updates ts-node 8.5.0 -> 8.8.1 in grafana-e2e package

* DevEnv: updates node-sass 4.12.0 -> 4.13.1 in grafana-toolkit package

* DevEnv: updates ts-node 8.5.0 -> 8.8.1 in grafana-toolkit package
2020-03-24 06:56:58 +01:00
Lukas Siatka
f83e91a2a4 DevEnv: updates react-sizeme 2.5.2 -> 2.6.12 (#23002) 2020-03-24 05:54:48 +01:00
Lukas Siatka
7e8b1d2866 DevEnv: update frontend dependencies - react-color (#23008)
* DevEnv: updates react-color 2.17.0 -> 2.18.0

* DevEnv: updates @types/react-color 2.17.0 -> 3.0.1
2020-03-24 05:49:00 +01:00
Lukas Siatka
ef7b2e3974 DevEnv: update frontend dependencies - pretty-format (#22987)
* DevEnv: updates pretty-format 24.9.0 -> 25.1.0 in grafana-data package

* DevEnv: updates pretty-format 24.9.0 -> 25.1.0 in grafana-ui package

* DevEnv: updates pretty-format 24.9.0 -> 25.1.0 in grafana-runtime package
2020-03-24 05:47:32 +01:00
Hugo Häggmark
05b6d38374 Variables: breaks variable.ts into 2 separate files utils and types (#22884) 2020-03-24 05:46:31 +01:00
Andrew Burian
7d9b6a0dee Alerting: Enable Alert rule tags to override PagerDuty Severity setting (#22736) 2020-03-23 19:32:55 +01:00
Tobias Skarhed
aeb88015ab Storybook: Fix broken stories (#22975)
* Rewrite to CSF and make it not crash

* Move comments to be in generated docs

* Fix broken ThresholdsEditor story

* Fix breaking Select docs
2020-03-23 17:54:48 +01:00
Arve Knudsen
a43e31fbf9 CircleCI: Reduce memory usage of golangci-lint (#22970)
* CircleCI: Fix golangci-lint OOM by reducing concurrency and tweaking GC
2020-03-23 17:33:06 +01:00
Steven Vachon
d8b346f441 Fix mysterious Babel plugin errors (#22974) 2020-03-23 12:32:04 -04:00
Hugo Häggmark
cf5064bfa0 Variables: replaces homegrown variableAdapters with Registry (#22866)
* Refactor: intial commit

* Tests: fixes tests

* Refactor: adds stricter typings
2020-03-23 15:33:17 +01:00
Mohit Nain
277edca3a0 Fix typos in ha_setup.md (#22951) 2020-03-23 14:47:41 +01:00
Emil Tullstedt
1632e1e166 SAML: Document 2.0 as version (#22960)
Casually drops 2.0 in a couple of places in the docs so that a reader looking for information about supported SAML version can find it. Since SAML hasn't had any releases since 2005, we don't have to make a big deal out of it.
2020-03-23 13:53:23 +01:00
Hugo Häggmark
9af04a49ea Variables: replaces UUID with name for a more performant lookup in TemplateSrv (#22858)
* Refactor: renames uuid to id

* Refactor: misc renames

* Refactor: fixes renaming of variable

* Refactor: changes method accessed by templateSrv

* Refactor: fixes for NEW_VARIABLE_ID

* Refactor: rename flow refactor

* Tests: adds missing reducer and action tests

* Refactor: keeping tests consitent

* Chore: reorder imports

* Chore: removes uuid package

* Refactor: fixes imports
2020-03-23 13:45:08 +01:00
Carl Bergquist
3798ac903d Upgrade golangci-lint and fixes some linting errors. (#22909)
Example: https://play.golang.org/p/cfPIPG3BwjJ
2020-03-23 13:37:53 +01:00
Tobias Skarhed
c82a778c3d Storybook: Remove unneccesary stories and reorganize a bit (#22959) 2020-03-23 13:02:09 +01:00
flopp999
8aca83a646 Menu: aligning user menu options (#22940) 2020-03-23 11:29:36 +01:00
Torkel Ödegaard
89203136ec Select: Fixed select text positition (#22952) 2020-03-23 10:55:29 +01:00
Arve Knudsen
9b32f9d3f4 CircleCI: Pin grabpl to v0.2.0 (#22906) 2020-03-23 09:42:12 +01:00
Sofia Papagiannaki
3f12c4cfd5 Docs: fix broken link (#22949) 2020-03-23 09:21:51 +01:00
Marcus Andersson
a7a1406415 Variables: migrates ad hoc variable type to react/redux. (#22784)
* Refactor: moves all the newVariables part to features/variables directory

* Feature: adds datasource type

* Tests: adds reducer tests

* Tests: covers data source actions with tests

* Chore: reduces strict null errors

* boilerplate that will be replaced by real code.

* added old editor template.

* added initial version of ad hoc editor.

* added working (apart from add) version of the editor.

* Added placeholder for picker.

* Have a working UI. Need to connect it so we refresh the variables on changes.

* variable should be updated now.

* removed console.log

* made the url work.

* cleaned up the adapter.

* added possiblity to create filter directly from table.

* moved infotext from general reducer to extended value of adhoc.

* fixed strict null errors.

* fixed strict null errors.

* fixed issue where remove was displayed before being added.

* fixed issue with fragment key.

* changed so template_src is using the redux variables.

* minor refactorings.

* moved adhoc picker to adhoc variable.

* adding tests for reducer and fixed bug.

* added tests or urlparser.

* added tests for ad hoc actions.

* added more tests.

* added more tests.

* fixed strict null error.

* fixed copy n pase error.

* added utilit for getting new variable index.

* removed console.log

* added location to reducerTester type and created a module type for it.

* changed so we only have one builder pattern.

* fixed tests to use static expected values.

* fixed strict errors.

* fixed more strict errors.

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-03-23 09:00:36 +01:00
Jon McKenzie
6c9d833602 AuthProxy: Fixes bug where long username could not be cached (#22926) 2020-03-20 21:50:27 +01:00
flopp999
5df00abfcf Admin: Added Name to user list (#22939)
In Config-users Name is listed so it may also be visible in Admin-users
2020-03-20 21:19:05 +01:00
Marcus Efraimsson
12bb295af1 Docs: Update email notifier documentation (#22919)
* Docs: Update email notifier documentation

Ref #21091

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-03-20 19:13:18 +01:00
Leonard Gram
186e85035e update latest to 6.7.1 (#22933) 2020-03-20 17:32:11 +01:00
Leonard Gram
66e1111948 changelog 6.7.1 (#22932) 2020-03-20 17:23:22 +01:00
Dominik Prokop
bdb5659977 NewPanelEdit: Organise sidebar in tabs (#22870)
* Refactor value mappings UI to work better with new panel edit

* TS fix

* Experimenting with tabs in the sidebar

* Small refactor and added Panel general settings

* Merge fixes

* fix fieldOptions being used instead of fieldConfig

* Added icons to tabs (testing)

* Only 3 tabs i think, panel specific options need ot exist in first tab, some style tweaks

* Moved title and no value up

* Updated

* Render panel options in Options tab and add old options styles hack to display those vertically

* Basic settings to Panel settings

* Make nullcheck pass

* Snaps bump

* Fix standard configs not update

* Organise sidebar better, add tmp NewPanelEditorContext to hide duplicate legacy options

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-03-20 15:15:04 +01:00
Boyko
c600a08524 Query components unsafe lifecycle methods (#21163)
* Chore: refactor query components unsafe lifecycle methods

* Chore: remove redundant defaults

* Chore: check expression exist while filter targets in query

* Chore: fix broken test

* Chore: adding query filed tests

* pass normalized query to QueryFieldsEditor

Signed-off-by: Boyko Lalov <boiskila@gmail.com>

* Remove introduced strictNullCheck errors and correctly solve merged conficts

* Improve redability and fix strictNullChecks

Co-authored-by: Ivana <ivana.huckova@gmail.com>
2020-03-20 13:00:49 +01:00
huanggze
aea3929154 Fix typo (#22923)
Signed-off-by: huanggze <loganhuang@yunify.com>
2020-03-20 12:46:07 +01:00
Torkel Ödegaard
8e131384e3 Panels: Fixed size issue with panels when existing panel edit mode (#22912) 2020-03-20 11:49:54 +01:00
Torkel Ödegaard
d16211b782 Azure: Fixed dropdowns not showing current value (#22914) 2020-03-20 11:04:21 +01:00
Emil Tullstedt
82632bf31e Reporting: Update docs with new default value (#22916) 2020-03-20 10:58:12 +01:00
Marcus Andersson
5cf7803264 Fix: failing tests when running on none english os. (#22913) 2020-03-20 10:34:35 +01:00
Hugo Häggmark
8d5c6053db BackendSrv: only add content-type on POST, PUT requests (#22910)
* BackendSrv: only add content-type on POST, PUT requests
Fixes #22869

* Tests: imports polyfill for Headers
2020-03-20 10:21:32 +01:00
huanggze
87ffa258e7 cleanup: use unexported variable (#22908)
Signed-off-by: huanggze <loganhuang@yunify.com>
2020-03-20 09:40:14 +01:00
Leonard Gram
65dbd7cadc CI: failfast for verify-repos.sh (#22902)
* CI: failfast for verify-repos.sh

* shellcheck
2020-03-19 17:53:55 +01:00
Arve Knudsen
28d2d2ae12 Chore: Update latest.json (#22903) 2020-03-19 17:50:35 +01:00
Arve Knudsen
777246dd3f Changelog: Update for v6.7.0 (#22900) 2020-03-19 17:07:38 +01:00
Dominik Prokop
cb9dd6631b Fix ValueMappingEditor test TS issue (#22895)
* fix test

* Revert "CircleCI: Don't build Storybook on PR (#22865)"

This reverts commit 492264abc3.
2020-03-19 16:48:49 +01:00
Robby Milo
a61af9ed1d Docs: Fix Broken Link (#22894) 2020-03-19 14:48:26 +01:00
Tobias Skarhed
a2b3da2792 Migration: Create org (#22542)
* Add NewOrgPage

* Remove filrs

* Remove import

* Remove comments

* Get navModel from Redux

* Add DTO

* Get nav model from state

* Change error display

* Add async await and check if org is available

* Fix null strict null error

* Update public/app/features/org/NewOrgPage.tsx

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-03-19 14:22:53 +01:00
Dominik Prokop
f2742d4a28 NewPanelEdit: Refactor value mappings UI to work better with new panel edit (#22808)
* Refactor value mappings UI to work better with new panel edit

* TS fix
2020-03-19 12:28:05 +01:00
Dominik Prokop
bf7579d984 FieldOverrides: Move FieldConfigSource from fieldOptions to PanelModel.fieldConfig (#22600)
* Apply field overrides in PanelChrome

* Move applyFieldOverrides to panel query runner

* Review updates

* Make sure overrides are applied back on souce panel when exiting the new edit mode

* TS ignores in est

* Make field display work in viz repeater

* Review updates

* Review and test updates

* Change the way overrides and trransformations are retrieved in PQR

* Add fieldConfig property to PanelModel

* Dashboard migration v1

* Use field config when exiting new panel edit mode

* Gauge - use fieldConfig from panel model

* FieldDisplayOptions - don's extend FieldConfigSource

* Fix fieldDisplay ts

* StatPanel updated

* Stat panel defaults applied

* Table2 panel options  update

* React graph updates

* BarGauge updated

* PieChart, Gauge, BarGauge and Stat updates

* PieChart - remove field config defaults from options

* FieldDisplayEditor - remove unused methos

* PanelModel - remove debugger

* Remove fieldConfig from field options when migrating dashboard

* Update data links migrations

* Update fieldDisaplay tests to respect new fieldConfig

* Update dashboard schema version in snapshots

* Fix BarGaugePanel test

* Rebase fixes

* Add onFieldConfigChange to PanelProps type

* Update shared single stat migration

* Pass PanelModel instead of options only for panel type change handler [breaking]

* Renames

* Don't mutate panel options

* Migrations update

* Remove obsolete snap

* Minor updates after review

* Fix null checks

* Temporarily (until we decide to switch to new pane edit) bring back old aditors

* Temporarily rename ValueMappingEditor and MappingRow to Legacy*

* Migrations update

* Updae setFieldConfigDefaults API

* Update the way field config defaults are applied

* Use standard field config for gauge, bar gauge and stat panels

* refactoring

* Revert dashboard fieldOptions migrations as those are handled by single stat migrator

* Fix ts in tests

* Strict null fix and some minor fixes

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-03-19 11:50:31 +01:00
Emil Tullstedt
d99a67075f Reporting: Update docs with correct logger name (#22892) 2020-03-19 11:48:38 +01:00
Ivana Huckova
8ba75e77b1 Design tweaks (#22886) 2020-03-19 10:17:56 +01:00
Ivana Huckova
0d88a49126 Remove duplicated localStorage mock (#22872) 2020-03-19 09:24:28 +01:00
Jess
db85c3e7b9 Rich history UX fixes (#22783)
* Initial commit

* Visualised renamed or deleted  datasources as well, if they have queries

* Pass ds image to card and information if the datasource was removed/renamed

* Set up card with datasource info and change run query

* Style comment, run button

* Fix button naming

* Remember last filters

* Update public/app/core/store.ts

* Update public/app/features/explore/RichHistory/RichHistory.tsx

* Update comments

* Rename datasource to data source

* Add test coverage, fix naming

* Remove unused styles, add feedback info

Co-authored-by: Ivana <ivana.huckova@gmail.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2020-03-19 08:47:27 +01:00
Tobias Skarhed
c7951a2575 Storybook: Solve deployment issues (#22873) 2020-03-19 07:51:22 +01:00
Diana Payton
18f1d5a83d Docs: Update templating.md (#22881)
Updated because these were moved to the 6.7 milestone.
2020-03-19 07:50:00 +01:00
Daniel Lee
3b9a4e6444 AzureMonitor: support workspaces function for template variables (#22882)
* azuremonitor: adds support for workspaces query macro...

...for Azure Logs template variable queries

* docs: azure logs workspaces templating function

* Update docs/sources/features/datasources/azuremonitor.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* docs: convert list into table

* docs: fixes prettier formatting problem

Prettier adds a slash before dollar signs in markdown. Disabling it
for this table with a prettier comment.

https://prettier.io/docs/en/ignore.html

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-03-19 00:41:35 +01:00
Cyril Tovena
ec9167e972 Check if the datasource is of type loki using meta.id instead of name. (#22877)
Signed-off-by: Cyril Tovena <cyril.tovena@gmail.com>
2020-03-18 21:18:48 +01:00
Denis
26626d9073 Prometheus: Render missing labels in legend formats as an empty string (#22355)
* Empty value for unknown Prometheus label (grafana#16041)

* Empty value for unknown Prometheus label (grafana#16041)

* fix linter
2020-03-18 19:57:11 +01:00
Tobias Skarhed
5a5122e7e3 BarGauge: Fix strict null that breaks Storybook build (#22871) 2020-03-18 18:23:48 +01:00
Arve Knudsen
bb05989e43 SQLStore: Add migration for adding index on annotation.alert_id (#22876) 2020-03-18 17:59:42 +01:00
Diana Payton
fc2fece3d2 Docs: Update export-pdf.md (#22767)
* Update export-pdf.md

Minor edits and one question.

* Update docs/sources/enterprise/export-pdf.md

Co-Authored-By: Alexander Zobnin <alexanderzobnin@gmail.com>

* Update export-pdf.md

Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
2020-03-18 08:58:11 -07:00
Hugo Häggmark
52242ddf76 Variables: adds missing feature toggle in DashboardModel (#22868) 2020-03-18 15:55:12 +01:00
Leonard Gram
229f135e5c Devenv: adds grafana block with a customizeable version (#22867)
The grafana block is pre-configured with the devenv datasources and
dashboards and will work with any other blocks out of the box.
2020-03-18 15:42:41 +01:00
Kyle Brandt
0e09a3fe15 Alerting: support alerting on data.Frame (that can be time series) (#22812)
data.Frame (that can be series) are converted to as tsdb.TimeSeriesSlice - so new backend plugins can be shimmed into existing alerting

use sdk v0.31.0
2020-03-18 10:30:07 -04:00
Dima Ryskin
44b7f3ea1c AlertNotifications: Translate notifications IDs to UIDs in Rule builder (#19882)
* AlertNotifications: Translate notifications IDs to UIDs in alert Rule builder

* Avoid shadowing errors, raise validation error on non-existing notification id

* create a cache for notification Uids to minimize db overhead

* add cache usage test

* avoid caching empty notification Uids

* isolate db in alert notificationUid caching tests
2020-03-18 15:00:56 +02:00
Tobias Skarhed
492264abc3 CircleCI: Don't build Storybook on PR (#22865) 2020-03-18 13:57:17 +01:00
Torkel Ödegaard
044ec40112 Graphite: Rollup Indicator (#22738)
* WIP: Rollup indiator progress

* Progress

* Progress, can now open inspector with right tab

* changed type and made inspect

* Showing stats

* Progress

* Progress

* Getting ready for v1

* Added option and fixed some strict nulls

* Updated

* Fixed test
2020-03-18 13:00:14 +01:00
Carl Bergquist
579abad9cc Plugins: Return jsondetails as an json object instead of raw json on datasource healthchecks. (#22859) 2020-03-18 12:08:52 +01:00
Marcus Efraimsson
60e3437fc1 Backend plugins: Exclude plugin metrics in Grafana's metrics endpoint (#22857)
Excludes backend plugin metrics in Grafana's metrics endpoint
Adds /api/:pluginId/metrics endpoint for retrieving metrics
from backend plugin as Prometheus text-based exposition format.

Fixes #22814
2020-03-18 12:08:20 +01:00
Torkel Ödegaard
aa4ed76a00 Graphite: Fixed issue with query editor and next select metric now showing after selecting metric node (#22856)
* Graphite: Fixed digest issue in graphite query editor

* Fixed unit test

* Updated
2020-03-18 11:47:31 +01:00
Dominik Prokop
6070f749c7 Webpack: Fix webpack for enterprise (#22863) 2020-03-18 11:18:48 +01:00
Dominik Prokop
0a2dda35fc Metrics: Storybook documented components (#22854) 2020-03-18 08:22:46 +01:00
maximka
be73dcd2eb Search: Improve tags layout , #22804 (#22830) 2020-03-18 08:14:56 +01:00
Erik Sundell
1cd7ce24c7 Stackdriver: Fix GCE auth bug when creating new data source (#22836)
* Fix test datasource for gce auth

* Cache gce default project locally

* Await gce default project call

* Remove reload functionality

* Fix build problem
2020-03-18 08:11:14 +01:00
Marcus Efraimsson
eb96a8fcc8 @grafana/runtime: Add cancellation of queries to DataSourceWithBackend (#22818) 2020-03-18 00:12:03 +01:00
Ivana Huckova
8edf8e3982 Rich history: Test coverage (#22852)
* Add unit test coverage

* Add tests to util/richHistory

* Remove unused import

* Remove redundant tests

* Fix tests for components

* Test saving to local storage

* Add boxshadow to container

* Revert "Add boxshadow to container"

This reverts commit 5ca2e850e4.

* Fix failing tests after merging master

* Fix imports, aria-labels

* Remove console.log
2020-03-17 23:24:27 +01:00
Arve Knudsen
3fcbc18002 Chore: Support Volta in package.json (#22849) 2020-03-17 22:08:32 +01:00
Arve Knudsen
756ad3142c CircleCI: Skip enterprise builds for forked PRs (#22851)
* CircleCI: Skip enterprise builds for forked PRs
2020-03-17 21:39:02 +01:00
Stephanie Closson
6310aaff55 Toolkit: docker image for plugin CI process (#22790)
* Adding dockerfile for builds

* Adding standardized bashrc

* Updated dockerfile

* removed bashrc. Not required

* WIP: Updates to dockerfile for e2e and readme

* Storybook: Add relative logo url (#22786)

* DevEnv: update frontend dependencies - rollup (#22794)

* DevEnv: updates rollup 1.6.0 -> 2.0.6 in grafana-data package

* DevEnv: updates rollup 1.6.0 -> 2.0.6 in grafana-e2e package

* DevEnv: updates rollup 1.6.0 -> 2.0.6 in grafana-runtime package

* DevEnv: updates rollup 1.6.0 -> 2.0.6 in grafana-ui package

* DevEnv: updates rollup-plugin-sourcemaps 0.4.2 -> 0.5.0 in grafana-data package

* DevEnv: updates rollup-plugin-sourcemaps 0.4.2 -> 0.5.0 in grafana-e2e package

* DevEnv: updates rollup-plugin-sourcemaps 0.4.2 -> 0.5.0 in grafana-runtime package

* DevEnv: updates rollup-plugin-sourcemaps 0.4.2 -> 0.5.0 in grafana-ui package

* DevEnv: updates rollup-plugin-terser 4.0.4 -> 5.3.0 in grafana-data package

* DevEnv: updates rollup-plugin-terser 4.0.4 -> 5.3.0 in grafana-e2e package

* DevEnv: updates rollup-plugin-terser 4.0.4 -> 5.3.0 in grafana-runtime package

* DevEnv: updates rollup-plugin-terser 4.0.4 -> 5.3.0 in grafana-ui package

* DevEnv: updates rollup-plugin-typescript2 0.19.3 -> 0.26.0 in grafana-data package

* DevEnv: updates rollup-plugin-typescript2 0.19.3 -> 0.26.0 in grafana-e2e package

* DevEnv: updates rollup-plugin-typescript2 0.19.3 -> 0.26.0 in grafana-runtime package

* DevEnv: updates rollup-plugin-typescript2 0.19.3 -> 0.26.0 in grafana-ui package

* DevEnv: updates @rollup/plugin-commonjs 9.2.1 -> 11.0.2 in grafana-data package

* DevEnv: updates @rollup/plugin-commonjs 9.2.1 -> 11.0.2 in grafana-e2e package

* DevEnv: updates @rollup/plugin-commonjs 9.2.1 -> 11.0.2 in grafana-runtime package

* DevEnv: updates @rollup/plugin-commonjs 9.2.1 -> 11.0.2 in grafana-ui package

* DevEnv: updates rollup config import in grafana-data package

* DevEnv: updates rollup config import in grafana-e2e package

* DevEnv: updates rollup config import in grafana-ui package

* DevEnv: updates rollup config import in grafana-runtime package

* DevEnv: updates @rollup/plugin-node-resolve 4.0.1 -> 7.1.1 in grafana-data package

* DevEnv: updates @rollup/plugin-node-resolve 4.0.1 -> 7.1.1 in grafana-e2e package

* DevEnv: updates @rollup/plugin-node-resolve 4.0.1 -> 7.1.1 in grafana-runtime package

* DevEnv: updates @rollup/plugin-node-resolve 4.0.1 -> 7.1.1 in grafana-ui package

* DevEnv: updates lockfile

* DevEnv: updates rollup config plugin-node-resolve import in grafana-data package

* DevEnv: updates rollup config plugin-node-resolve import in grafana-ui package

* DevEnv: updates rollup config plugin-node-resolve import in grafana-e2e package

* DevEnv: updates rollup config plugin-node-resolve import in grafana-runtime package

* DevEnv: updates rollup-plugin-visualizer 0.9.2 -> 3.3.1 in grafana-data package

* DevEnv: updates rollup-plugin-visualizer 0.9.2 -> 3.3.1 in grafana-e2e package

* DevEnv: updates rollup-plugin-visualizer 0.9.2 -> 3.3.1 in grafana-runtime package

* DevEnv: updates rollup-plugin-visualizer 0.9.2 -> 3.3.1 in grafana-ui package

* Fronted: Fixed webpack chunk syntax error

* Fix: fixes issue with headers property with different casing (#22778)

Fixes #22756

* Variables: migrates data source variable type to React/Redux (#22770)

* Refactor: moves all the newVariables part to features/variables directory

* Feature: adds datasource type

* Tests: adds reducer tests

* Tests: covers data source actions with tests

* Chore: reduces strict null errors

* AngularPanels: Fixed inner height calculation (#22796)

* Chore: migrate admin/users from angular to react + redux (#22759)

* Start adding admin users list page to redux/react.

* removed unused code.

* added pagination.

* changed so we use the new form styles.

* added tooltip.

* using tagbadge for authlabels.

* remove unused code.

* removed old code.

* Fixed the last feedback on PR.

* DevEnv: update frontend dependencies - webpack (#22144)

* DevEnv: updates webpack 4.29.6 -> 4.41.5

* DevEnv: updates webpack-cli 3.2.3 -> 3.3.10

* DevEnv: updates webpack-dev-server 3.2.1 -> 3.10.3

* DevEnv: updates terser-webpack-plugin 1.2.3 -> 2.3.4

* DevEnv: updates webpack-bundle-analyzer 3.3.2 -> 3.6.0

* DevEnv updates webpack-merge 4.2.1 -> 4.2.2

* DevEnv: updates clean-webpack-plugin 2.0.0 -> 3.0.0

* DevEnv: updates file-loader 3.0.1 -> 5.0.2

* DevEnv: updates css-loader 2.1.1 -> 3.4.2

* DevEnv: updates sass-loader 7.1.0 -> 8.0.2

* DevEnv: updates style-loader 0.23.1 -> 1.1.3

* DevEnv: updates fork-ts-checker-webpack-plugin 1.0.0 -> 4.0.3

* DevEnv: updates optimize-css-assets-webpack-plugin 5.0.1 -> 5.0.3

* DevEnv: updates mini-css-extract-plugin 0.5.0 -> 0.9.0

* DevEnv: updates @cypress/webpack-preprocessor 4.1.1 -> 4.1.3 in grafana-e2e package

* DevEnv: updates @types/webpack 4.4.34 -> 4.41.7 in grafana-toolkit package

* DevEnv: updates copy-webpack-plugin 5.0.3 -> 5.1.1 in grafana-toolkit package

* DevEnv: updates terser-webpack-plugin 1.3.0 -> 2.3.4 in grafana-toolkit package

* DevEnv: updates webpack 4.35.0 -> 4.41.5 in grafana-toolkit package

* DevEnv: updates import of CleanWebpackPlugin to named import (#22800)

* Build: Migrate PR pipeline (#22788)

Implement new PR pipeline

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

* DevEnv: update frontend dependencies - mixed 1/2 (#22147)

* DevEnv: updates @emotion/core 10.0.10 -> 10.0.27

* DevEnv: updates autoprefixer 9.5.0 -> 9.7.4

* DevEnv: updates axios 0.19.0 -> 0.19.2

* DevEnv: updates es6-promise 3.3.1 -> 4.2.8

* DevEnv: updates glob 7.1.3 -> 7.1.6

* DevEnv: updates husky 1.3.1 -> 4.2.1

* DevEnv: updates lerna 3.15.0 -> 3.20.2

* DevEnv: updates lint-staged 8.1.5 -> 10.0.7

* DevEnv: updates module-alias 2.2.0 -> 2.2.2

* DevEnv: updates monaco-editor 0.15.6 -> 0.19.3

* DevEnv: updates postcss-browser-reporter 0.5.0 -> 0.6.0

* DevEnv: updates rimraf 2.6.3 -> 3.0.1

* Revert "DevEnv: updates monaco-editor 0.15.6 -> 0.19.3"

* DevEnv: updates axios 0.19.0 -> 0.19.2 in grafana-toolkit package

* DevEnv: updates lockfile

* DevEnv: update frontend dependencies - mixed 2/2 (#22148)

* DevEnv: updates sinon 1.17.6 -> 8.1.1

* DevEnv: updates zone.js 0.7.8 -> 0.10.2

* DevEnv: updates brace 0.10.0 -> 0.11.1

* DevEnv: updates eventemitter3 2.0.3 -> 4.0.0

* DevEnv: updates file-saver 1.3.8 -> 2.0.2

* DevEnv: updates is-hotkey 0.1.4 -> 0.1.6

* DevEnv: updates mousetrap 1.6.3 -> 1.6.5

* DevEnv: updates prismjs 1.16.0 -> 1.19.0

* DevEnv: updates search-query-parser 1.5.2 -> 1.5.4

* DevEnv: updates tether 1.4.5 -> 1.4.7

* DevEnv: updates xss 1.0.3 -> 1.0.6

* Revert "DevEnv: updates zone.js 0.7.8 -> 0.10.2"

* DevEnv: updates sinon 1.17.6 -> 8.1.1 in grafana-data package

* DevEnv: updates @types/sinon 7.0.11 -> 7.5.2 in grafana-data package

* DevEnv: updates eventemitter import

* DevEnv: updates lockfile

* Variables: migrates interval variable type to React/Redux  (#22797)

* Feature: migrates interval variable type to React/Redux

* Forms: Fix input suffix position (#22780)

* Forms: Fix input suffix position

* Update

* FieldOverrides: Apply field overrides in PanelQueryRunner (#22439)

* Apply field overrides in PanelChrome

* Move applyFieldOverrides to panel query runner

* Review updates

* Make sure overrides are applied back on souce panel when exiting the new edit mode

* TS ignores in est

* Make field display work in viz repeater

* Review updates

* Review and test updates

* Change the way overrides and trransformations are retrieved in PQR

* Minor updates after review

* Fix null checks

* E2E: Add new run modes for e2e tests (#22795)

* WIP: started e2e tests for bar gauge

* Updated

* Updated

* Updated cypress from 3.7 -> 4.1

* reverted cypress upgrade

* Updated test

* Update e2e docs

* Updated docs

* DevEnv: update frontend dependencies - npm, nodemon, typescript (#22145)

* DevEnv: updates npm 6.13.4 -> 6.13.7

* DevEnv: updates nodemon 1.18.10 -> 2.0.2

* DevEnv: updates typescript 3.7.2 -> 3.7.5

* DevEnv: removes npm from dev dependencies

* DevEnv: updates typescript 3.7.2 -> 3.7.5 in grafana-data package

* DevEnv: updates typescript 3.7.2 -> 3.7.5 in grafana-e2e package

* DevEnv: updates typescript 3.7.2 -> 3.7.5 in grafana-toolkit package

* DevEnv: updates typescript 3.7.2 -> 3.7.5 in grafana-ui package

* DevEnv: updates typescript 3.7.2 -> 3.7.5 in grafana-runtime package

* SaveDashboard: Updated modal design/layout a bit (#22810)

* DevEnv: updates build-ci-deploy dockerfile and CI config to include yarn (#22809)

* DevEnv: updates build-ci-deploy dockerfile

* DevEnv: updates build-ci-deploy dockerfile version in circleci config

* Plugins: Hide plugins page from viewers, and limit /api/plugins to only core plugins when called by viewer role  (#21901)

* Hide plugins list from viewers

* Made /api/plugins only return core plugins for users with viewer role

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>

* Webpack: Add relative node_modules path (#22806)

* DevEnv: updates lockfile to fix breaking builds on CI (#22811)

* DevEnv: updates lockfile

* DevEnv: updates lockfile

* Added readme, and review feedback

* Renamed README

* fixed error in path for docs

* Added updatedb

* Set grafana checkout to latest stable

* Variables: fixes so single value picker closes dropdown on select (#22823)

* FieldOverrides: Remove console warn from processFieldConfigValue (#22824)

* Grafana-UI: Add invalid state to Forms.Textarea (#22775)

* Storybook: Bring back theme switch (#22826)

* TestData: New dashboard that tests variables that update on time range change (#22829)

* CircleCI: Download grabpl from GCS (#22828)

* CircleCI: Download grabpl from GCS

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

* CircleCI: Fix installation of grabpl

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

* Fix dashboard picker's props (#22815)

* TablePanel: Enable new units picker (#22833)

* CircleCI: Install build pipeline tool from GitHub repo (#22837)

* Variables: fixes so order in list is preserved after save (#22805)

* Storybook: Deploy on PR, master and release (#22827)

* Update CircleCI deployment

* Add GCP auth

* Change master to latest dir

* Variables: adds onTimeRangeUpdated to newVariables (#22821)

* Feature: adds onTimeRangeUpdated to newVariables

* Refactor: removes VariableWithRefresh and unused func

* Refactor: adds console output when something throws as well

* Storybook: add canary deploy from master (#22843)

* Canary from master latest from release

* Fix logo URL

* Adding dockerfile for builds

* Adding standardized bashrc

* Updated dockerfile

* removed bashrc. Not required

* WIP: Updates to dockerfile for e2e and readme

* Added readme, and review feedback

* Renamed README

* fixed error in path for docs

* Added updatedb

* Set grafana checkout to latest stable

* Feedback from code review

* Update packages/grafana-toolkit/docker/grafana-plugin-ci/README.md

Co-Authored-By: Arve Knudsen <arve.knudsen@gmail.com>

* recommended changes from code review

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Lukas Siatka <lukasz.siatka@grafana.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2020-03-17 13:36:35 -06:00
Ivana Huckova
d7312750a3 Revert "Explore: Add test coverage for Rich history (#22722)" (#22850)
This reverts commit 40a8aea313.
2020-03-17 17:20:32 +01:00
Carl Bergquist
0a094a7319 Datasource config was not mapped for datasource healthcheck (#22848)
closes #22825
2020-03-17 16:59:47 +01:00
Carl Bergquist
b0407b3578 upgrades plugin sdk to 0.30.0 (#22846)
ref grafana/grafana-plugin-sdk-go#94
ref grafana/grafana-plugin-sdk-go#70
2020-03-17 16:58:52 +01:00
Ivana Huckova
40a8aea313 Explore: Add test coverage for Rich history (#22722)
* Add unit test coverage

* Add tests to util/richHistory

* Remove unused import

* Remove redundant tests

* Fix tests for components

* Test saving to local storage

* Add boxshadow to container

* Revert "Add boxshadow to container"

This reverts commit 5ca2e850e4.
2020-03-17 16:10:56 +01:00
Ivana Huckova
544690060a Rich History: UX adjustments and fixes (#22729)
* Initial commit

* Fix spelling of data sources

* Display sorting value for starred and query tab

* Fix handle color for light theme

* Add close button and fix animation

* Remove toggling of tabs

* Stop event propagation when clicking on comment buttons

* Add title for card functionality

* Remove interpolation for easier searchability of variables

* Improve syncing of comments and starred

* Add modal to check if user wants to permanently delete history

* Fix the height of the query card buttons

* Adjust slider's width based on drawer width

* Add spacing between slider and legend

* Semantic variable naming

* Fix disabled button when live tailing

* Add error handling

* Remove unused imports

* Fix starring, remove useEffect

* Remove emiting of appEvents.alertError in store

* Remove unused imports
2020-03-17 16:06:02 +01:00
Arve Knudsen
e38e08dfb3 CircleCI: Don't publish storybook for PRs (#22845) 2020-03-17 15:56:08 +01:00
Tobias Skarhed
81fed255fd Storybook: add canary deploy from master (#22843)
* Canary from master latest from release

* Fix logo URL
2020-03-17 15:03:59 +01:00
Hugo Häggmark
d953511e02 Variables: adds onTimeRangeUpdated to newVariables (#22821)
* Feature: adds onTimeRangeUpdated to newVariables

* Refactor: removes VariableWithRefresh and unused func

* Refactor: adds console output when something throws as well
2020-03-17 14:10:30 +01:00
Tobias Skarhed
7f76e8b684 Storybook: Deploy on PR, master and release (#22827)
* Update CircleCI deployment

* Add GCP auth

* Change master to latest dir
2020-03-17 13:34:41 +01:00
Hugo Häggmark
dc76cc1a26 Variables: fixes so order in list is preserved after save (#22805) 2020-03-17 13:28:14 +01:00
Arve Knudsen
85b1742805 CircleCI: Install build pipeline tool from GitHub repo (#22837) 2020-03-17 12:50:35 +01:00
Dominik Prokop
58298919c8 TablePanel: Enable new units picker (#22833) 2020-03-17 12:32:48 +01:00
Alex Khomenko
2fac834413 Fix dashboard picker's props (#22815) 2020-03-17 12:07:40 +02:00
Arve Knudsen
67fc251fef CircleCI: Download grabpl from GCS (#22828)
* CircleCI: Download grabpl from GCS

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

* CircleCI: Fix installation of grabpl

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-17 11:00:23 +01:00
Torkel Ödegaard
6c6fa7606e TestData: New dashboard that tests variables that update on time range change (#22829) 2020-03-17 10:33:36 +01:00
Dominik Prokop
22fc1e91f5 Storybook: Bring back theme switch (#22826) 2020-03-17 09:52:46 +01:00
Alex Khomenko
cd50da3dbe Grafana-UI: Add invalid state to Forms.Textarea (#22775) 2020-03-17 10:15:07 +02:00
Dominik Prokop
b930966fc7 FieldOverrides: Remove console warn from processFieldConfigValue (#22824) 2020-03-17 08:32:14 +01:00
Hugo Häggmark
45784f58f5 Variables: fixes so single value picker closes dropdown on select (#22823) 2020-03-17 08:29:10 +01:00
Lukas Siatka
2bed1bc2e7 DevEnv: updates lockfile to fix breaking builds on CI (#22811)
* DevEnv: updates lockfile

* DevEnv: updates lockfile
2020-03-16 15:52:25 +01:00
Andrej Ocenas
c64182d579 Webpack: Add relative node_modules path (#22806) 2020-03-16 15:44:23 +01:00
Dominik Prokop
f345d7f6a3 Plugins: Hide plugins page from viewers, and limit /api/plugins to only core plugins when called by viewer role (#21901)
* Hide plugins list from viewers

* Made /api/plugins only return core plugins for users with viewer role

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-03-16 15:40:46 +01:00
Lukas Siatka
935ec07cfd DevEnv: updates build-ci-deploy dockerfile and CI config to include yarn (#22809)
* DevEnv: updates build-ci-deploy dockerfile

* DevEnv: updates build-ci-deploy dockerfile version in circleci config
2020-03-16 15:37:44 +01:00
Torkel Ödegaard
46165a7f7b SaveDashboard: Updated modal design/layout a bit (#22810) 2020-03-16 15:33:18 +01:00
Lukas Siatka
a3037e363f DevEnv: update frontend dependencies - npm, nodemon, typescript (#22145)
* DevEnv: updates npm 6.13.4 -> 6.13.7

* DevEnv: updates nodemon 1.18.10 -> 2.0.2

* DevEnv: updates typescript 3.7.2 -> 3.7.5

* DevEnv: removes npm from dev dependencies

* DevEnv: updates typescript 3.7.2 -> 3.7.5 in grafana-data package

* DevEnv: updates typescript 3.7.2 -> 3.7.5 in grafana-e2e package

* DevEnv: updates typescript 3.7.2 -> 3.7.5 in grafana-toolkit package

* DevEnv: updates typescript 3.7.2 -> 3.7.5 in grafana-ui package

* DevEnv: updates typescript 3.7.2 -> 3.7.5 in grafana-runtime package
2020-03-16 15:04:02 +01:00
Torkel Ödegaard
75d7f9072c E2E: Add new run modes for e2e tests (#22795)
* WIP: started e2e tests for bar gauge

* Updated

* Updated

* Updated cypress from 3.7 -> 4.1

* reverted cypress upgrade

* Updated test

* Update e2e docs

* Updated docs
2020-03-16 14:35:55 +01:00
Dominik Prokop
642c1a16dd FieldOverrides: Apply field overrides in PanelQueryRunner (#22439)
* Apply field overrides in PanelChrome

* Move applyFieldOverrides to panel query runner

* Review updates

* Make sure overrides are applied back on souce panel when exiting the new edit mode

* TS ignores in est

* Make field display work in viz repeater

* Review updates

* Review and test updates

* Change the way overrides and trransformations are retrieved in PQR

* Minor updates after review

* Fix null checks
2020-03-16 14:26:03 +01:00
Torkel Ödegaard
ab0238eced Forms: Fix input suffix position (#22780)
* Forms: Fix input suffix position

* Update
2020-03-16 14:18:40 +01:00
Hugo Häggmark
fb789e8398 Variables: migrates interval variable type to React/Redux (#22797)
* Feature: migrates interval variable type to React/Redux
2020-03-16 13:45:51 +01:00
Lukas Siatka
fd99bfab1d DevEnv: update frontend dependencies - mixed 2/2 (#22148)
* DevEnv: updates sinon 1.17.6 -> 8.1.1

* DevEnv: updates zone.js 0.7.8 -> 0.10.2

* DevEnv: updates brace 0.10.0 -> 0.11.1

* DevEnv: updates eventemitter3 2.0.3 -> 4.0.0

* DevEnv: updates file-saver 1.3.8 -> 2.0.2

* DevEnv: updates is-hotkey 0.1.4 -> 0.1.6

* DevEnv: updates mousetrap 1.6.3 -> 1.6.5

* DevEnv: updates prismjs 1.16.0 -> 1.19.0

* DevEnv: updates search-query-parser 1.5.2 -> 1.5.4

* DevEnv: updates tether 1.4.5 -> 1.4.7

* DevEnv: updates xss 1.0.3 -> 1.0.6

* Revert "DevEnv: updates zone.js 0.7.8 -> 0.10.2"

* DevEnv: updates sinon 1.17.6 -> 8.1.1 in grafana-data package

* DevEnv: updates @types/sinon 7.0.11 -> 7.5.2 in grafana-data package

* DevEnv: updates eventemitter import

* DevEnv: updates lockfile
2020-03-16 13:14:57 +01:00
Lukas Siatka
f44399abdb DevEnv: update frontend dependencies - mixed 1/2 (#22147)
* DevEnv: updates @emotion/core 10.0.10 -> 10.0.27

* DevEnv: updates autoprefixer 9.5.0 -> 9.7.4

* DevEnv: updates axios 0.19.0 -> 0.19.2

* DevEnv: updates es6-promise 3.3.1 -> 4.2.8

* DevEnv: updates glob 7.1.3 -> 7.1.6

* DevEnv: updates husky 1.3.1 -> 4.2.1

* DevEnv: updates lerna 3.15.0 -> 3.20.2

* DevEnv: updates lint-staged 8.1.5 -> 10.0.7

* DevEnv: updates module-alias 2.2.0 -> 2.2.2

* DevEnv: updates monaco-editor 0.15.6 -> 0.19.3

* DevEnv: updates postcss-browser-reporter 0.5.0 -> 0.6.0

* DevEnv: updates rimraf 2.6.3 -> 3.0.1

* Revert "DevEnv: updates monaco-editor 0.15.6 -> 0.19.3"

* DevEnv: updates axios 0.19.0 -> 0.19.2 in grafana-toolkit package

* DevEnv: updates lockfile
2020-03-16 13:10:42 +01:00
Arve Knudsen
5413521030 Build: Migrate PR pipeline (#22788)
Implement new PR pipeline

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-16 11:08:27 +01:00
Lukas Siatka
6065b1b91d DevEnv: updates import of CleanWebpackPlugin to named import (#22800) 2020-03-16 10:52:30 +01:00
Lukas Siatka
d1837ea132 DevEnv: update frontend dependencies - webpack (#22144)
* DevEnv: updates webpack 4.29.6 -> 4.41.5

* DevEnv: updates webpack-cli 3.2.3 -> 3.3.10

* DevEnv: updates webpack-dev-server 3.2.1 -> 3.10.3

* DevEnv: updates terser-webpack-plugin 1.2.3 -> 2.3.4

* DevEnv: updates webpack-bundle-analyzer 3.3.2 -> 3.6.0

* DevEnv updates webpack-merge 4.2.1 -> 4.2.2

* DevEnv: updates clean-webpack-plugin 2.0.0 -> 3.0.0

* DevEnv: updates file-loader 3.0.1 -> 5.0.2

* DevEnv: updates css-loader 2.1.1 -> 3.4.2

* DevEnv: updates sass-loader 7.1.0 -> 8.0.2

* DevEnv: updates style-loader 0.23.1 -> 1.1.3

* DevEnv: updates fork-ts-checker-webpack-plugin 1.0.0 -> 4.0.3

* DevEnv: updates optimize-css-assets-webpack-plugin 5.0.1 -> 5.0.3

* DevEnv: updates mini-css-extract-plugin 0.5.0 -> 0.9.0

* DevEnv: updates @cypress/webpack-preprocessor 4.1.1 -> 4.1.3 in grafana-e2e package

* DevEnv: updates @types/webpack 4.4.34 -> 4.41.7 in grafana-toolkit package

* DevEnv: updates copy-webpack-plugin 5.0.3 -> 5.1.1 in grafana-toolkit package

* DevEnv: updates terser-webpack-plugin 1.3.0 -> 2.3.4 in grafana-toolkit package

* DevEnv: updates webpack 4.35.0 -> 4.41.5 in grafana-toolkit package
2020-03-16 09:57:35 +01:00
Marcus Andersson
be192b8191 Chore: migrate admin/users from angular to react + redux (#22759)
* Start adding admin users list page to redux/react.

* removed unused code.

* added pagination.

* changed so we use the new form styles.

* added tooltip.

* using tagbadge for authlabels.

* remove unused code.

* removed old code.

* Fixed the last feedback on PR.
2020-03-16 09:53:20 +01:00
Torkel Ödegaard
f78501f3b5 AngularPanels: Fixed inner height calculation (#22796) 2020-03-16 09:48:44 +01:00
Hugo Häggmark
1db067396a Variables: migrates data source variable type to React/Redux (#22770)
* Refactor: moves all the newVariables part to features/variables directory

* Feature: adds datasource type

* Tests: adds reducer tests

* Tests: covers data source actions with tests

* Chore: reduces strict null errors
2020-03-16 06:32:04 +01:00
Hugo Häggmark
b30f4c7bb0 Fix: fixes issue with headers property with different casing (#22778)
Fixes #22756
2020-03-16 06:24:55 +01:00
Torkel Ödegaard
7b5b8ad3d3 Fronted: Fixed webpack chunk syntax error 2020-03-15 17:03:41 +01:00
Lukas Siatka
d51e2221a4 DevEnv: update frontend dependencies - rollup (#22794)
* DevEnv: updates rollup 1.6.0 -> 2.0.6 in grafana-data package

* DevEnv: updates rollup 1.6.0 -> 2.0.6 in grafana-e2e package

* DevEnv: updates rollup 1.6.0 -> 2.0.6 in grafana-runtime package

* DevEnv: updates rollup 1.6.0 -> 2.0.6 in grafana-ui package

* DevEnv: updates rollup-plugin-sourcemaps 0.4.2 -> 0.5.0 in grafana-data package

* DevEnv: updates rollup-plugin-sourcemaps 0.4.2 -> 0.5.0 in grafana-e2e package

* DevEnv: updates rollup-plugin-sourcemaps 0.4.2 -> 0.5.0 in grafana-runtime package

* DevEnv: updates rollup-plugin-sourcemaps 0.4.2 -> 0.5.0 in grafana-ui package

* DevEnv: updates rollup-plugin-terser 4.0.4 -> 5.3.0 in grafana-data package

* DevEnv: updates rollup-plugin-terser 4.0.4 -> 5.3.0 in grafana-e2e package

* DevEnv: updates rollup-plugin-terser 4.0.4 -> 5.3.0 in grafana-runtime package

* DevEnv: updates rollup-plugin-terser 4.0.4 -> 5.3.0 in grafana-ui package

* DevEnv: updates rollup-plugin-typescript2 0.19.3 -> 0.26.0 in grafana-data package

* DevEnv: updates rollup-plugin-typescript2 0.19.3 -> 0.26.0 in grafana-e2e package

* DevEnv: updates rollup-plugin-typescript2 0.19.3 -> 0.26.0 in grafana-runtime package

* DevEnv: updates rollup-plugin-typescript2 0.19.3 -> 0.26.0 in grafana-ui package

* DevEnv: updates @rollup/plugin-commonjs 9.2.1 -> 11.0.2 in grafana-data package

* DevEnv: updates @rollup/plugin-commonjs 9.2.1 -> 11.0.2 in grafana-e2e package

* DevEnv: updates @rollup/plugin-commonjs 9.2.1 -> 11.0.2 in grafana-runtime package

* DevEnv: updates @rollup/plugin-commonjs 9.2.1 -> 11.0.2 in grafana-ui package

* DevEnv: updates rollup config import in grafana-data package

* DevEnv: updates rollup config import in grafana-e2e package

* DevEnv: updates rollup config import in grafana-ui package

* DevEnv: updates rollup config import in grafana-runtime package

* DevEnv: updates @rollup/plugin-node-resolve 4.0.1 -> 7.1.1 in grafana-data package

* DevEnv: updates @rollup/plugin-node-resolve 4.0.1 -> 7.1.1 in grafana-e2e package

* DevEnv: updates @rollup/plugin-node-resolve 4.0.1 -> 7.1.1 in grafana-runtime package

* DevEnv: updates @rollup/plugin-node-resolve 4.0.1 -> 7.1.1 in grafana-ui package

* DevEnv: updates lockfile

* DevEnv: updates rollup config plugin-node-resolve import in grafana-data package

* DevEnv: updates rollup config plugin-node-resolve import in grafana-ui package

* DevEnv: updates rollup config plugin-node-resolve import in grafana-e2e package

* DevEnv: updates rollup config plugin-node-resolve import in grafana-runtime package

* DevEnv: updates rollup-plugin-visualizer 0.9.2 -> 3.3.1 in grafana-data package

* DevEnv: updates rollup-plugin-visualizer 0.9.2 -> 3.3.1 in grafana-e2e package

* DevEnv: updates rollup-plugin-visualizer 0.9.2 -> 3.3.1 in grafana-runtime package

* DevEnv: updates rollup-plugin-visualizer 0.9.2 -> 3.3.1 in grafana-ui package
2020-03-15 16:39:40 +01:00
Tobias Skarhed
8a03703837 Storybook: Add relative logo url (#22786) 2020-03-14 09:04:14 +01:00
Ryan McKinley
8b067a5fe0 DataSourceWithBackend: use /health endpoint for test (#22789) 2020-03-13 14:40:16 -07:00
Torkel Ödegaard
dfb3272bdb E2E: Moving files & refactoring (#22787)
* E2E refactoring

* Updated circleci

* Updated lint paths
2020-03-13 18:48:38 +01:00
Ryan McKinley
c65db9bf25 Chore: remove expressions flag and allow (#22764) 2020-03-13 07:43:25 -07:00
Diana Payton
317894660f Update team-sync.md (#22766)
Alphabetized the list of supported providers.
2020-03-13 07:30:13 -07:00
Peter Holmberg
7019471f3f Migrate: Create new folder page (#22693)
* Migrate create new folder page

* Add header

* Bump react-hook-form

* Form async validatio example

* fix async validation

* Change input size

* async validation on new folder create + documentation

* remove angular things

* fix errors in docs

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
2020-03-13 15:02:54 +01:00
Torkel Ödegaard
64877baa82 E2E: Run e2e tests on PRs and easy local isolated e2e grafana server setup & conf (#22772)
* e2e: Trying to get end-2-end tests to run on PRs

* Probably need quotes here

* Change back to machine

* CI: only build amd64 docker

* lowercase docker image name

* Fixed docker image name

* added end-to-end-test

* Fixed paths

* Added setup_remote_docker

* Updated

* Minor tweak

* update

* Testing

* UpdateD#

* Making some progress

* Update

* Updated

* update

* Updated

* Updated

* testing

* Updated

* Updated

* Updated

* Updated

* updated

* Changed image

* Updated image

* updated

* Addd logging

* trying one more thing

* Fixed build-fast-frontend

* Updated

* Added devenv to end-to-end server setup

* removed file

* Updated

* Minor change

* Fixes

* Updated workspace, and tried to make naming and paths compatible with master & release jobs

* fixed syntax issue

* Updated truth

* Fixed path
2020-03-13 14:34:25 +01:00
Carl Bergquist
b1e112923b aligns the severity dropdown with other fields (#22779) 2020-03-13 14:19:35 +01:00
Alex Khomenko
451c95808d Core: Pass the rest of to props to Select (#22776)
* Pass the rest of to props to Select

* Remove log
2020-03-13 13:07:15 +01:00
Carl Bergquist
ebc9549cbc Add support for sending health check to datasource plugins. (#22771)
closes #21519
ref grafana/grafana-plugin-sdk-go#93
2020-03-13 12:31:44 +01:00
Lukas Siatka
2693f44a03 Explore: removes handling onBlur action in Explore for Loki and Prometheus (#22768)
* Explore: turns off actions execution on blur for Loki

* Explore: turns off actions execution on blur for Prometheus

* Explore: updates snapshots for Loki & Prometheus after turning off onBlur
2020-03-13 12:00:02 +01:00
Diana Payton
b15d0388ff Docs: Update whats-new-in-v6-7.md (#22737)
* Update whats-new-in-v6-7.md
2020-03-13 10:18:25 +01:00
Dominik Prokop
1256d9e78d grafana/data: PanelTypeChangedHandler API update to use PanelModel instead of panel options object [BREAKING] (#22754)
This changes PanelModel's API to support PanelModel API updates when changing panel type. Primary useful when changing panel type between Angular and React panels, as other migrations can be handled via DashboardMigrator.

API change: https://github.com/grafana/grafana/pull/22754/files#diff-d9e3f91dc7d5697f6d85ada008003b4b
2020-03-13 08:27:16 +01:00
Daniel Mietchen
1228fdc57a copyedits (#20817)
Co-authored-by: bergquist <carl.bergquist@gmail.com>
2020-03-13 07:30:04 +01:00
Ivana Huckova
45a567cb8e Docs: Rich history (#22697)
* Add rich historyy documentation

* Update index.md

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update documentation

* Update docs/sources/features/explore/index.md

* Update docs/sources/features/explore/index.md

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

* Update docs/sources/features/explore/index.md

Co-Authored-By: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/features/explore/index.md

* Format table

* Update docs/sources/features/explore/index.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-03-13 00:14:38 +01:00
Diana Payton
904f88167c Docs: Update reporting.md (#22734)
Minor edit
2020-03-12 12:52:24 -07:00
Diana Payton
ef378cb956 Docs: Update menu.yaml (#22730) 2020-03-12 12:38:36 -07:00
Marcus Andersson
f44c0f0643 Datasource: making sure we are having the same data field order when using mixed data sources. (#22718)
* changed so data query response always it returned in the correct order when using mixed data sources.

* refactored the code to make it a bit simpler and not failing the tests.

* changed to simple array type.
2020-03-12 18:16:32 +01:00
Arve Knudsen
d813204546 Update latest.json (#22761)
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-03-12 16:41:34 +01:00
Arve Knudsen
da787c1a38 Update changelog (#22755)
* Update changelog
2020-03-12 15:28:59 +01:00
Alexander Zobnin
4393478397 Docs: export dashboard as PDF (#22746)
* Docs: export dashboard as PDF

* Update docs/sources/enterprise/_index.md

Co-Authored-By: Leonard Gram <leo@xlson.com>

Co-authored-by: Leonard Gram <leo@xlson.com>
2020-03-12 16:24:56 +03:00
Alexander Zobnin
61c1e70234 Docs: add Azure AD to the list of supported providers (#22751) 2020-03-12 15:31:21 +03:00
Dominik Prokop
b441b73345 DashboardSave: Autofocus save dashboard form input (#22748) 2020-03-12 11:50:50 +01:00
Hugo Häggmark
b51e28bc15 Chore: reduces strict null errors to 824 (#22744)
* Chore: reduces strict null errors with 100+

* Chore: lowers the build error number
2020-03-12 10:22:33 +01:00
Steven Vachon
4fecf5a7a6 @grafana/e2e: correctly exclude dependencies from TypeScript builds (#22732)
* maintains support for Grafana core e2e tests
* avoids producing declaration files in plugin source directories
2020-03-11 15:30:29 -04:00
Erik Sundell
5b7bb267cb Add info about project and reference a new image (#22719) 2020-03-11 19:53:52 +01:00
Cody Williams
2940483baf Docs: Remove Mention of Live Tailing in Dashboard (#22704)
The live tailing option was removed with #19533 per some outstanding issues (#19532 and #19530). It should no be mentioned in the docs as a feature. 

https://github.com/grafana/grafana/pull/19533
2020-03-11 10:30:58 -07:00
Alex Khomenko
989c73cf11 Docs: Add layout info (#22720)
* Docs: Add layout info

* Update docs/sources/enterprise/reporting.md

Co-authored-by: Leonard Gram <leo@xlson.com>
2020-03-11 18:31:49 +02:00
Arve Knudsen
9c5020d53f Increment Grafana version (#22728)
* Increment Grafana version to 7.0.0-pre
2020-03-11 17:20:56 +01:00
6570 changed files with 183566 additions and 1306593 deletions

View File

@@ -1,19 +1,19 @@
[run]
init_cmds = [
["go", "run", "-mod=vendor", "build.go", "-dev", "build-cli"],
["go", "run", "-mod=vendor", "build.go", "-dev", "build-server"],
["./bin/grafana-server", "-packaging=dev", "cfg:app_mode=development"]
["go", "run", "build.go", "-dev", "build-cli"],
["go", "run", "build.go", "-dev", "build-server"],
["./bin/grafana-server", "-packaging=dev", "cfg:app_mode=development"]
]
watch_all = true
follow_symlinks = true
watch_dirs = [
"$WORKDIR/pkg",
"$WORKDIR/public/views",
"$WORKDIR/conf",
"$WORKDIR/pkg",
"$WORKDIR/public/views",
"$WORKDIR/conf",
]
watch_exts = [".go", ".ini", ".toml", ".template.html"]
build_delay = 1500
cmds = [
["go", "run", "-mod=vendor", "build.go", "-dev", "build-server"],
["./bin/grafana-server", "-packaging=dev", "cfg:app_mode=development"]
["go", "run", "build.go", "-dev", "build-server"],
["./bin/grafana-server", "-packaging=dev", "cfg:app_mode=development"]
]

File diff suppressed because it is too large Load Diff

41
.github/CODEOWNERS vendored
View File

@@ -15,7 +15,46 @@
/docs/ @oddlittlebird
/contribute/ @oddlittlebird @marcusolsson
# Backend code
*.go @grafana/backend-platform
go.mod @grafana/backend-platform
go.sum @grafana/backend-platform
go.sum @grafana/backend-platform
/e2e @grafana/grafana-frontend-platform
/packages @grafana/grafana-frontend-platform
/plugins-bundled @grafana/grafana-frontend-platform
/public @grafana/grafana-frontend-platform
/scripts/build/release-packages.sh @grafana/grafana-frontend-platform
/scripts/circle-release-next-packages.sh @grafana/grafana-frontend-platform
/scripts/ci-frontend-metrics.sh @grafana/grafana-frontend-platform
/scripts/grunt @grafana/grafana-frontend-platform
/scripts/webpack @grafana/grafana-frontend-platform
package.json @grafana/grafana-frontend-platform
tsconfig.json @grafana/grafana-frontend-platform
lerna.json @grafana/grafana-frontend-platform
.babelrc @grafana/grafana-frontend-platform
.prettierrc.js @grafana/grafana-frontend-platform
.eslintrc @grafana/grafana-frontend-platform
# @grafana/ui component documentation
*.mdx @marcusolsson @jessover9000 @grafana/grafana-frontend-platform
/public/app/features/explore/ @grafana/observability-squad
/packages/jaeger-ui-components/ @grafana/observability-squad
# Core datasources
/public/app/plugins/datasource/cloudwatch @grafana/backend-platform @grafana/observability-squad
/public/app/plugins/datasource/elasticsearch @grafana/observability-squad
/public/app/plugins/datasource/grafana-azure-monitor-datasource @grafana/backend-platform
/public/app/plugins/datasource/graphite @grafana/observability-squad
/public/app/plugins/datasource/influxdb @grafana/observability-squad
/public/app/plugins/datasource/jaeger @grafana/observability-squad
/public/app/plugins/datasource/loki @grafana/observability-squad
/public/app/plugins/datasource/mssql @grafana/backend-platform
/public/app/plugins/datasource/mysql @grafana/backend-platform
/public/app/plugins/datasource/opentsdb @grafana/backend-platform
/public/app/plugins/datasource/postgres @grafana/backend-platform
/public/app/plugins/datasource/prometheus @grafana/observability-squad
/public/app/plugins/datasource/cloud-monitoring @grafana/backend-platform
/public/app/plugins/datasource/zipkin @grafana/observability-squad

View File

@@ -5,9 +5,13 @@ labels: 'type: bug'
---
<!--
Please use this template while reporting a bug and provide as much info as possible.
Questions should be posted to https://community.grafana.com
Use query inspector to troubleshoot issues: https://community.grafana.com/t/using-grafanas-query-inspector-to-troubleshoot-issues/2630
Please use this template to create your bug report. By providing as much info as possible you help us understand the issue, reproduce it and resolve it for you quicker. Therefor take a couple of extra minutes to make sure you have provided all info needed.
PROTIP: record your screen and attach it as a gif to showcase the issue.
* Questions should be posted to: https://community.grafana.com
* Use query inspector to troubleshoot issues: https://bit.ly/2XNF6YS
* How to record and attach gif: https://bit.ly/2Mi8T6K
-->
**What happened**:

View File

@@ -0,0 +1,39 @@
---
name: '@grafana/ui component request'
about: Suggest a component for the @grafana/ui package
labels: 'area/grafana/ui'
---
<!--
By using this template you will make it easier for us to make sure that documentation and implementation stays up to date for every component in @grafana/ui
Thank you!
-->
**Why is this component needed**:
<!-- Explain your use case -->
___
- [ ] Is/could it be used in more than one place in Grafana?
**Where is/could it be used?**:
___
- [ ] Post screenshots possible.
- [ ] It has a single use case.
- [ ] It is/could be used in multiple places.
**Implementation** (Checklist meant for the person implementing the component)
- [ ] Component has a story in Storybook.
- [ ] Props and naming follows [our style guide](https://github.com/grafana/grafana/blob/master/contribute/style-guides/frontend.md).
- [ ] It is extendable (rest props are spread, styles with className work, and so on).
- [ ] Uses [theme for spacing, colors, and so on](https://github.com/grafana/grafana/blob/master/contribute/style-guides/themes.md).
- [ ] Works with both light and dark theme.
**Documentation**
- [ ] Properties are documented.
- [ ] Use cases are described.
- [ ] Code examples for the different use cases.
- [ ] Dos and don'ts.
- [ ] Styling guidelines, specific color usage (if applicable).

19
.gitignore vendored
View File

@@ -11,13 +11,19 @@ awsconfig
/public/views/error.html
/emails/dist
/reports
/e2e/tmp
.yarnrc
.yarn/
vendor/
.eslintcache
# Enterprise emails
/emails/templates/enterprise_*
/public/emails/enterprise_*
# Enterprise devenv
/devenv/docker/blocks/grafana-enterprise
/tmp
tools/phantomjs/phantomjs
tools/phantomjs/phantomjs.exe
@@ -41,6 +47,7 @@ public/css/*.min.css
.DS_Store
.vscode/
.vs/
.eslintcache
/data/*
/bin/*
@@ -83,6 +90,8 @@ debug.test
/devenv/bulk-dashboards/*.json
/devenv/bulk_alerting_dashboards/*.json
/devenv/datasources_bulk.yaml
/devenv/bulk_alerting_dashboards/bulk_alerting_datasources.yaml
/scripts/build/release_publisher/release_publisher
*.patch
@@ -103,6 +112,10 @@ compilation-stats.json
/packages/grafana-e2e/cypress/screenshots
/packages/grafana-e2e/cypress/videos
/packages/grafana-e2e/cypress/logs
/public/e2e-test/screenShots/theOutput
/public/e2e-tests/screenShots/theOutput/*.png
/public/e2e-tests/videos
/e2e/server.log
/e2e/**/screenshots
!/e2e/**/screenshots/expected/*
/e2e/**/videos/*
# report dumping the whole system env
/report.*.json

3
.prettierrc.js Normal file
View File

@@ -0,0 +1,3 @@
module.exports = {
...require('@grafana/toolkit/src/config/prettier.plugin.config.json'),
};

File diff suppressed because it is too large Load Diff

View File

@@ -58,10 +58,10 @@ When you're ready to contribute, it's time to [Create a pull request](/contribut
#### Contributor License Agreement (CLA)
Before we can accept your pull request, you need to [sign our CLA](https://grafana.com/docs/contribute/cla/). If you haven't, our CLA assistant prompts you to when you create your pull request.
Before we can accept your pull request, you need to [sign our CLA](https://grafana.com/docs/grafana/latest/developers/cla/). If you haven't, our CLA assistant prompts you to when you create your pull request.
## Where do I go from here?
- Set up your [development environment](contribute/developer-guide.md).
- Learn how to [contribute documentation](contribute/documentation.md).
- Get started [developing plugins](https://grafana.com/docs/plugins/developing/development/) for Grafana.
- Get started [developing plugins](https://grafana.com/docs/grafana/latest/developers/plugins/) for Grafana.

View File

@@ -1,32 +1,4 @@
# Golang build container
FROM golang:1.13.4-alpine
RUN apk add --no-cache gcc g++
WORKDIR $GOPATH/src/github.com/grafana/grafana
COPY go.mod go.sum ./
COPY vendor vendor
RUN go mod verify
COPY pkg pkg
COPY build.go package.json ./
RUN go run build.go build
# Node build container
FROM node:12.13.0-alpine
# PhantomJS
RUN apk add --no-cache curl &&\
cd /tmp && curl -Ls https://github.com/dustinblackman/phantomized/releases/download/2.1.1/dockerized-phantomjs.tar.gz | tar xz &&\
cp -R lib lib64 / &&\
cp -R usr/lib/x86_64-linux-gnu /usr/lib &&\
cp -R usr/share /usr/share &&\
cp -R etc/fonts /etc &&\
curl -k -Ls https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2 | tar -jxf - &&\
cp phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs
FROM node:12.18.1-alpine3.12 as js-builder
WORKDIR /usr/src/app/
@@ -35,16 +7,32 @@ COPY packages packages
RUN yarn install --pure-lockfile --no-progress
COPY Gruntfile.js tsconfig.json .eslintrc .editorconfig .browserslistrc ./
COPY Gruntfile.js tsconfig.json .eslintrc .editorconfig .browserslistrc .prettierrc.js ./
COPY public public
COPY tools tools
COPY scripts scripts
COPY emails emails
ENV NODE_ENV production
RUN ./node_modules/.bin/grunt build
# Final container
FROM alpine:3.10
FROM golang:1.14.4-alpine3.12 as go-builder
RUN apk add --no-cache gcc g++
WORKDIR $GOPATH/src/github.com/grafana/grafana
COPY go.mod go.sum ./
RUN go mod verify
COPY pkg pkg
COPY build.go package.json ./
RUN go run build.go build
# Final stage
FROM alpine:3.12
LABEL maintainer="Grafana team <hello@grafana.com>"
@@ -62,7 +50,7 @@ ENV PATH="/usr/share/grafana/bin:$PATH" \
WORKDIR $GF_PATHS_HOME
RUN apk add --no-cache ca-certificates bash tzdata && \
apk add --no-cache --upgrade --repository=http://dl-cdn.alpinelinux.org/alpine/edge/main openssl musl-utils
apk add --no-cache --upgrade openssl musl-utils
COPY conf ./conf
@@ -80,18 +68,9 @@ RUN mkdir -p "$GF_PATHS_HOME/.aws" && \
chown -R grafana:grafana "$GF_PATHS_DATA" "$GF_PATHS_HOME/.aws" "$GF_PATHS_LOGS" "$GF_PATHS_PLUGINS" "$GF_PATHS_PROVISIONING" && \
chmod -R 777 "$GF_PATHS_DATA" "$GF_PATHS_HOME/.aws" "$GF_PATHS_LOGS" "$GF_PATHS_PLUGINS" "$GF_PATHS_PROVISIONING"
# PhantomJS
COPY --from=1 /tmp/lib /lib
COPY --from=1 /tmp/lib64 /lib64
COPY --from=1 /tmp/usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu
COPY --from=1 /tmp/usr/share /usr/share
COPY --from=1 /tmp/etc/fonts /etc/fonts
COPY --from=1 /usr/local/bin/phantomjs /usr/local/bin
COPY --from=0 /go/src/github.com/grafana/grafana/bin/linux-amd64/grafana-server /go/src/github.com/grafana/grafana/bin/linux-amd64/grafana-cli ./bin/
COPY --from=1 /usr/src/app/public ./public
COPY --from=1 /usr/src/app/tools ./tools
COPY tools/phantomjs/render.js ./tools/phantomjs/render.js
COPY --from=go-builder /go/src/github.com/grafana/grafana/bin/linux-amd64/grafana-server /go/src/github.com/grafana/grafana/bin/linux-amd64/grafana-cli ./bin/
COPY --from=js-builder /usr/src/app/public ./public
COPY --from=js-builder /usr/src/app/tools ./tools
EXPOSE 3000

View File

@@ -1,23 +1,4 @@
FROM golang:1.13.4 AS go-builder
WORKDIR /src/grafana
COPY go.mod go.sum ./
COPY vendor vendor/
RUN go mod verify
COPY build.go package.json ./
COPY pkg pkg/
RUN go run build.go build
FROM node:12.13 AS js-builder
# PhantomJS
RUN apt-get update && apt-get install -y curl &&\
curl -L https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2 | tar xj &&\
cp phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs
FROM node:12.16.3-slim AS js-builder
WORKDIR /usr/src/app/
@@ -26,15 +7,29 @@ COPY packages packages
RUN yarn install --pure-lockfile
COPY Gruntfile.js tsconfig.json .eslintrc .editorconfig .browserslistrc ./
COPY Gruntfile.js tsconfig.json .eslintrc .editorconfig .browserslistrc .prettierrc.js ./
COPY public public
COPY tools tools
COPY scripts scripts
COPY emails emails
ENV NODE_ENV production
RUN ./node_modules/.bin/grunt build
FROM ubuntu:19.10
FROM golang:1.14.2 AS go-builder
WORKDIR /src/grafana
COPY go.mod go.sum ./
RUN go mod verify
COPY build.go package.json ./
COPY pkg pkg/
RUN go run build.go build
FROM ubuntu:20.04
LABEL maintainer="Grafana team <hello@grafana.com>"
EXPOSE 3000
@@ -54,8 +49,8 @@ WORKDIR $GF_PATHS_HOME
COPY conf conf
# We need font libs for phantomjs, and curl should be part of the image
RUN apt-get update && apt-get upgrade -y && apt-get install -y ca-certificates libfontconfig1 curl
# curl should be part of the image
RUN apt-get update && apt-get upgrade -y && apt-get install -y ca-certificates curl
RUN mkdir -p "$GF_PATHS_HOME/.aws" && \
addgroup --system --gid $GF_GID grafana && \
@@ -71,14 +66,11 @@ RUN mkdir -p "$GF_PATHS_HOME/.aws" && \
chown -R grafana:grafana "$GF_PATHS_DATA" "$GF_PATHS_HOME/.aws" "$GF_PATHS_LOGS" "$GF_PATHS_PLUGINS" "$GF_PATHS_PROVISIONING" && \
chmod -R 777 "$GF_PATHS_DATA" "$GF_PATHS_HOME/.aws" "$GF_PATHS_LOGS" "$GF_PATHS_PLUGINS" "$GF_PATHS_PROVISIONING"
# PhantomJS
COPY --from=js-builder /usr/local/bin/phantomjs /usr/local/bin/
COPY --from=go-builder /src/grafana/bin/linux-amd64/grafana-server /src/grafana/bin/linux-amd64/grafana-cli bin/
COPY --from=js-builder /usr/src/app/public public
COPY --from=js-builder /usr/src/app/tools tools
COPY tools/phantomjs/render.js tools/phantomjs/
COPY packaging/docker/run.sh /
USER grafana

203
GOVERNANCE.md Normal file
View File

@@ -0,0 +1,203 @@
# Governance
This document describes the rules and governance of the project. It is meant to be followed by all the developers of the project and the Grafana community. Common terminology used in this governance document are listed below:
- **Team members**: Any members of the private [grafana-team][team] Google group.
- **Maintainers**: Maintainers lead an individual project or parts thereof ([`MAINTAINERS.md`][maintainers]).
- **Projects**: A single repository in the Grafana GitHub organization and listed below is referred to as a project:
- clock-panel
- devtools
- gel-app
- grafana
- grafana-github-datasource
- grafana-image-renderer
- grafana-kiosk
- grafana-plugin-sdk-go
- grafana-polystat-panel
- grafonnet-lib
- kairosdb-datasource
- piechart-panel
- simple-angular-panel
- simple-app-plugin
- simple-datasource
- simple-datasource-backend
- simple-json-backend-datasource
- simple-json-datasource
- simple-react-panel
- strava-datasource
- tutorials
- worldmap-panel
- **The Grafana project**: The sum of all activities performed under this governance, concerning one or more repositories or the community.
## Values
The Grafana developers and community are expected to follow the values defined in the Grafana Code of Conduct. Furthermore, the Grafana community strives for kindness, giving feedback effectively, and building a welcoming environment. The Grafana developers generally decide by consensus and only resort to conflict resolution by a majority vote if consensus cannot be reached.
## Projects
Each project must have a [`MAINTAINERS.md`][maintainers] file with at least one maintainer. Where a project has a release process, access and documentation should be such that more than one person can perform a release. Releases should be announced on the Grafana Labs blog. Any new projects should be first proposed on the [team mailing list][team] following the voting procedures listed below.
## Decision making
### Team members
Team member status may be given to those who have made ongoing contributions to the Grafana project for at least 3 months. This is usually in the form of code improvements and/or notable work on documentation, but organizing events or user support could also be taken into account.
New members may be proposed by any existing member by email to [grafana-team][team]. It is highly desirable to reach consensus about acceptance of a new member. However, the proposal is ultimately voted on by a formal [supermajority vote](#supermajority-vote).
If the new member proposal is accepted, the proposed team member should be contacted privately via email to confirm or deny their acceptance of team membership. This email will also be CC'd to [grafana-team][team] for record-keeping purposes.
If they choose to accept, the [onboarding](#onboarding) procedure is followed.
Team members may retire at any time by emailing [the team][team].
Team members can be removed by [supermajority vote](#supermajority-vote) on [the team mailing list][team].
For this vote, the member in question is not eligible to vote and does not count towards the quorum.
Any removal vote can cover only one single person.
Upon death of a member, they leave the team automatically.
In case a member leaves, the [offboarding](#offboarding) procedure is applied.
The current team members are:
- Alexander Zobnin ([Grafana Labs](https://grafana.com/))
- Andrej Ocenas ([Grafana Labs](https://grafana.com/))
- Arve Knudsen ([Grafana Labs](https://grafana.com/))
- Brian Gann ([Grafana Labs](https://grafana.com/))
- Carl Bergquist ([Grafana Labs](https://grafana.com/))
- Chris Trott ([Grafana Labs](https://grafana.com/))
- Daniel Lee ([Grafana Labs](https://grafana.com/))
- David Kaltschmidt ([Grafana Labs](https://grafana.com/))
- Diana Payton ([Grafana Labs](https://grafana.com/))
- Diana Sarlinska ([Grafana Labs](https://grafana.com/))
- Dominik Prokop ([Grafana Labs](https://grafana.com/))
- Emil Tullstedt ([Grafana Labs](https://grafana.com/))
- Hugo Häggmark ([Grafana Labs](https://grafana.com/))
- Ivana Huckova ([Grafana Labs](https://grafana.com/))
- Jeroen Op 't Eynde ([Grafana Labs](https://grafana.com/))
- Jessica Müller ([Grafana Labs](https://grafana.com/))
- Julien Pivotto ([Inuits](https://inuits.eu/))
- Kay Delaney ([Grafana Labs](https://grafana.com/))
- Kyle Brandt ([Grafana Labs](https://grafana.com/))
- Leonard Gram ([Grafana Labs](https://grafana.com/))
- Lukas Siatka ([Grafana Labs](https://grafana.com/))
- Malcolm Holmes ([Grafana Labs](https://grafana.com/))
- Marcus Andersson ([Grafana Labs](https://grafana.com/))
- Marcus Efraimsson ([Grafana Labs](https://grafana.com/))
- Marcus Olsson ([Grafana Labs](https://grafana.com/))
- Mitsuhiro Tanda ([GREE](https://corp.gree.net/jp/en/))
- Patrick OCarroll ([Grafana Labs](https://grafana.com/))
- Peter Holmberg ([Grafana Labs](https://grafana.com/))
- Richard Hartmann ([Grafana Labs](https://grafana.com/))
- Ryan McKinley ([Grafana Labs](https://grafana.com/))
- Sofia Papagiannaki ([Grafana Labs](https://grafana.com/))
- Stephanie Closson ([Grafana Labs](https://grafana.com/))
- Tobias Skarhed ([Grafana Labs](https://grafana.com/))
- Torkel Ödegaard ([Grafana Labs](https://grafana.com/))
- Utkarsh Bhatnagar ([Tinder](https://www.tinder.com/))
### Maintainers
Maintainers lead one or more project(s) or parts thereof and serve as a point of conflict resolution amongst the contributors to this project. Ideally, maintainers are also team members, but exceptions are possible for suitable maintainers that, for whatever reason, are not yet team members.
Changes in maintainership have to be announced on the [developers mailing list][devs]. They are decided by [rough consensus](#consensus) and formalized by changing the [`MAINTAINERS.md`][maintainers] file of the respective repository.
Maintainers are granted commit rights to all projects covered by this governance.
A maintainer or committer may resign by notifying the [team mailing list][team]. A maintainer with no project activity for a year is considered to have resigned. Maintainers that wish to resign are encouraged to propose another team member to take over the project.
A project may have multiple maintainers, as long as the responsibilities are clearly agreed upon between them. This includes coordinating who handles which issues and pull requests.
### Technical decisions
Technical decisions that only affect a single project are made informally by the maintainer of this project, and [rough consensus](#consensus) is assumed. Technical decisions that span multiple parts of the Grafana project should be discussed and made on the [Grafana developer mailing list][devs].
Decisions are usually made by [rough consensus](#consensus). If no consensus can be reached, the matter may be resolved by [majority vote](#majority-vote).
### Governance changes
Changes to this document are made by Grafana Labs.
### Other matters
Any matter that needs a decision may be called to a vote by any member if they deem it necessary. For private or personnel matters, discussion and voting takes place on the [team mailing list][team], otherwise on the [developer mailing list][devs].
## Voting
The Grafana project usually runs by informal consensus, however sometimes a formal decision must be made.
Depending on the subject matter, as laid out [above](#decision-making), different methods of voting are used.
For all votes, voting must be open for at least one week. The end date should be clearly stated in the call to vote. A vote may be called and closed early if enough votes have come in one way so that further votes cannot change the final decision.
In all cases, all and only [team members](#team-members) are eligible to vote, with the sole exception of the forced removal of a team member, in which said member is not eligible to vote.
Discussion and votes on personnel matters (including but not limited to team membership and maintainership) are held in private on the [team mailing list][team]. All other discussion and votes are held in public on the [developer mailing list][devs].
For public discussions, anyone interested is encouraged to participate. Formal power to object or vote is limited to [team members](#team-members).
### Consensus
The default decision making mechanism for the Grafana project is [rough][rough] consensus. This means that any decision on technical issues is considered supported by the [team][team] as long as nobody objects or the objection has been considered but not necessarily accommodated.
Silence on any consensus decision is implicit agreement and equivalent to explicit agreement. Explicit agreement may be stated at will. Decisions may, but do not need to be called out and put up for decision on the [developers mailing list][devs] at any time and by anyone.
Consensus decisions can never override or go against the spirit of an earlier explicit vote.
If any [team member](#team-members) raises objections, the team members work together towards a solution that all involved can accept. This solution is again subject to rough consensus.
In case no consensus can be found, but a decision one way or the other must be made, any [team member](#team-members) may call a formal [majority vote](#majority-vote).
### Majority vote
Majority votes must be called explicitly in a separate thread on the appropriate mailing list. The subject must be prefixed with `[VOTE]`. In the body, the call to vote must state the proposal being voted on. It should reference any discussion leading up to this point.
Votes may take the form of a single proposal, with the option to vote yes or no, or the form of multiple alternatives.
A vote on a single proposal is considered successful if more vote in favor than against.
If there are multiple alternatives, members may vote for one or more alternatives, or vote “no” to object to all alternatives. It is not possible to cast an “abstain” vote. A vote on multiple alternatives is considered decided in favor of one alternative if it has received the most votes in favor, and a vote from more than half of those voting. Should no alternative reach this quorum, another vote on a reduced number of options may be called separately.
### Supermajority vote
Supermajority votes must be called explicitly in a separate thread on the appropriate mailing list. The subject must be prefixed with `[VOTE]`. In the body, the call to vote must state the proposal being voted on. It should reference any discussion leading up to this point.
Votes may take the form of a single proposal, with the option to vote yes or no, or the form of multiple alternatives.
A vote on a single proposal is considered successful if at least two thirds of those eligible to vote vote in favor.
If there are multiple alternatives, members may vote for one or more alternatives, or vote “no” to object to all alternatives. A vote on multiple alternatives is considered decided in favor of one alternative if it has received the most votes in favor, and a vote from at least two thirds of those eligible to vote. Should no alternative reach this quorum, another vote on a reduced number of options may be called separately.
## On- / Offboarding
### Onboarding
The new member is
- added to the list of [team members](#team-members). Ideally by sending a PR of their own, at least approving said PR.
- announced on the [developers mailing list][devs] by an existing team member. Ideally, the new member replies in this thread, acknowledging team membership.
- added to the projects with commit rights.
- added to the [team mailing list][team].
### Offboarding
The ex-member is
- removed from the list of [team members](#team-members). Ideally by sending a PR of their own, at least approving said PR. In case of forced removal, no approval is needed.
- removed from the projects. Optionally, they can retain maintainership of one or more repositories if the [team](#team-members) agrees.
- removed from the team mailing list and demoted to a normal member of the other mailing lists.
- not allowed to call themselves an active team member any more, nor allowed to imply this to be the case.
- added to a list of previous members if they so choose.
If needed, we reserve the right to publicly announce removal.
[coc]: https://github.com/grafana/grafana/blob/master/CODE_OF_CONDUCT.md
[devs]: https://groups.google.com/forum/#!forum/grafana-developers
[maintainers]: https://github.com/grafana/grafana/blob/master/MAINTAINERS.md
[rough]: https://tools.ietf.org/html/rfc7282
[team]: https://groups.google.com/forum/#!forum/grafana-team

View File

@@ -35,7 +35,6 @@ module.exports = function (grunt) {
config.libc = grunt.option('libc');
}
config.phjs = grunt.option('phjsToRelease');
config.pkg.version = grunt.option('pkgVer') || config.pkg.version;
console.log('Version', config.pkg.version);

View File

@@ -143,7 +143,7 @@ Label | Description
`type/feature-request` | Request for a new feature or enhancement.
`type/docs` | Documentation problem or enhancement.
`type/accessibility` | Accessibility problem or enhancement.
`type/question` | Issue is or perceived as a question.
`type/question` | Issue is a question or is perceived as such.
`type/duplicate` | An existing issue of the same subject/request have already been reported.
`type/works-as-intended` | A reported bug works as intended/by design.
`type/build-packaging` | Build or packaging problem or enhancement.
@@ -152,7 +152,7 @@ Label | Description
### Duplicate issue?
Make sure that it's not a duplicate by searching existing issues using related terms from the issue title and description. If you think you know there are an existing issue, but can't find it please reach out to one of the maintainers and ask for help. If you identify that the issue is a duplicate of an existing issue:
Make sure it's not a duplicate by searching existing issues using related terms from the issue title and description. If you think you know there is an existing issue, but can't find it, please reach out to one of the maintainers and ask for help. If you identify that the issue is a duplicate of an existing issue:
1. Add a comment `Duplicate of #<issue number>`. GitHub will recognize this and add some additional context to the issue activity.
2. Close the issue and label it with `type/duplicate`.
@@ -188,8 +188,8 @@ If it's not perfectly clear that it's an actual bug, quickly try to reproduce it
First, evaluate if the documentation makes sense to be included in the Grafana project:
- Is this something we want/can maintain as a project?
- Is this referring to usage of some specific integration/tool and in that case are those a popular use case in combination with Grafana?
- If unsure, kindly and politely add a comment explaining that we would need [upvotes](https://help.github.com/en/articles/about-conversations-on-github#reacting-to-ideas-in-comments) to identify that lots of other users wants/needs this.
- Is this referring to usage of some specific integration/tool and in that case is that a popular use case in combination with Grafana?
- If unsure, kindly and politely add a comment explaining that we would need [upvotes](https://help.github.com/en/articles/about-conversations-on-github#reacting-to-ideas-in-comments) to identify that lots of other users want/need this.
Second, label the issue `type/docs` and at least one `area/*` or `datasource/*` label.
@@ -219,9 +219,9 @@ In general bugs and enhancement issues should be labeled with a priority.
This is the most difficult thing with triaging issues since it requires a lot of knowledge, context and experience before being able to think of and start feel comfortable adding a certain priority label.
The key here is asking for help and discuss issues to understand how more experienced project members thinks and reason. By doing that you learn more and eventually be more and more comfortable with prioritizing issues.
The key here is asking for help and discuss issues to understand how more experienced project members think and reason. By doing that you learn more and eventually be more and more comfortable with prioritizing issues.
In any case there are uncertainty around the priorization of an issue, please ask the maintainers for help.
In case there is an uncertainty around the prioritization of an issue, please ask the maintainers for help.
Label | Description
------- | --------
@@ -235,7 +235,7 @@ Label | Description
**Critical bug?**
1. If a bug have been categorized and any of the following problems applies the bug should be labeled as critical and must be actively worked on as someone's top priority right now.
1. If a bug has been categorized and any of the following criteria apply, the bug should be labeled as critical and must be actively worked on as someone's top priority right now.
- Results in any data loss
- Critical security or performance issues
@@ -273,9 +273,9 @@ Label | Description
## 5. Requesting help from the community
Depending on the issue and/or priority, it's always a good idea to consider signalling to the community that help from community is appreciated and needed in case an issue is not prioritized to be worked on by maintainers. Use your best judgement. In general, when requesting help from the community it means a contribution has a good chance of getting accepted and merged.
Depending on the issue and/or priority, it's always a good idea to consider signalling to the community that help from community is appreciated and needed in case an issue is not prioritized to be worked on by maintainers. Use your best judgement. In general, requesting help from the community means that a contribution has a good chance of getting accepted and merged.
In many cases the issue author or community as a whole is more suitable to contribute changes since they're experts in their domain. It's also quite common that someone has tried to get something to work using the documentation without success and made an effort to get it to work and/or reached out to the [community site](https://community.grafana.com/) to get the missing information. In especially these areas it's more likely that there exists experts in their own domain and usually a good idea to request help from contributors:
In many cases the issue author or community as a whole is more suitable to contribute changes since they're experts in their domain. It's also quite common that someone has tried to get something to work using the documentation without success and made an effort to get it to work and/or reached out to the [community site](https://community.grafana.com/) to get the missing information. Particularly in these areas it's more likely that there exist experts in their own domain and it is usually a good idea to request help from contributors:
- Database setups
- Authentication like OAuth providers and LDAP setups
@@ -292,11 +292,11 @@ In many cases the issue author or community as a whole is more suitable to contr
## Investigation of issues
When an issue has all basic information provided, but the triage responsible haven't been able to reproduce the reported problem at a first glance, the issue is labeled [Needs investigation](https://github.com/grafana/grafana/labels/needs%20investigation). Depending of the perceived severity and/or number of [upvotes](https://help.github.com/en/articles/about-conversations-on-github#reacting-to-ideas-in-comments), the investigation will either be delegated to another maintainer for further investigation or either put on hold until someone else (maintainer or contributor) picks it up and eventually start investigating it.
When an issue has all basic information provided, but the triage responsible haven't been able to reproduce the reported problem at a first glance, the issue is labeled [Needs investigation](https://github.com/grafana/grafana/labels/needs%20investigation). Depending on the perceived severity and/or number of [upvotes](https://help.github.com/en/articles/about-conversations-on-github#reacting-to-ideas-in-comments), the investigation will either be delegated to another maintainer for further investigation or put on hold until someone else (maintainer or contributor) picks it up and eventually starts investigating it.
Investigating issues can be a very time consuming task, especially for the maintainers given the huge number of combinations of plugins, data sources, platforms, databases, browsers, tools, hardware, integrations, versions and cloud services etc that are being used with Grafana. There are a certain amount of combinations that are more common than others and these are in general easier for maintainers to investigate.
Investigating issues can be a very time consuming task, especially for the maintainers, given the huge number of combinations of plugins, data sources, platforms, databases, browsers, tools, hardware, integrations, versions and cloud services, etc that are being used with Grafana. There is a certain number of combinations that are more common than others, and these are in general easier for maintainers to investigate.
For some other combinations there may not be possible at all for a maintainer to setup a proper test environment for being able to investigate. In these cases we really appreciate any help we can get from the community. Otherwise the issue is highly likely to be closed.
For some other combinations it may not be possible at all for a maintainer to setup a proper test environment to investigate the issue. In these cases we really appreciate any help we can get from the community. Otherwise the issue is highly likely to be closed.
Even if you don't have the time or knowledge to investigate an issue we highly recommend that you [upvote](https://help.github.com/en/articles/about-conversations-on-github#reacting-to-ideas-in-comments) the issue if you happen to have the same problem. If you have further details that may help investigating the issue please provide as much information as possible.
@@ -306,14 +306,14 @@ Part of issue triage should also be triaging of external PRs. Main goal should b
1. Check new external PRs which do not have a reviewer.
1. Check if there is a link to an existing issue.
1. If not and you know which issue it is solving add the link yourself, otherwise ask the author to link the issue or create one.
1. If not and you know which issue it is solving, add the link yourself, otherwise ask the author to link the issue or create one.
1. Assign a reviewer based on who was handling the linked issue or what code or feature does the PR touches (look at who was the last to make changes there if all else fails).
## Appendix
### Setting up Gmail filters
If you're using Gmail it's highly recommened that you setup filters to automatically remove email from the inbox and label them accordingly to make it easy for you to understand when you need to act upon a notification or process all incoming issues that haven't been triaged.
If you're using Gmail it's highly recommended that you setup filters to automatically remove email from the inbox and label them accordingly to make it easy for you to understand when you need to act upon a notification or process all incoming issues that haven't been triaged.
This may be setup by personal preference, but here's a working configuration for reference.
1. Follow instructions in [gist](https://gist.github.com/marefr/9167c2e31466f6316c1cba118874e74f)
@@ -335,6 +335,6 @@ This will give you a structure of labels in the sidebar similar to the following
- Grafana
```
* All notifications youll need to read/take action on shows up as unread in Github (mine) and its sub-labels.
* All other notifications you dont need to take action on shows up as unread in Github (other) and its sub-labels
* All notifications youll need to read/take action on show up as unread in Github (mine) and its sub-labels.
* All other notifications you dont need to take action on show up as unread in Github (other) and its sub-labels
* This is convenient for issue triage and to follow the activity in the Grafana project.

8
MAINTAINERS.md Normal file
View File

@@ -0,0 +1,8 @@
@torkelo is the main/default maintainer, some parts of the codebase have other maintainers:
* Backend:
* @bergquist
* Plugins:
* @ryantxu
* UX/UI:
* @davkal

View File

@@ -4,7 +4,7 @@
-include local/Makefile
.PHONY: all deps-go deps-js deps build-go build-server build-cli build-js build build-docker-dev build-docker-full lint-go gosec revive golangci-lint go-vet test-go test-js test run run-frontend clean devenv devenv-down revive-alerting help
.PHONY: all deps-go deps-js deps build-go build-server build-cli build-js build build-docker-dev build-docker-full lint-go revive golangci-lint test-go test-js test run run-frontend clean devenv devenv-down revive-strict protobuf help
GO = GO111MODULE=on go
GO_FILES ?= ./pkg/...
@@ -42,6 +42,7 @@ build-cli: ## Build Grafana CLI application.
build-js: ## Build frontend assets.
@echo "build frontend"
yarn run build
yarn run plugins:build-bundled
build: build-go build-js ## Build backend and frontend.
@@ -80,11 +81,18 @@ revive: scripts/go/bin/revive
-config ./scripts/go/configs/revive.toml \
$(GO_FILES)
revive-alerting: scripts/go/bin/revive
@echo "lint alerting via revive"
revive-strict: scripts/go/bin/revive
@echo "lint via revive (strict)"
@scripts/go/bin/revive \
-formatter stylish \
./pkg/services/alerting/...
-config ./scripts/go/configs/revive-strict.toml \
-exclude ./pkg/plugins/backendplugin/pluginextensionv2/... \
./pkg/services/alerting/... \
./pkg/services/provisioning/datasources/... \
./pkg/services/provisioning/dashboards/... \
./pkg/services/provisioning/notifiers/... \
./pkg/services/provisioning/values/... \
./pkg/plugins/backendplugin/...
scripts/go/bin/golangci-lint: scripts/go/go.mod
@cd scripts/go; \
@@ -93,26 +101,10 @@ scripts/go/bin/golangci-lint: scripts/go/go.mod
golangci-lint: scripts/go/bin/golangci-lint
@echo "lint via golangci-lint"
@scripts/go/bin/golangci-lint run \
--config ./scripts/go/configs/.golangci.yml \
--config ./scripts/go/configs/.golangci.toml \
$(GO_FILES)
scripts/go/bin/gosec: scripts/go/go.mod
@cd scripts/go; \
$(GO) build -o ./bin/gosec github.com/securego/gosec/cmd/gosec
# TODO recheck the rules and leave only necessary exclusions
gosec: scripts/go/bin/gosec
@echo "lint via gosec"
@scripts/go/bin/gosec -quiet \
-exclude=G104,G107,G108,G201,G202,G204,G301,G304,G401,G402,G501 \
-conf=./scripts/go/configs/gosec.json \
$(GO_FILES)
go-vet:
@echo "lint via go vet"
@$(GO) vet $(GO_FILES)
lint-go: go-vet golangci-lint revive revive-alerting gosec ## Run all code checks for backend.
lint-go: golangci-lint revive revive-strict # Run all code checks for backend.
# with disabled SC1071 we are ignored some TCL,Expect `/usr/bin/env expect` scripts
shellcheck: $(SH_FILES) ## Run checks for shell scripts.
@@ -158,6 +150,16 @@ devenv-down: ## Stop optional services.
##@ Helpers
# We separate the protobuf generation because most development tasks on
# Grafana do not involve changing protobuf files and protoc is not a
# go-gettable dependency and so getting it installed can be inconvenient.
#
# If you are working on changes to protobuf interfaces you may either use
# this target or run the individual scripts below directly.
protobuf: ## Compile protobuf definitions
bash scripts/protobuf-check.sh
bash pkg/plugins/backendplugin/pluginextensionv2/generate.sh
clean: ## Clean up intermediate build artifacts.
@echo "cleaning"
rm -rf node_modules

View File

@@ -6,7 +6,7 @@ Please encrypt your message to us; please use our PGP key. The key fingerprint i
F988 7BEA 027A 049F AE8E 5CAA D125 8932 BE24 C5CA
The key is available from [pgp.mit.edu](https://pgp.mit.edu/pks/lookup?op=get&search=0xF9887BEA027A049FAE8E5CAAD1258932BE24C5CA) by searching for [grafana](https://pgp.mit.edu/pks/lookup?search=grafana&op=index).
The key is available from [keyserver.ubuntu.com](https://keyserver.ubuntu.com/pks/lookup?search=0xF9887BEA027A049FAE8E5CAAD1258932BE24C5CA&fingerprint=on&op=index).
Grafana Labs will send you a response indicating the next steps in handling your report. After the initial reply to your report, the security team will keep you informed of the progress towards a fix and full announcement, and may ask for additional information or guidance.

View File

@@ -20,8 +20,6 @@ Upgrading Go or Node.js requires making changes in many different files. See bel
The Grafana project uses [Go modules](https://golang.org/cmd/go/#hdr-Modules__module_versions__and_more) to manage dependencies on external packages. This requires a working Go environment with version 1.11 or greater installed.
All dependencies are vendored in the `vendor/` directory.
_Note:_ Since most developers of Grafana still use the `GOPATH` we need to specify `GO111MODULE=on` to make `go mod` and `got get` work as intended. If you have setup Grafana outside of the `GOPATH` on your machine you can skip `GO111MODULE=on` when running the commands below.
To add or update a new dependency, use the `go get` command:
@@ -35,16 +33,14 @@ GO111MODULE=on go get example.com/some/module/pkg
GO111MODULE=on go get example.com/some/module/pkg@vX.Y.Z
```
Tidy up the `go.mod` and `go.sum` files and copy the new/updated dependency to the `vendor/` directory:
Tidy up the `go.mod` and `go.sum` files:
```bash
# The GO111MODULE variable can be omitted when the code isn't located in GOPATH.
GO111MODULE=on go mod tidy
GO111MODULE=on go mod vendor
```
You have to commit the changes to `go.mod`, `go.sum` and the `vendor/` directory before submitting the pull request.
You have to commit the changes to `go.mod` and `go.sum` before submitting the pull request.
## Node.js dependencies

73
WORKFLOW.md Normal file
View File

@@ -0,0 +1,73 @@
# Grafana workflow
This document is based on [GOVERNANCE.md](GOVERNANCE.md). We assume good faith and intend to keep all processes as lightweight as possible but as specific as required. In case of disagreements about anything in this document, GOVERNANCE.md applies.
The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in [RFC2119](http://tools.ietf.org/html/rfc2119).
Git and [GitHub terminology](https://help.github.com/en/github/getting-started-with-github/github-glossary) are used throughout this document.
Team members and their access to repositories is maintained through [GitHub teams](https://help.github.com/en/github/setting-up-and-managing-organizations-and-teams/about-teams). Team maintainers add and remove team members as outlined in GOVERNANCE.md.
# Code changes
## Proposing changes
Examples of proposed changes are overarching architecture, component design, and specific code or graphical elements. Proposed changes SHOULD cover the big picture and intention, but individual parts SHOULD be split into the smallest possible changes. Changes SHOULD be based on and target the master branch. Depending on size of the proposed change, each change SHOULD be discussed, in increasing order of change size and complexity:
* Directly in a RR (Pull Request) - this MAY be done, but SHOULD not be the common case.
* Issue
* Developer mailing list
* Design document, shared via Google Docs, accessible to at least all team members.
Significant changes MUST be discussed and agreed upon with the relevant subsystem maintainers.
## Merging PRs (Pull Requests)
Depending on the size and complexity of a PR, different requirements MUST be applied. Any team member contributing substantially to a PR MUST NOT count against review requirements.
Commits MUST be merged into master using PRs. They MUST NOT be merged into master directly.
* Every merge MUST be approved by at least one team member.
* Non-trivial changes MUST be approved by at least
* two team members, or
* one subsystem maintainer.
* Significant changes MUST be approved by at least
* two team members, AND
* the relevant subsystem maintainer.
PRs MUST be [reviewed](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/reviewing-changes-in-pull-requests) and [approved](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/approving-a-pull-request-with-required-reviews) via GitHubs review system.
* Reviewers MAY write comments if approving
* Reviewers MUST write comments if rejecting a PR or if requesting changes.
Once a PR is approved as per above, any team member MAY merge the PR.
# Release workflow
## Branch structure
Grafana uses trunk-based development.
In particular, we found that the following principles match how we work:
* Master and release branches MUST always build without failure.
* Branches SHOULD be merged often. Larger changes SHOULD be activated with feature flags until they are ready. Long-lived development branches SHOULD be avoided.
* Changes MAY be enabled by default once they are in a complete state
* Changes which span multiple PRs MUST be described in an overarching issue or Google Doc.
## Releases
Releases MUST follow [Semantic Versioning](https://semver.org/) in naming and SHOULD follow Semantic Versioning as closely as reasonably possible for non-library software.
Release branches MUST be split from the following branches.
* MAJOR release branches MUST be based on master.
* MINOR release branches MUST be based on master.
* PATCH release branches MUST be split from the relevant MINOR release branchs most current PATCH
Security releases follow the same process but MUST be prepared in secret. Security releases MUST NOT include changes which are not related to the security fix. Normal release processes MUST accommodate the security release process. SECURITY.md MUST be followed.
PRs intended for inclusion in the next PATCH release MUST be labeled with `cherry-pick-needed` so they can be picked up by automated release tooling.
Releases follow the following cadence
* MAJOR: Yearly
* MINOR: Every 4-6 weeks
* PATCH: As needed
Releases SHOULD NOT be delayed by pending changes.
Releases MUST be coordinated with the relevant subsystem maintainers.

View File

@@ -23,6 +23,10 @@
"extractorMessageReporting": {
"default": {
"logLevel": "warning"
},
"ae-internal-missing-underscore": {
"logLevel": "none",
"addToApiReportFile": false
}
},
"tsdocMessageReporting": {

View File

@@ -9,6 +9,7 @@ import (
"encoding/json"
"flag"
"fmt"
"go/build"
"io"
"io/ioutil"
"log"
@@ -40,7 +41,6 @@ var (
linuxPackageVersion string = "v1"
linuxPackageIteration string = ""
race bool
phjsToRelease string
workingDir string
includeBuildId bool = true
buildId string = "0"
@@ -52,15 +52,12 @@ var (
skipRpmGen bool = false
skipDebGen bool = false
printGenVersion bool = false
modVendor bool = true
)
func main() {
log.SetOutput(os.Stdout)
log.SetFlags(0)
ensureGoPath()
var buildIdRaw string
flag.StringVar(&goarch, "goarch", runtime.GOARCH, "GOARCH")
@@ -69,9 +66,7 @@ func main() {
flag.StringVar(&libc, "libc", "", "LIBC")
flag.BoolVar(&cgo, "cgo-enabled", cgo, "Enable cgo")
flag.StringVar(&pkgArch, "pkg-arch", "", "PKG ARCH")
flag.StringVar(&phjsToRelease, "phjs", "", "PhantomJS binary")
flag.BoolVar(&race, "race", race, "Use race detector")
flag.BoolVar(&modVendor, "modVendor", modVendor, "Go modules use vendor folder")
flag.BoolVar(&includeBuildId, "includeBuildId", includeBuildId, "IncludeBuildId in package name")
flag.BoolVar(&enterprise, "enterprise", enterprise, "Build enterprise version of Grafana")
flag.StringVar(&buildIdRaw, "buildId", "0", "Build ID from CI system")
@@ -110,16 +105,16 @@ func main() {
case "build-srv", "build-server":
clean()
build("grafana-server", "./pkg/cmd/grafana-server", []string{})
doBuild("grafana-server", "./pkg/cmd/grafana-server", []string{})
case "build-cli":
clean()
build("grafana-cli", "./pkg/cmd/grafana-cli", []string{})
doBuild("grafana-cli", "./pkg/cmd/grafana-cli", []string{})
case "build":
//clean()
for _, binary := range binaries {
build(binary, "./pkg/cmd/"+binary, []string{})
doBuild(binary, "./pkg/cmd/"+binary, []string{})
}
case "build-frontend":
@@ -389,7 +384,6 @@ func createPackage(options linuxPackageOptions) {
if enterprise {
description += " Enterprise"
}
args = append(args, "--vendor", description)
if !enterprise {
args = append(args, "--license", "\"Apache 2.0\"")
@@ -422,18 +416,6 @@ func createPackage(options linuxPackageOptions) {
runPrint("fpm", append([]string{"-t", options.packageType}, args...)...)
}
func ensureGoPath() {
if os.Getenv("GOPATH") == "" {
cwd, err := os.Getwd()
if err != nil {
log.Fatal(err)
}
gopath := filepath.Clean(filepath.Join(cwd, "../../../../"))
log.Println("GOPATH is", gopath)
os.Setenv("GOPATH", gopath)
}
}
func grunt(params ...string) {
if runtime.GOOS == windows {
runPrint(`.\node_modules\.bin\grunt`, params...)
@@ -459,9 +441,6 @@ func gruntBuildArg(task string) []string {
if libc != "" {
args = append(args, fmt.Sprintf("--libc=%s", libc))
}
if phjsToRelease != "" {
args = append(args, fmt.Sprintf("--phjsToRelease=%v", phjsToRelease))
}
if enterprise {
args = append(args, "--enterprise")
}
@@ -484,7 +463,7 @@ func test(pkg string) {
runPrint("go", "test", "-short", "-timeout", "60s", pkg)
}
func build(binaryName, pkg string, tags []string) {
func doBuild(binaryName, pkg string, tags []string) {
libcPart := ""
if libc != "" {
libcPart = fmt.Sprintf("-%s", libc)
@@ -509,9 +488,6 @@ func build(binaryName, pkg string, tags []string) {
if race {
args = append(args, "-race")
}
if modVendor {
args = append(args, "-mod=vendor")
}
args = append(args, "-o", binary)
args = append(args, pkg)
@@ -565,7 +541,7 @@ func clean() {
rmr("dist")
rmr("tmp")
rmr(filepath.Join(os.Getenv("GOPATH"), fmt.Sprintf("pkg/%s_%s/github.com/grafana", goos, goarch)))
rmr(filepath.Join(build.Default.GOPATH, fmt.Sprintf("pkg/%s_%s/github.com/grafana", goos, goarch)))
}
func setBuildEnv() {

View File

@@ -126,7 +126,8 @@ connstr =
# This enables data proxy logging, default is false
logging = false
# How long the data proxy should wait before timing out default is 30 (seconds)
# How long the data proxy waits before timing out, default is 30 seconds.
# This setting also applies to core backend HTTP data sources where query requests use an HTTP client with timeout set.
timeout = 30
# If enabled and user is not anonymous, data proxy will add X-Grafana-User header with username into the request, default is false.
@@ -188,7 +189,6 @@ allow_embedding = false
# Set to true if you want to enable http strict transport security (HSTS) response header.
# This is only sent when HTTPS is enabled in this configuration.
# HSTS tells browsers that the site should only be accessed using HTTPS.
# The default will change to true in the next minor release, 6.3.
strict_transport_security = false
# Sets how long a browser should cache HSTS. Only applied if strict_transport_security is enabled.
@@ -202,12 +202,12 @@ strict_transport_security_subdomains = false
# Set to true to enable the X-Content-Type-Options response header.
# The X-Content-Type-Options response HTTP header is a marker used by the server to indicate that the MIME types advertised
# in the Content-Type headers should not be changed and be followed. The default will change to true in the next minor release, 6.3.
x_content_type_options = false
# in the Content-Type headers should not be changed and be followed.
x_content_type_options = true
# Set to true to enable the X-XSS-Protection header, which tells browsers to stop pages from loading
# when they detect reflected cross-site scripting (XSS) attacks. The default will change to true in the next minor release, 6.3.
x_xss_protection = false
# when they detect reflected cross-site scripting (XSS) attacks.
x_xss_protection = true
#################################### Snapshots ###########################
@@ -230,9 +230,12 @@ snapshot_remove_expired = true
# Number dashboard versions to keep (per dashboard). Default: 20, Minimum: 1
versions_to_keep = 20
# Minimum dashboard refresh interval. When set, this will restrict users to set the refresh interval of a dashboard lower than given interval. Per default this is not set/unrestricted.
# Minimum dashboard refresh interval. When set, this will restrict users to set the refresh interval of a dashboard lower than given interval. Per default this is 5 seconds.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
min_refresh_interval =
min_refresh_interval = 5s
# Path to the default home dashboard. If this value is empty, then Grafana uses StaticRootPath + "dashboards/home.json"
default_home_dashboard_path =
#################################### Users ###############################
[users]
@@ -298,6 +301,9 @@ signout_redirect_url =
# This setting is ignored if multiple OAuth providers are configured.
oauth_auto_login = false
# OAuth state max age cookie duration. Defaults to 60 seconds.
oauth_state_cookie_max_age = 60
# limit of api_key seconds to live before expiration
api_key_max_seconds_to_live = -1
@@ -312,6 +318,9 @@ org_name = Main Org.
# specify role for unauthenticated users
org_role = Viewer
# mask the Grafana version number for unauthenticated users
hide_version = false
#################################### Github Auth #########################
[auth.github]
enabled = false
@@ -383,6 +392,21 @@ token_url = https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token
allowed_domains =
allowed_groups =
#################################### Okta OAuth #######################
[auth.okta]
name = Okta
enabled = false
allow_sign_up = true
client_id = some_id
client_secret = some_secret
scopes = openid profile email groups
auth_url = https://<tenant-id>.okta.com/oauth2/v1/authorize
token_url = https://<tenant-id>.okta.com/oauth2/v1/token
api_url = https://<tenant-id>.okta.com/oauth2/v1/userinfo
allowed_domains =
allowed_groups =
role_attribute_path =
#################################### Generic OAuth #######################
[auth.generic_oauth]
name = OAuth
@@ -405,47 +429,6 @@ tls_client_cert =
tls_client_key =
tls_client_ca =
#################################### SAML Auth ###########################
[auth.saml] # Enterprise only
# Defaults to false. If true, the feature is enabled
enabled = false
# Base64-encoded public X.509 certificate. Used to sign requests to the IdP
certificate =
# Path to the public X.509 certificate. Used to sign requests to the IdP
certificate_path =
# Base64-encoded private key. Used to decrypt assertions from the IdP
private_key =
# Path to the private key. Used to decrypt assertions from the IdP
private_key_path =
# Base64-encoded IdP SAML metadata XML. Used to verify and obtain binding locations from the IdP
idp_metadata =
# Path to the SAML metadata XML. Used to verify and obtain binding locations from the IdP
idp_metadata_path =
# URL to fetch SAML IdP metadata. Used to verify and obtain binding locations from the IdP
idp_metadata_url =
# Duration, since the IdP issued a response and the SP is allowed to process it. Defaults to 90 seconds
max_issue_delay = 90s
# Duration, for how long the SP's metadata should be valid. Defaults to 48 hours
metadata_valid_duration = 48h
# Friendly name or name of the attribute within the SAML assertion to use as the user's name
assertion_attribute_name = displayName
# Friendly name or name of the attribute within the SAML assertion to use as the user's login handle
assertion_attribute_login = mail
# Friendly name or name of the attribute within the SAML assertion to use as the user's email
assertion_attribute_email = mail
#################################### Basic Auth ##########################
[auth.basic]
enabled = true
@@ -487,6 +470,7 @@ skip_verify = false
from_address = admin@grafana.localhost
from_name = Grafana
ehlo_identity =
startTLS_policy =
[emails]
welcome_email_on_sign_up = false
@@ -706,6 +690,9 @@ container_name =
server_url =
# If the remote HTTP image renderer service runs on a different server than the Grafana server you may have to configure this to a URL where Grafana is reachable, e.g. http://grafana.domain/.
callback_url =
# Concurrent render request limit affects when the /render HTTP endpoint is used. Rendering many images at the same time can overload the server,
# which this setting can help protect against by only allowing a certain amount of concurrent requests.
concurrent_render_request_limit = 30
[panels]
# here for to support old env variables, can remove after a few months
@@ -715,6 +702,68 @@ disable_sanitize_html = false
[plugins]
enable_alpha = false
app_tls_skip_verify_insecure = false
# Enter a comma-separated list of plugin identifiers to identify plugins that are allowed to be loaded even if they lack a valid signature.
allow_loading_unsigned_plugins =
#################################### Grafana Image Renderer Plugin ##########################
[plugin.grafana-image-renderer]
# Instruct headless browser instance to use a default timezone when not provided by Grafana, e.g. when rendering panel image of alert.
# See ICUs metaZones.txt (https://cs.chromium.org/chromium/src/third_party/icu/source/data/misc/metaZones.txt) for a list of supported
# timezone IDs. Fallbacks to TZ environment variable if not set.
rendering_timezone =
# Instruct headless browser instance to use a default language when not provided by Grafana, e.g. when rendering panel image of alert.
# Please refer to the HTTP header Accept-Language to understand how to format this value, e.g. 'fr-CH, fr;q=0.9, en;q=0.8, de;q=0.7, *;q=0.5'.
rendering_language =
# Instruct headless browser instance to use a default device scale factor when not provided by Grafana, e.g. when rendering panel image of alert.
# Default is 1. Using a higher value will produce more detailed images (higher DPI), but will require more disk space to store an image.
rendering_viewport_device_scale_factor =
# Instruct headless browser instance whether to ignore HTTPS errors during navigation. Per default HTTPS errors are not ignored. Due to
# the security risk it's not recommended to ignore HTTPS errors.
rendering_ignore_https_errors =
# Instruct headless browser instance whether to capture and log verbose information when rendering an image. Default is false and will
# only capture and log error messages. When enabled, debug messages are captured and logged as well.
# For the verbose information to be included in the Grafana server log you have to adjust the rendering log level to debug, configure
# [log].filter = rendering:debug.
rendering_verbose_logging =
# Instruct headless browser instance whether to output its debug and error messages into running process of remote rendering service.
# Default is false. This can be useful to enable (true) when troubleshooting.
rendering_dumpio =
# Additional arguments to pass to the headless browser instance. Default is --no-sandbox. The list of Chromium flags can be found
# here (https://peter.sh/experiments/chromium-command-line-switches/). Multiple arguments is separated with comma-character.
rendering_args =
# You can configure the plugin to use a different browser binary instead of the pre-packaged version of Chromium.
# Please note that this is not recommended, since you may encounter problems if the installed version of Chrome/Chromium is not
# compatible with the plugin.
rendering_chrome_bin =
# Instruct how headless browser instances are created. Default is 'default' and will create a new browser instance on each request.
# Mode 'clustered' will make sure that only a maximum of browsers/incognito pages can execute concurrently.
# Mode 'reusable' will have one browser instance and will create a new incognito page on each request.
rendering_mode =
# When rendering_mode = clustered you can instruct how many browsers or incognito pages can execute concurrently. Default is 'browser'
# and will cluster using browser instances.
# Mode 'context' will cluster using incognito pages.
rendering_clustering_mode =
# When rendering_mode = clustered you can define maximum number of browser instances/incognito pages that can execute concurrently..
rendering_clustering_max_concurrency =
# Limit the maximum viewport width, height and device scale factor that can be requested.
rendering_viewport_max_width =
rendering_viewport_max_height =
rendering_viewport_max_device_scale_factor =
# Change the listening host and port of the gRPC server. Default host is 127.0.0.1 and default port is 0 and will automatically assign
# a port not in use.
grpc_host =
grpc_port =
[enterprise]
license_path =

View File

@@ -0,0 +1,11 @@
# # config file version
apiVersion: 1
# apps:
# - type: grafana-example-app
# org_name: Main Org.
# disabled: true
# - type: raintank-worldping-app
# org_id: 1
# jsonData:
# apiKey: "API KEY"

View File

@@ -127,7 +127,8 @@
# This enables data proxy logging, default is false
;logging = false
# How long the data proxy should wait before timing out default is 30 (seconds)
# How long the data proxy waits before timing out, default is 30 seconds.
# This setting also applies to core backend HTTP data sources where query requests use an HTTP client with timeout set.
;timeout = 30
# If enabled and user is not anonymous, data proxy will add X-Grafana-User header with username into the request, default is false.
@@ -142,7 +143,7 @@
;reporting_enabled = true
# Set to false to disable all checks to https://grafana.net
# for new vesions (grafana itself and plugins), check is used
# for new versions (grafana itself and plugins), check is used
# in some UI views to notify that grafana or plugin update exists
# This option does not cause any auto updates, nor send any information
# only a GET request to http://grafana.com to get latest versions
@@ -189,7 +190,6 @@
# Set to true if you want to enable http strict transport security (HSTS) response header.
# This is only sent when HTTPS is enabled in this configuration.
# HSTS tells browsers that the site should only be accessed using HTTPS.
# The default version will change to true in the next minor release, 6.3.
;strict_transport_security = false
# Sets how long a browser should cache HSTS. Only applied if strict_transport_security is enabled.
@@ -203,12 +203,12 @@
# Set to true to enable the X-Content-Type-Options response header.
# The X-Content-Type-Options response HTTP header is a marker used by the server to indicate that the MIME types advertised
# in the Content-Type headers should not be changed and be followed. The default will change to true in the next minor release, 6.3.
;x_content_type_options = false
# in the Content-Type headers should not be changed and be followed.
;x_content_type_options = true
# Set to true to enable the X-XSS-Protection header, which tells browsers to stop pages from loading
# when they detect reflected cross-site scripting (XSS) attacks. The default will change to true in the next minor release, 6.3.
;x_xss_protection = false
# when they detect reflected cross-site scripting (XSS) attacks.
;x_xss_protection = true
#################################### Snapshots ###########################
[snapshots]
@@ -229,9 +229,12 @@
# Number dashboard versions to keep (per dashboard). Default: 20, Minimum: 1
;versions_to_keep = 20
# Minimum dashboard refresh interval. When set, this will restrict users to set the refresh interval of a dashboard lower than given interval. Per default this is not set/unrestricted.
# Minimum dashboard refresh interval. When set, this will restrict users to set the refresh interval of a dashboard lower than given interval. Per default this is 5 seconds.
# The interval string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.
;min_refresh_interval =
;min_refresh_interval = 5s
# Path to the default home dashboard. If this value is empty, then Grafana uses StaticRootPath + "dashboards/home.json"
;default_home_dashboard_path =
#################################### Users ###############################
[users]
@@ -297,6 +300,9 @@
# This setting is ignored if multiple OAuth providers are configured.
;oauth_auto_login = false
# OAuth state max age cookie duration. Defaults to 60 seconds.
;oauth_state_cookie_max_age = 60
# limit of api_key seconds to live before expiration
;api_key_max_seconds_to_live = -1
@@ -311,6 +317,9 @@
# specify role for unauthenticated users
;org_role = Viewer
# mask the Grafana version number for unauthenticated users
;hide_version = false
#################################### Github Auth ##########################
[auth.github]
;enabled = false
@@ -373,6 +382,21 @@
;allowed_domains =
;allowed_groups =
#################################### Okta OAuth #######################
[auth.okta]
;name = Okta
;enabled = false
;allow_sign_up = true
;client_id = some_id
;client_secret = some_secret
;scopes = openid profile email groups
;auth_url = https://<tenant-id>.okta.com/oauth2/v1/authorize
;token_url = https://<tenant-id>.okta.com/oauth2/v1/token
;api_url = https://<tenant-id>.okta.com/oauth2/v1/userinfo
;allowed_domains =
;allowed_groups =
;role_attribute_path =
#################################### Generic OAuth ##########################
[auth.generic_oauth]
;enabled = false
@@ -395,47 +419,6 @@
;tls_client_key =
;tls_client_ca =
#################################### SAML Auth ###########################
[auth.saml] # Enterprise only
# Defaults to false. If true, the feature is enabled.
;enabled = false
# Base64-encoded public X.509 certificate. Used to sign requests to the IdP
;certificate =
# Path to the public X.509 certificate. Used to sign requests to the IdP
;certificate_path =
# Base64-encoded private key. Used to decrypt assertions from the IdP
;private_key =
;# Path to the private key. Used to decrypt assertions from the IdP
;private_key_path =
# Base64-encoded IdP SAML metadata XML. Used to verify and obtain binding locations from the IdP
;idp_metadata =
# Path to the SAML metadata XML. Used to verify and obtain binding locations from the IdP
;idp_metadata_path =
# URL to fetch SAML IdP metadata. Used to verify and obtain binding locations from the IdP
;idp_metadata_url =
# Duration, since the IdP issued a response and the SP is allowed to process it. Defaults to 90 seconds.
;max_issue_delay = 90s
# Duration, for how long the SP's metadata should be valid. Defaults to 48 hours.
;metadata_valid_duration = 48h
# Friendly name or name of the attribute within the SAML assertion to use as the user's name
;assertion_attribute_name = displayName
# Friendly name or name of the attribute within the SAML assertion to use as the user's login handle
;assertion_attribute_login = mail
# Friendly name or name of the attribute within the SAML assertion to use as the user's email
;assertion_attribute_email = mail
#################################### Basic Auth ##########################
[auth.basic]
;enabled = true
@@ -477,6 +460,8 @@
;from_name = Grafana
# EHLO identity in SMTP dialog (defaults to instance_name)
;ehlo_identity = dashboard.example.com
# SMTP startTLS policy (defaults to 'OpportunisticStartTLS')
;startTLS_policy = NoStartTLS
[emails]
;welcome_email_on_sign_up = false
@@ -696,6 +681,9 @@
;server_url =
# If the remote HTTP image renderer service runs on a different server than the Grafana server you may have to configure this to a URL where Grafana is reachable, e.g. http://grafana.domain/.
;callback_url =
# Concurrent render request limit affects when the /render HTTP endpoint is used. Rendering many images at the same time can overload the server,
# which this setting can help protect against by only allowing a certain amount of concurrent requests.
;concurrent_render_request_limit = 30
[panels]
# If set to true Grafana will allow script tags in text panels. Not recommended as it enable XSS vulnerabilities.
@@ -704,6 +692,68 @@
[plugins]
;enable_alpha = false
;app_tls_skip_verify_insecure = false
# Enter a comma-separated list of plugin identifiers to identify plugins that are allowed to be loaded even if they lack a valid signature.
;allow_loading_unsigned_plugins =
#################################### Grafana Image Renderer Plugin ##########################
[plugin.grafana-image-renderer]
# Instruct headless browser instance to use a default timezone when not provided by Grafana, e.g. when rendering panel image of alert.
# See ICUs metaZones.txt (https://cs.chromium.org/chromium/src/third_party/icu/source/data/misc/metaZones.txt) for a list of supported
# timezone IDs. Fallbacks to TZ environment variable if not set.
;rendering_timezone =
# Instruct headless browser instance to use a default language when not provided by Grafana, e.g. when rendering panel image of alert.
# Please refer to the HTTP header Accept-Language to understand how to format this value, e.g. 'fr-CH, fr;q=0.9, en;q=0.8, de;q=0.7, *;q=0.5'.
;rendering_language =
# Instruct headless browser instance to use a default device scale factor when not provided by Grafana, e.g. when rendering panel image of alert.
# Default is 1. Using a higher value will produce more detailed images (higher DPI), but will require more disk space to store an image.
;rendering_viewport_device_scale_factor =
# Instruct headless browser instance whether to ignore HTTPS errors during navigation. Per default HTTPS errors are not ignored. Due to
# the security risk it's not recommended to ignore HTTPS errors.
;rendering_ignore_https_errors =
# Instruct headless browser instance whether to capture and log verbose information when rendering an image. Default is false and will
# only capture and log error messages. When enabled, debug messages are captured and logged as well.
# For the verbose information to be included in the Grafana server log you have to adjust the rendering log level to debug, configure
# [log].filter = rendering:debug.
;rendering_verbose_logging =
# Instruct headless browser instance whether to output its debug and error messages into running process of remote rendering service.
# Default is false. This can be useful to enable (true) when troubleshooting.
;rendering_dumpio =
# Additional arguments to pass to the headless browser instance. Default is --no-sandbox. The list of Chromium flags can be found
# here (https://peter.sh/experiments/chromium-command-line-switches/). Multiple arguments is separated with comma-character.
;rendering_args =
# You can configure the plugin to use a different browser binary instead of the pre-packaged version of Chromium.
# Please note that this is not recommended, since you may encounter problems if the installed version of Chrome/Chromium is not
# compatible with the plugin.
;rendering_chrome_bin =
# Instruct how headless browser instances are created. Default is 'default' and will create a new browser instance on each request.
# Mode 'clustered' will make sure that only a maximum of browsers/incognito pages can execute concurrently.
# Mode 'reusable' will have one browser instance and will create a new incognito page on each request.
;rendering_mode =
# When rendering_mode = clustered you can instruct how many browsers or incognito pages can execute concurrently. Default is 'browser'
# and will cluster using browser instances.
# Mode 'context' will cluster using incognito pages.
;rendering_clustering_mode =
# When rendering_mode = clustered you can define maximum number of browser instances/incognito pages that can execute concurrently..
;rendering_clustering_max_concurrency =
# Limit the maximum viewport width, height and device scale factor that can be requested.
;rendering_viewport_max_width =
;rendering_viewport_max_height =
;rendering_viewport_max_device_scale_factor =
# Change the listening host and port of the gRPC server. Default host is 127.0.0.1 and default port is 0 and will automatically assign
# a port not in use.
;grpc_host =
;grpc_port =
[enterprise]
# Path to a valid Grafana Enterprise license.jwt file

View File

@@ -4,7 +4,6 @@ This guide helps you get started developing Grafana.
Before you begin, you might want to read [How to contribute to Grafana as a junior dev](https://medium.com/@ivanahuckova/how-to-contribute-to-grafana-as-junior-dev-c01fe3064502) by [Ivana Huckova](https://medium.com/@ivanahuckova).
## Dependencies
Make sure you have the following dependencies installed before setting up your developer environment:
@@ -21,7 +20,7 @@ We recommend using [Homebrew](https://brew.sh/) for installing any missing depen
```
brew install git
brew install go
brew install node
brew install node@12
npm install -g yarn
```
@@ -52,7 +51,7 @@ After the command has finished, we can start building our source code:
yarn start
```
Once `yarn start` has built the assets, it will continue to do so whenever any of the files change. This means you don't have to manually build the assets whenever every time you change the code.
Once `yarn start` has built the assets, it will continue to do so whenever any of the files change. This means you don't have to manually build the assets every time you change the code.
Next, we'll build the web server that will serve the frontend assets we just built.
@@ -98,29 +97,35 @@ go test -v ./pkg/...
### Run end-to-end tests
The end to end tests in Grafana use [Cypress](https://www.cypress.io/) to run automated scripts in a headless Chromium browser. Read more about our [e2e framework](/contribute/style-guides/e2e.md).
The end to end tests in Grafana use [Cypress](https://www.cypress.io/) to run automated scripts in a headless Chromium browser. Read more about our [e2e framework](/contribute/style-guides/e2e.md).
To run the tests:
```
yarn e2e-tests
yarn e2e
```
By default, the end-to-end tests assumes Grafana is available on `localhost:3000`. To use a specific URL, set the `BASE_URL` environment variable:
By default, the end-to-end tests starts a Grafana instance listening on `localhost:3001`. To use a specific URL, set the `BASE_URL` environment variable:
```
BASE_URL=http://localhost:3333 yarn e2e-tests
BASE_URL=http://localhost:3333 yarn e2e
```
To follow the tests in the browser while they're running, use the `yarn e2e-tests:debug` instead.
To follow the tests in the browser while they're running, use the `yarn e2e:debug`.
```
yarn e2e-tests:debug
yarn e2e:debug
```
If you want to pick a test first, use the `yarn e2e:dev`, to pick a test and follow the test in the browser while it runs.
```
yarn e2e:dev
```
## Configure Grafana for development
The default configuration, `grafana.ini`, is located in the `conf` directory.
The default configuration, `grafana.ini`, is located in the `conf` directory.
To override the default configuration, create a `custom.ini` file in the `conf` directory. You only need to add the options you wish to override.
@@ -130,7 +135,6 @@ Enable the development mode, by adding the following line in your `custom.ini`:
app_mode = development
```
### Add data sources
By now, you should be able to build and test a change you've made to the Grafana source code. In most cases, you need to add at least one data source to verify the change.
@@ -172,7 +176,7 @@ The resulting image will be tagged as grafana/grafana:dev.
1. Build the frontend: `go run build.go build-frontend`.
1. Build the Docker image: `make build-docker-dev`.
**Note:** If you are using Docker for macOS, be sure to set the memory limit to be larger than 2 GiB. Otherwise `grunt build` may fail. The memory limit settings are available under **Docker Desktop** -> **Preferences** -> **Advanced**.
**Note:** If you are using Docker for macOS, be sure to set the memory limit to be larger than 2 GiB. Otherwise, `grunt build` may fail. The memory limit settings are available under **Docker Desktop** -> **Preferences** -> **Advanced**.
## Troubleshooting
@@ -180,7 +184,7 @@ Are you having issues with setting up your environment? Here are some tips that
### Too many open files when running `make run`
Depending on your environment, you may have to increase the maximum number of open files allowed.
Depending on your environment, you may have to increase the maximum number of open files allowed. For the rest of this section, we will assume you are on a Unix like OS (e.g. Linux/MacOS), where you can control the maximum number of open files through the [ulimit](https://ss64.com/bash/ulimit.html) shell command.
To see how many open files are allowed, run:
@@ -200,7 +204,28 @@ The number of files needed may be different on your environment. To determine th
find ./conf ./pkg ./public/views | wc -l
```
Another alternative is to limit the files being watched. The directories that are watched for changes are listed in the `.bra.toml` file in the root directory.
Another alternative is to limit the files being watched. The directories that are watched for changes are listed in the `.bra.toml` file in the root directory.
To retain your `ulimit` configuration, i.e. so it will be remembered for future sessions, you need to commit it to your command line shell initialization file. Which file this will be depends on the shell you are using, here are some examples:
* zsh -> ~/.zshrc
* bash -> ~/.bashrc
Commit your ulimit configuration to your shell initialization file as follows ($LIMIT being your chosen limit and $INIT_FILE being the initialization file for your shell):
```
echo ulimit -S -n $LIMIT >> $INIT_FILE
```
Your command shell should read the initialization file in question every time it gets started, and apply your `ulimit` command.
For some people, typically using the bash shell, ulimit fails with an error similar to the following:
```
ulimit: open files: cannot modify limit: Operation not permitted
```
If that happens to you, chances are you've already set a lower limit and your shell won't let you set a higher one. Try looking in your shell initialization files (~/.bashrc typically), if there's already a ulimit command that you can tweak.
## Next steps

View File

@@ -25,7 +25,7 @@ All `exported` apis from the package should have a release tag to indicate its s
- [`@alpha`](https://api-extractor.com/pages/tsdoc/tag_alpha/) - early draft of api and will probably change.
- [`@beta`](https://api-extractor.com/pages/tsdoc/tag_beta/) - close to being stable but might change.
- [`@public`](https://api-extractor.com/pages/tsdoc/tag_public/) - ready for useage in production.
- [`@public`](https://api-extractor.com/pages/tsdoc/tag_public/) - ready for usage in production.
- [`@internal`](https://api-extractor.com/pages/tsdoc/tag_internal/) - for internal use only.
### Main stability of APIs
@@ -139,7 +139,7 @@ This attribute can be skipped if the type provided by `typescript` and the funct
```typescript
/**
* Will help to create a resource resovler depending
* Will help to create a resource resolver depending
* on the current execution context.
*
* @param context - The current execution context.
@@ -179,7 +179,7 @@ This attribute can be skipped if the type provided by `typescript` and the funct
```typescript
/**
* Will help to create a resource resovler depending
* Will help to create a resource resolver depending
* on the current execution context.
*
* @param context - The current execution context.
@@ -206,4 +206,4 @@ export const factory = (context: Context): IResolver => {
export const isEqual = (x: number, y: number): boolean => {
return x === y;
}
```
```

View File

@@ -4,6 +4,8 @@ This style guide applies to all documentation created for Grafana products.
For information about how to write technical documentation, we suggest reviewing the content of the [Google Technical Writing courses](https://developers.google.com/tech-writing).
The [Divio documentation system](https://documentation.divio.com/) site is also a good resource.
## Contributing
The *Documentation style guide* is a living document. Add to it whenever a style decision is made or a question is answered regarding style, grammar, or word choice.
@@ -16,6 +18,32 @@ For all items not covered in this guide, refer to the [Microsoft Style Guide](ht
The [codespell](https://github.com/codespell-project/codespell) tool is run for every change to catch common misspellings.
## Inclusive language
This section provides guidelines on how to avoid using charged language in documentation.
### Allowing and blocking
Don't use "whitelist" or "blacklist" when referring to allowing or blocking content or traffic.
* When used as a noun, use "allowlist" or "blocklist".
* When used as a verb, use "allow" or "block"
Example: _To **allow** outgoing traffic, add the IP to the **allowlist**._
### Leader and follower
Don't use "master" or "slave" to describe relationships between nodes or processes.
* Use "leader", "main" or "primary," instead of "master."
* Use "follower" or "secondary," instead of "slave."
### Exceptions
When referring to a configuration or settings used by third-party libraries och technologies outside the Grafana project, prefer the original name to avoid confusion.
For example, use "master" when referring to the default Git branch.
## Grafana-specific style
The following sections provide general guidelines on topics specific to Grafana documentation. Note that for the most part, these are *guidelines*, not rigid rules. If you have questions, ask in the #docs channel of Grafana Slack.
@@ -29,8 +57,9 @@ The following sections provide general guidelines on topics specific to Grafana
* Write in present tense.
- Not: The panel will open.
- Use: The panel opens. Grafana opens the panel.
* Do not use an ampersand (&) as an abbreviation for "and."
* Do not use an ampersand (&) as an abbreviation for "and."
- **Exceptions:** If an ampersand is used in the Grafana UI, then match the UI.
* Avoid using internal slang and jargon in technical documentation.
### File naming conventions
@@ -110,7 +139,7 @@ Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
### Word usage
Grafana products has some words, abbreviations, and slang particular to this discourse community.
Grafana products has some words, abbreviations, and terms particular to the Grafana discourse community.
#### checkout, check out
@@ -139,13 +168,21 @@ Two words, not one
* Correct, but passive voice: Your list of active alarms is displayed.
* Incorrect: The list of active alarms displays.
#### drawer
Do not use. This is developer jargon that refers to a UI panel. Refer to the panel or feature by its proper name.
#### intro, introduction
"Introduction" is the preferred word. Use "intro" if there are space constraints (like on the side menu) or you are specifically trying for a less formal, more conversational tone.
#### metadata
One word, not two.
#### open source, open-source
Do not hyphenate when used as an adjective unless the lack of hyphen would cause confusion. For example: _Open source software design is the most open open-source system I can imagine._
Do not hyphenate when used as an adjective unless the lack of hyphen would cause confusion. For example: _Open source software design is the most open open-source system I can imagine._
Do not hyphenate when it is used as a noun. For example: _Open source is the best way to develop software._

View File

@@ -1,19 +1,51 @@
# End to end test framework
Grafana Labs uses a minimal home grown solution built on top of Cypress for our end to end (e2e) tests.
## Commands
- `yarn e2e` Creates an isolated grafana-server home under `<repo-root>/e2e/tmp` with provisioned data sources and dashboards. This
copies locally build binary and frontend assets from your repo root so you need to have a built backend and frontend
for this to run locally. The server starts on port 3001 so it does not conflict with your normal dev server.
- `yarn e2e:debug` Same as above but runs the tests in chrome and does not shutdown after completion.
- `yarn e2e:dev` Same as above but does not run any tests on startup. It lets you pick a test first.
If you already have a Grafana instance running, you can provide a specific URL by setting the `BASE_URL` environment variable:
```
BASE_URL=http://172.0.10.2:3333 yarn e2e
```
The above commands use some utils scripts under `<repo-root>/e2e` that can also be used for more control.
- `./e2e/start-server` This creates a fresh new grafana server working dir, setup's config and starts the server. It
will also kill any previously started server that is still running using pid file at `<repo-root>/e2e/tmp/pid`.
- `./e2e/wait-for-grafana` waits for `$HOST` and `$PORT` to be available. Per default localhost and 3001.
- `./e2e/run-suite <debug|dev|noarg>` Starts cypress in different modes.
## Test Suites
All the integration tests are located at `e2e/suite<x>/specs`. The page objects and reusable flows are in the
`packages/grafana-e2e` package.
## Basic concepts
Here is a good introduction to e2e best practices: https://martinfowler.com/bliki/PageObject.html.
- `Selector`: A unique identifier that is used from the e2e framework to retrieve an element from the Browser
- `Page`: An abstraction for an object that contains one or more `Selectors`
- `Page`: An abstraction for an object that contains one or more `Selectors` with `visit` function to navigate to the page.
- `Component`: An abstraction for an object that contains one or more `Selectors` but without `visit` function
- `Flow`: An abstraction that contains a sequence of actions on one or more `Pages` that can be reused and shared between tests
## Basic example
Let's start with a simple example with a single selector. For simplicity, all examples are in JSX.
In our example app, we have an input that we want to type some text into during our e2e test.
```jsx harmony
<div>
<input type="text" className="gf-form-input login-form-input"/>
<input type="text" className="gf-form-input login-form-input" />
</div>
```
@@ -21,25 +53,26 @@ We could define a selector using `JQuery` [type selectors](https://api.jquery.co
At Grafana, we use `aria-label` as our preferred way of defining selectors instead of `data-*` attributes. This also aids in accessibility.
Let's add a descriptive `aria-label` to our simple example.
```jsx harmony
<div>
<input type="text" className="gf-form-input login-form-input" aria-label="Username input field"/>
<input type="text" className="gf-form-input login-form-input" aria-label="Username input field" />
</div>
```
Now that we added the `aria-label` we suddenly get more information about this particular field. It's an input field that represents a username, but there it's still not really signaling that it's part of an e2e test.
The next step is to create a `Page` representation in our e2e test framework to glue the test with the real implementation using the `pageFactory` function. For that function we can supply a `url` and `selectors` like in the example below:
```typescript
export const Login = pageFactory({
url: '/login', // used when called from Login.visit()
selectors: {
username: 'Username input field', // used when called from Login.username().type('Hello World')
},
});
export const Login = {
url: "/login", // used when called from Login.visit()
username: "Username input field", // used when called from Login.username().type('Hello World')
};
```
The next step is to add the `Login` page to the exported const `Pages` in `packages/grafana-e2e/src/pages/index.ts` so that it appears when we type `e2e.pages` in our IDE.
The next step is to add the `Login` page to the exported const `Pages` in `packages/grafana-e2e-selectors/src/selectors/pages.ts` so that it appears when we type `e2e.pages` in our IDE.
```ecmascript 6
export const Pages = {
Login,
@@ -49,17 +82,21 @@ export const Pages = {
};
```
Now that we have a `Page` called `Login` in our `Pages` const we can use that to add a selector in our html like shown below and now this really signals to future developers that it is part of an e2e test.
```jsx harmony
<div>
<input type="text" className="gf-form-input login-form-input" aria-label={e2e.pages.Login.selectors.username}/>
<input type="text" className="gf-form-input login-form-input" aria-label={selectors.pages.Login.username} />
</div>
```
The last step in our example is to use our `Login` page as part of a test. The `pageFactory` function we used before gives us two things:
The last step in our example is to use our `Login` page as part of a test.
- The `url` property is used whenever we call the `visit` function and is equivalent to the Cypress function [cy.visit()](https://docs.cypress.io/api/commands/visit.html#Syntax).
> Best practice after calling `visit` is to always call `should` on a selector to prevent flaky tests when you try to access an element that isn't ready. For more information, refer to [Commands vs. assertions](https://docs.cypress.io/guides/core-concepts/retry-ability.html#Commands-vs-assertions).
- Any defined selector in the `selectors` property can be accessed from the `Login` page by invoking it. This is equivalent to the result of the Cypress function [cy.get(...)](https://docs.cypress.io/api/commands/get.html#Syntax).
> Best practice after calling `visit` is to always call `should` on a selector to prevent flaky tests when you try to access an element that isn't ready. For more information, refer to [Commands vs. assertions](https://docs.cypress.io/guides/core-concepts/retry-ability.html#Commands-vs-assertions).
- Any defined selector can be accessed from the `Login` page by invoking it. This is equivalent to the result of the Cypress function [cy.get(...)](https://docs.cypress.io/api/commands/get.html#Syntax).
```ecmascript 6
describe('Login test', () => {
it('Should pass', () => {
@@ -73,6 +110,7 @@ describe('Login test', () => {
```
## Advanced example
Let's take a look at an example that uses the same `selector` for multiple items in a list for instance. In this example app we have a list of data sources that we want to click on during an e2e test.
```jsx harmony
@@ -80,36 +118,35 @@ Let's take a look at an example that uses the same `selector` for multiple items
{dataSources.map(dataSource => (
<li className="card-item-wrapper" key={dataSource.id}>
<a className="card-item" href={`datasources/edit/${dataSource.id}`}>
<div className="card-item-name">
{dataSource.name}
</div>
<div className="card-item-name">{dataSource.name}</div>
</a>
</li>
))}
</ul>
```
```
````
Just as before in the basic example we'll start by creating a page abstraction using the `pageFactory` function:
```typescript
export const DataSources = pageFactory({
export const DataSources = {
url: '/datasources',
selectors: {
dataSources: (dataSourceName: string) => `Data source list item ${dataSourceName}`,
},
});
```
dataSources: (dataSourceName: string) => `Data source list item ${dataSourceName}`,
};
````
You might have noticed that instead of a simple `string` as the `selector`, we're using a `function` that takes a string parameter as an argument and returns a formatted string using the argument.
Just as before we need to add the `DataSources` page to the exported const `Pages` in `packages/grafana-e2e/src/pages/index.ts`.
Just as before we need to add the `DataSources` page to the exported const `Pages` in `packages/grafana-e2e-selectors/src/selectors/pages.ts`.
The next step is to use the `dataSources` selector function as in our example below:
```jsx harmony
<ul>
{dataSources.map(dataSource => (
<li className="card-item-wrapper" key={dataSource.id}>
<a className="card-item" href={`datasources/edit/${dataSource.id}`}>
<div className="card-item-name" aria-label={e2e.pages.DataSources.selectors.dataSources(dataSource.name)}>
<div className="card-item-name" aria-label={selectors.pages.DataSources.dataSources(dataSource.name)}>
{dataSource.name}
</div>
</a>
@@ -119,6 +156,7 @@ The next step is to use the `dataSources` selector function as in our example be
```
When this list is rendered with the data sources with names `A`, `B`, `C` the resulting html would become:
```jsx harmony
<div class="card-item-name" aria-label="Data source list item A">
A
@@ -134,7 +172,9 @@ When this list is rendered with the data sources with names `A`, `B`, `C` the re
```
Now we can write our test. The one thing that differs from the `Basic example` is that we pass in which data source we want to click on as an argument to the selector function:
> Best practice after calling `visit` is to always call `should` on a selector to prevent flaky tests when you try to access an element that isn't ready. For more information, refer to [Commands vs. assertions](https://docs.cypress.io/guides/core-concepts/retry-ability.html#Commands-vs-assertions).
```ecmascript 6
describe('List test', () => {
it('Clicking on data source named B', () => {
@@ -147,17 +187,18 @@ describe('List test', () => {
});
```
## Debugging PhantomJS image rendering
### Common Error
The most common error with PhantomJs image rendering is when a PR introduces an import that has functionality that's not supported by PhantomJs. To quickly identify which new import causes this you can use a tool like `es-check`.
1. Run > `npx es-check es5 './public/build/*.js'`
2. Check the output for files that break es5 compatibility.
3. Lazy load the failing imports if possible.
3. Lazy load the failing imports if possible.
### Debugging
There is no easy or comprehensive way to debug PhantomJS smoke test (image rendering) failures. However, PhantomJS exposes remote debugging interface which can give you a sense of what is going wrong in the smoke test. Before performing the steps described below make sure your local Grafana instance is running:
1. Go to `tools/phantomjs` directory

View File

@@ -8,13 +8,15 @@ Generally we follow the Airbnb [React Style Guide](https://github.com/airbnb/jav
- [Table of Contents](#table-of-contents)
- [Basic rules](#basic-rules)
- [Naming conventions](#naming-conventions)
- [Files and directories naming conventions](#files-and-directories-naming-conventions)
- [File and directory naming conventions](#file-and-directory-naming-conventions)
- [Code organization](#code-organization)
- [Exports](#exports)
- [Comments](#comments)
- [React](#react)
- [Props](#props)
- [State management](#state-management)
- [Proposal for removing or replacing Angular dependencies](https://github.com/grafana/grafana/pull/23048)
## Basic rules
@@ -107,7 +109,7 @@ class DateCalculator {
}
class DateCalculator {
// bad
calculate_timee_range () {...}
calculate_time_range () {...}
}
class DateCalculator {
@@ -147,7 +149,7 @@ interface ModalState {
```typescript
const getStyles = = () => ({
// bad
ElementWraper: css`...`,
ElementWrapper: css`...`,
// bad
["element-wrapper"]: css`...`,
@@ -172,6 +174,44 @@ const CONSTANT_VALUE = "This string won't change";
_SASS styles are deprecated. Please migrate to Emotion whenever you need to modify SASS styles._
### Typing
In general, you should let Typescript infer the types so that there's no need to explicitly define type for each variable.
There are some exceptions to this:
```typescript
// Typescript needs to know type of arrays or objects otherwise it would infer it as array of any
// bad
const stringArray = [];
// good
const stringArray: string[] = [];
```
Specify function return types explicitly in new code. This improves readability by being able to tell what a function returns just by looking at the signature. It also prevents errors when a function's return type is broader than expected by the author.
> Note: We don't have linting for this enabled because of lots of old code that needs to be fixed first.
```typescript
// bad
function transform(value?: string) {
if (!value) {
return undefined
}
return applyTransform(value)
};
// good
function transform(value?: string): TransformedValue | undefined {
if (!value) {
return undefined
}
return applyTransform(value)
};
```
### File and directory naming conventions
Name files according to the primary export:
@@ -286,6 +326,6 @@ static defaultProps: Partial<Props> = { ... }
## State management
- Don't mutate state in reducers or thunks.
- Use helpers `actionCreatorFactory` and `reducerFactory` instead of traditional `switch statement` reducers in Redux. See [Redux framework](redux.md) for more details.
- Use `createSlice`. See [Redux Toolkit](https://redux-toolkit.js.org/) for more details.
- Use `reducerTester` to test reducers. See [Redux framework](redux.md) for more details.
- Use state selectors to access state instead of accessing state directly.

View File

@@ -10,7 +10,7 @@ Storybook is:
## How to create stories
Stories for a component should be placed next to the component file. The Storybook file requires the same name as the component file. For example, a story for `SomeComponent.tsx` will have the file name `SomeComponent.story.tsx`.
Stories for a component should be placed next to the component file. The Storybook file requires the same name as the component file. For example, a story for `SomeComponent.tsx` will have the file name `SomeComponent.story.tsx`. If a story should be internal, not visible in production, name the file `SomeComponent.story.internal.tsx`.
### Writing stories
@@ -101,7 +101,10 @@ import { MyComponent } from "./MyComponent";
### MDX file without a relationship to a component
An MDX file can exist by itself without any connection to a story. This can be good for writing things such as a general guidelines page. Something that is required when the MDX file has no relation to a component is a `Meta` tag that says where in the hierarchy the component will live. It can look like this:
An MDX file can exist by itself without any connection to a story. This can be good for writing things such as a general guidelines page. Two things are required for this to work:
- The file needs to be named `*.story.mdx`
- A `Meta` tag must exist that says where in the hierarchy the component lives. It can look like this:
```jsx
<Meta title="Docs Overview/Color Palettes"/>

View File

@@ -23,6 +23,27 @@ const ComponentA = () => (
);
```
### Styling with theme
To access the theme in your styles, use the `useStyles` hook. It provides basic memoization and access to the theme object.
```tsx
import React, { FC } from 'react';
import { GrafanaTheme } from '@grafana/data';
import { useStyles } from '@grafana/ui';
import { css } from 'emotion';
const getComponentStyles = (theme: GrafanaTheme) => css`
padding: ${theme.spacing.md};
`;
const Foo: FC<FooProps> = () => {
const styles = useStyles(getComponentsStyles);
// Use styles with className
};
```
### Styling complex components
In more complex cases, especially when you need to style multiple DOM elements in one component, or when using styles that depend on properties and/or state, you should create a helper function that returns an object of styles. This function should also be wrapped in the `stylesFactory` helper function, which will provide basic memoization.
@@ -36,10 +57,7 @@ import { GrafanaTheme } from '@grafana/data';
import { selectThemeVariant, stylesFactory, useTheme } from '@grafana/ui';
const getStyles = stylesFactory((theme: GrafanaTheme) => {
const backgroundColor = selectThemeVariant(
{ light: theme.colors.red, dark: theme.colors.blue },
theme.type
);
const backgroundColor = selectThemeVariant({ light: theme.colors.red, dark: theme.colors.blue }, theme.type);
return {
wrapper: css`

View File

@@ -18,6 +18,40 @@ This section provides usage guidelines.
Here's how to use Grafana themes in React components.
#### useStyles hook
`useStyles` memoizes the function and provides access to the theme.
```tsx
import React, { FC } from 'react';
import { GrafanaTheme } from '@grafana/data';
import { useStyles } from '@grafana/ui';
import { css } from 'emotion';
const getComponentStyles = (theme: GrafanaTheme) => css`
padding: ${theme.spacing.md};
`;
const Foo: FC<FooProps> = () => {
const styles = useStyles(getComponentsStyles);
// Use styles with className
};
```
#### Get the theme object
```tsx
import React, { FC } from 'react';
import { useTheme } from '@grafana/ui';
const Foo: FC<FooProps> = () => {
const theme = useTheme();
// Your component has access to the theme variables now
};
```
#### Using `ThemeContext` directly
```tsx
@@ -26,19 +60,6 @@ import { ThemeContext } from '@grafana/ui';
<ThemeContext.Consumer>{theme => <Foo theme={theme} />}</ThemeContext.Consumer>;
```
or
```tsx
import React, { useContext } from 'react';
import { ThemeContext } from '@grafana/ui';
const Foo: React.FunctionComponent<FooProps> = () => {
const theme = useContext(ThemeContext);
// Your component has access to the theme variables now
}
```
#### Using `withTheme` higher-order component (HOC)
With this method your component will be automatically wrapped in `ThemeContext.Consumer` and provided with current theme via `theme` prop. Components used with `withTheme` must implement the `Themeable` interface.
@@ -76,69 +97,38 @@ describe('MyComponent', () => {
restoreThemeContext();
});
it('renders correctyl', () => {
it('renders correctly', () => {
const wrapper = mount(<MyComponent />)
expect(wrapper).toMatchSnapshot();
});
});
```
### Using themes in [Storybook](https://storybook.js.org/)
All stories are wrapped with `ThemeContext.Provider` using a global decorator. To render a `Themeable` component that isn't wrapped by a `withTheme` HOC, either create a new component in your story, or use the `renderComponentWithTheme` helper.
#### Create a new component:
```tsx
// Foo.story.tsx
const FooWithTheme = withTheme(Foo);
FooStories.add('Story' () => {
return <FooWithTheme />
});
```
#### Use `renderComponentWithTheme` helper:
```tsx
// Bar.story.tsx
BarStories.add('Story' () => {
return renderComponentWithTheme(Bar, /* pass props here */)
});
```
### Using themes in Angular code
There should be very few cases where a theme would be used in an Angular context. For this purpose, there is a function available that retrieves the current theme:
```ts
import { getCurrentTheme } from app/core/utils/ConfigProvider
```
Angular components should be migrated to React, or if that's not possible at the moment, styled using Sass.
## FAQ
This section provides insight into frequently-asked questions.
### How can I modify Sass variable files?
**If possible, migrate styles to Emotion**
> For the following to apply you need to run `yarn dev` task.
`[_variables|_variables.dark|_variables.light].generated.scss` files are the ones that are referenced in the main Sass files for Sass variables to be available. **These files are automatically generated and should never be modified by hand!**
#### If you need to modify a *Sass variable value* you need to modify the corresponding Typescript file that is the source of the variables:
#### If you need to modify a _Sass variable value_ you need to modify the corresponding Typescript file that is the source of the variables:
- `_variables.generated.scss` - modify `grafana-ui/src/themes/default.ts`
- `_variables.light.generated.scss` - modify `grafana-ui/src/themes/light.ts`
- `_variables.dark.generated.scss` - modify `grafana-ui/src/themes/dark.ts`
#### If you need to *add new variable* to Sass variables you need to modify corresponding template file:
#### If you need to _add new variable_ to Sass variables you need to modify corresponding template file:
- `_variables.generated.scss` - modify `grafana-ui/src/themes/_variables.scss.tmpl.ts`
- `_variables.light.generated.scss` - modify `grafana-ui/src/themes/_variables.light.scss.tmpl.ts`
- `_variables.dark.generated.scss` - modify `grafana-ui/src/themes/_variables.dark.scss.tmpl.ts`
## Limitations
This section describes limitations with Grafana's theming system.

View File

@@ -23,7 +23,7 @@ Try to *chunk* your content. This means you should organize the document so that
### Chunking example
If I was writing a topic called *Doggie handbook*, I might organize it like this.
If I was writing content for a site called *Doggie handbook*, I might organize it like this.
**Concept**
* What a dog is

View File

@@ -26,7 +26,7 @@ In the case of a long task, then you probably won't need any headings except for
1. Use second-person imperative tense.
1. Basically, "You, do this" with every sentence.
1. Do not use the third-person "user" for steps you want the reader ("you") to perform.
1. Write steps that contain one action, possibly two related actions, such as copy and paste a thing or save and quite the program.
1. Write steps that contain one action, possibly two related actions, such as copy and paste a thing or save and quit the program.
If a sentence is not telling the reader to do something, then it is not a step. You can use nested images or paragraphs like this one to add information if necessary.
In many cases, you should tell the reader what the outcome should be so that they know when they are done.

View File

@@ -36,5 +36,14 @@ make devenv sources=influxdb,prometheus2,elastic5
Some of the blocks support dynamic change of the image version used in the Docker file. The signature looks like this:
```bash
make devenv sources=postgres,openldap postgres_version=9.2
make devenv sources=postgres,openldap,grafana postgres_version=9.2 grafana_version=6.7.0-beta1
```
### Notes per block
#### Grafana
The grafana block is pre-configured with the dev-datasources and dashboards.
#### Jaeger
Jaeger block runs both Jaeger and Loki container. Loki container sends traces to Jaeger and also logs its own logs into itself so it is possible to setup derived field for traceID from Loki to Jaeger. You need to install a docker plugin for the self logging to work, without it the container won't start. See https://github.com/grafana/loki/tree/master/cmd/docker-driver#plugin-installation for installation instructions.

View File

@@ -1,168 +0,0 @@
{
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": null,
"links": [],
"panels": [
{
"alert": {
"conditions": [
{
"evaluator": {
"params": [
65
],
"type": "gt"
},
"operator": {
"type": "and"
},
"query": {
"params": [
"A",
"5m",
"now"
]
},
"reducer": {
"params": [],
"type": "avg"
},
"type": "query"
}
],
"executionErrorState": "alerting",
"frequency": "10s",
"handler": 1,
"name": "bulk alerting",
"noDataState": "no_data",
"notifications": []
},
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "gdev-prometheus",
"fill": 1,
"gridPos": {
"h": 9,
"w": 12,
"x": 0,
"y": 0
},
"id": 2,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"$$hashKey": "object:117",
"expr": "go_goroutines",
"format": "time_series",
"intervalFactor": 1,
"refId": "A"
}
],
"thresholds": [
{
"colorMode": "critical",
"fill": true,
"line": true,
"op": "gt",
"value": 50
}
],
"timeFrom": null,
"timeShift": null,
"title": "Panel Title",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
]
}
],
"schemaVersion": 16,
"style": "dark",
"tags": [],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"5s",
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
],
"time_options": [
"5m",
"15m",
"1h",
"6h",
"12h",
"24h",
"2d",
"7d",
"30d"
]
},
"timezone": "",
"title": "New dashboard",
"uid": null,
"version": 0
}

View File

@@ -0,0 +1,170 @@
{
alertingDashboard(dashboardCounter, datasourceCounter):: {
title: "alerting-title-" + dashboardCounter,
editable: true,
gnetId: null,
graphTooltip: 0,
id: null,
links: [],
panels: [
{
alert: {
conditions: [
{
evaluator: {
params: [
65
],
type: "gt"
},
operator: {
type: "and"
},
query: {
params: [
"A",
"5m",
"now"
]
},
reducer: {
params: [],
type: "avg"
},
type: "query"
}
],
executionErrorState: "alerting",
frequency: "24h",
handler: 1,
name: "bulk alerting " + dashboardCounter,
noDataState: "no_data",
notifications: []
},
aliasColors: {},
bars: false,
dashLength: 10,
dashes: false,
datasource: "gfdev-bulkalerting-" + datasourceCounter,
fill: 1,
gridPos: {
h: 9,
w: 12,
x: 0,
y: 0
},
id: 1,
legend: {
avg: false,
current: false,
max: false,
min: false,
show: true,
total: false,
values: false
},
lines: true,
linewidth: 1,
nullPointMode: "null",
percentage: false,
pointradius: 5,
points: false,
renderer: "flot",
seriesOverrides: [],
spaceLength: 10,
stack: false,
steppedLine: false,
targets: [
{
expr: "go_goroutines",
format: "time_series",
intervalFactor: 1,
refId: "A"
}
],
thresholds: [
{
colorMode: "critical",
fill: true,
line: true,
op: "gt",
value: 50
}
],
timeFrom: null,
timeShift: null,
title: "Panel Title",
tooltip: {
shared: true,
sort: 0,
value_type: "individual"
},
type: "graph",
xaxis: {
buckets: null,
mode: "time",
name: null,
show: true,
values: []
},
yaxes: [
{
format: "short",
label: null,
logBase: 1,
max: null,
min: null,
show: true
},
{
format: "short",
label: null,
logBase: 1,
max: null,
min: null,
show: true
}
]
}
],
schemaVersion: 16,
style: "dark",
tags: [],
templating: {
list: []
},
time: {
from: "now-6h",
to: "now"
},
timepicker: {
refresh_intervals: [
"5s",
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
],
time_options: [
"5m",
"15m",
"1h",
"6h",
"12h",
"24h",
"2d",
"7d",
"30d"
]
},
timezone: "",
uid: null,
version: 0
},
}

View File

@@ -0,0 +1,14 @@
local arr = std.range(1, 100);
{
"apiVersion": 1,
"datasources": [
{
"name": 'gfdev-bulkalerting-' + counter,
"type": "prometheus",
"access": "proxy",
"url": "http://localhost:9090"
}
for counter in arr
],
}

View File

@@ -246,5 +246,29 @@ datasources:
access: proxy
url: http://localhost:3100
editable: false
jsonData:
derivedFields:
- name: "traceID"
matcherRegex: "traceID=(\\w+)"
url: "$${__value.raw}"
datasourceUid: gdev-jaeger
- name: "traceID"
matcherRegex: "traceID=(\\w+)"
url: "$${__value.raw}"
datasourceUid: gdev-zipkin
- name: gdev-jaeger
type: jaeger
uid: gdev-jaeger
access: proxy
url: http://localhost:16686
editable: false
- name: gdev-zipkin
type: zipkin
uid: gdev-zipkin
access: proxy
url: http://localhost:9411
editable: false

View File

@@ -0,0 +1,248 @@
apiVersion: 1
datasources:
- name: gdev-graphite
type: graphite
access: proxy
url: http://graphite11:80
jsonData:
graphiteVersion: "1.1"
- name: gdev-prometheus
type: prometheus
access: proxy
url: http://prometheus:9090
- name: gdev-slow-prometheus
type: prometheus
access: proxy
url: http://prometheus:3011
- name: gdev-testdata
isDefault: true
type: testdata
- name: gdev-influxdb
type: influxdb
access: proxy
database: site
user: grafana
url: http://influxdb:8086
jsonData:
timeInterval: "15s"
secureJsonData:
password: grafana
- name: gdev-influxdb-telegraf
type: influxdb
access: proxy
database: telegraf
user: grafana
url: http://telegraf:8086
jsonData:
timeInterval: "10s"
secureJsonData:
password: grafana
- name: gdev-opentsdb
type: opentsdb
access: proxy
url: http://opentsdb:4242
jsonData:
tsdbResolution: 1
tsdbVersion: 1
- name: gdev-elasticsearch-v2-metrics
type: elasticsearch
access: proxy
database: "[metrics-]YYYY.MM.DD"
url: http://elasticsearch:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 2
- name: gdev-elasticsearch-v2-logs
type: elasticsearch
access: proxy
database: "[logs-]YYYY.MM.DD"
url: http://elasticsearch:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 2
- name: gdev-elasticsearch-v5-metrics
type: elasticsearch
access: proxy
database: "[metrics-]YYYY.MM.DD"
url: http://elasticsearch5:10200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 5
- name: gdev-elasticsearch-v5-logs
type: elasticsearch
access: proxy
database: "[logs-]YYYY.MM.DD"
url: http://elasticsearch5:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 5
- name: gdev-elasticsearch-v6-metrics
type: elasticsearch
access: proxy
database: "[metrics-]YYYY.MM.DD"
url: http://elasticsearch6:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 60
- name: gdev-elasticsearch-v6-logs
type: elasticsearch
access: proxy
database: "[logs-]YYYY.MM.DD"
url: http://elasticsearch6:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 60
- name: gdev-elasticsearch-v6-filebeat
type: elasticsearch
access: proxy
database: "[filebeat-]YYYY.MM.DD"
url: http://elasticsearch6:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 60
- name: gdev-elasticsearch-v7-metrics
type: elasticsearch
access: proxy
database: "[metrics-]YYYY.MM.DD"
url: http://elasticsearch7:9200
jsonData:
timeInterval: 10s
interval: Daily
timeField: "@timestamp"
esVersion: 70
- name: gdev-elasticsearch-v7-logs
type: elasticsearch
access: proxy
database: "[logs-]YYYY.MM.DD"
url: http://elasticsearch7:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 70
- name: gdev-elasticsearch-v7-filebeat
type: elasticsearch
access: proxy
database: "[filebeat-]YYYY.MM.DD"
url: http://elasticsearch7:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 70
timeInterval: "10s"
logMessageField: message
logLevelField: fields.level
- name: gdev-elasticsearch-v7-metricbeat
type: elasticsearch
access: proxy
database: "[metricbeat-]YYYY.MM.DD"
url: http://elasticsearch7:9200
jsonData:
interval: Daily
timeField: "@timestamp"
esVersion: 70
timeInterval: "10s"
- name: gdev-mysql
type: mysql
url: mysql:3306
database: grafana
user: grafana
secureJsonData:
password: password
- name: gdev-mysql-ds-tests
type: mysql
url: mysqltests:3306
database: grafana_ds_tests
user: grafana
secureJsonData:
password: password
- name: gdev-mssql
type: mssql
url: mssql:1433
database: grafana
user: grafana
secureJsonData:
password: Password!
- name: gdev-mssql-ds-tests
type: mssql
url: mssqltests:1433
database: grafanatest
user: grafana
secureJsonData:
password: Password!
- name: gdev-postgres
type: postgres
url: postgres:5432
database: grafana
user: grafana
secureJsonData:
password: password
jsonData:
sslmode: "disable"
- name: gdev-postgres-ds-tests
type: postgres
url: postgrestest:5432
database: grafanadstest
user: grafanatest
secureJsonData:
password: grafanatest
jsonData:
sslmode: "disable"
- name: gdev-cloudwatch
type: cloudwatch
editable: true
jsonData:
authType: credentials
defaultRegion: eu-west-2
# Keep to test old /api/prom API
- name: gdev-loki-0.3
type: loki
access: proxy
url: http://loki0.3:3100
editable: false
# First version with new v1 API (remove once v1 is out)
- name: gdev-loki-0.4
type: loki
access: proxy
url: http://loki0.4:3100
editable: false
- name: gdev-loki
type: loki
access: proxy
url: http://loki:3100
editable: false

View File

@@ -454,7 +454,7 @@
"yaxes": [
{
"format": "percent",
"label": "Perecent",
"label": "Percent",
"logBase": 1,
"max": null,
"min": null,
@@ -1632,10 +1632,7 @@
"revision": 8,
"schemaVersion": 16,
"style": "dark",
"tags": [
"gdev",
"panel-tests"
],
"tags": ["gdev", "panel-tests"],
"templating": {
"list": []
},
@@ -1644,29 +1641,8 @@
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"5s",
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
],
"time_options": [
"5m",
"15m",
"1h",
"6h",
"12h",
"24h",
"2d",
"7d",
"30d"
]
"refresh_intervals": ["5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d"],
"time_options": ["5m", "15m", "1h", "6h", "12h", "24h", "2d", "7d", "30d"]
},
"timezone": "browser",
"title": "Panel Tests - Graph",

View File

@@ -428,6 +428,14 @@
{
"text": "Bitcoin (฿)",
"value": "currencyBTC"
},
{
"text": "Milli Bitcoin (mBTC)",
"value": "currencymBTC"
},
{
"text": "Micro Bitcoin (μBTC)",
"value": "currencyμBTC"
}
],
"text": "currency"

View File

@@ -28,7 +28,7 @@
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"iteration": 1554310942895,
"iteration": 1591027568655,
"links": [
{
"asDropdown": true,
@@ -47,7 +47,14 @@
"datasource": "gdev-elasticsearch-v2-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 7,
@@ -55,6 +62,7 @@
"x": 0,
"y": 0
},
"hiddenSeries": false,
"id": 1,
"legend": {
"alignAsTable": true,
@@ -71,6 +79,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -170,7 +181,14 @@
"datasource": "gdev-elasticsearch-v2-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 6,
@@ -178,6 +196,7 @@
"x": 0,
"y": 7
},
"hiddenSeries": false,
"id": 2,
"legend": {
"alignAsTable": true,
@@ -194,6 +213,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -292,7 +314,14 @@
"datasource": "gdev-elasticsearch-v2-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 6,
@@ -300,6 +329,7 @@
"x": 12,
"y": 7
},
"hiddenSeries": false,
"id": 3,
"legend": {
"alignAsTable": true,
@@ -316,6 +346,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -427,6 +460,12 @@
"datasource": "gdev-elasticsearch-v2-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fontSize": "100%",
"gridPos": {
"h": 7,
@@ -445,11 +484,13 @@
},
"styles": [
{
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "@timestamp",
"type": "date"
},
{
"align": "auto",
"colorMode": null,
"colors": ["rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)"],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
@@ -505,7 +546,7 @@
],
"title": "ES Metrics",
"transform": "table",
"type": "table"
"type": "table-old"
},
{
"columns": [
@@ -529,6 +570,12 @@
"datasource": "gdev-elasticsearch-v2-logs",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fontSize": "100%",
"gridPos": {
"h": 7,
@@ -547,6 +594,7 @@
},
"styles": [
{
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "@timestamp",
"type": "date"
@@ -574,7 +622,7 @@
],
"title": "ES Log query",
"transform": "json",
"type": "table"
"type": "table-old"
},
{
"circleMaxSize": 30,
@@ -584,6 +632,12 @@
"decimals": 0,
"esGeoPoint": "@location",
"esMetric": "Average",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"gridPos": {
"h": 12,
"w": 24,
@@ -645,7 +699,7 @@
"valueName": "total"
}
],
"schemaVersion": 18,
"schemaVersion": 25,
"style": "dark",
"tags": ["elasticsearch", "gdev", "datasource-test"],
"templating": {
@@ -678,5 +732,5 @@
"timezone": "browser",
"title": "Datasource tests - Elasticsearch v2",
"uid": "RlqLq2fiz",
"version": 5
"version": 1
}

View File

@@ -28,7 +28,7 @@
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"iteration": 1554310560048,
"iteration": 1591027589702,
"links": [
{
"asDropdown": true,
@@ -47,7 +47,14 @@
"datasource": "gdev-elasticsearch-v5-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 7,
@@ -55,6 +62,7 @@
"x": 0,
"y": 0
},
"hiddenSeries": false,
"id": 1,
"legend": {
"alignAsTable": true,
@@ -71,6 +79,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -170,7 +181,14 @@
"datasource": "gdev-elasticsearch-v5-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 6,
@@ -178,6 +196,7 @@
"x": 0,
"y": 7
},
"hiddenSeries": false,
"id": 2,
"legend": {
"alignAsTable": true,
@@ -194,6 +213,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -292,7 +314,14 @@
"datasource": "gdev-elasticsearch-v5-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 6,
@@ -300,6 +329,7 @@
"x": 12,
"y": 7
},
"hiddenSeries": false,
"id": 3,
"legend": {
"alignAsTable": true,
@@ -316,6 +346,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -427,6 +460,12 @@
"datasource": "gdev-elasticsearch-v5-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fontSize": "100%",
"gridPos": {
"h": 7,
@@ -445,11 +484,13 @@
},
"styles": [
{
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "@timestamp",
"type": "date"
},
{
"align": "auto",
"colorMode": null,
"colors": ["rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)"],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
@@ -505,7 +546,7 @@
],
"title": "ES Metrics",
"transform": "table",
"type": "table"
"type": "table-old"
},
{
"columns": [
@@ -529,6 +570,12 @@
"datasource": "gdev-elasticsearch-v5-logs",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fontSize": "100%",
"gridPos": {
"h": 7,
@@ -547,6 +594,7 @@
},
"styles": [
{
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "@timestamp",
"type": "date"
@@ -574,7 +622,7 @@
],
"title": "ES Log query",
"transform": "json",
"type": "table"
"type": "table-old"
},
{
"circleMaxSize": 30,
@@ -585,6 +633,12 @@
"esGeoPoint": "@location",
"esLocationName": "",
"esMetric": "Average",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"gridPos": {
"h": 12,
"w": 24,
@@ -646,7 +700,7 @@
"valueName": "total"
}
],
"schemaVersion": 18,
"schemaVersion": 25,
"style": "dark",
"tags": ["elasticsearch", "gdev", "datasource-test"],
"templating": {
@@ -679,5 +733,5 @@
"timezone": "browser",
"title": "Datasource tests - Elasticsearch v5",
"uid": "8HjT32Bmz",
"version": 5
"version": 1
}

View File

@@ -28,7 +28,7 @@
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"iteration": 1554310839317,
"iteration": 1591027529668,
"links": [
{
"asDropdown": true,
@@ -47,7 +47,14 @@
"datasource": "gdev-elasticsearch-v6-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 7,
@@ -55,6 +62,7 @@
"x": 0,
"y": 0
},
"hiddenSeries": false,
"id": 1,
"legend": {
"alignAsTable": true,
@@ -71,6 +79,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -170,7 +181,14 @@
"datasource": "gdev-elasticsearch-v6-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 6,
@@ -178,6 +196,7 @@
"x": 0,
"y": 7
},
"hiddenSeries": false,
"id": 2,
"legend": {
"alignAsTable": true,
@@ -194,6 +213,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -292,7 +314,14 @@
"datasource": "gdev-elasticsearch-v6-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 6,
@@ -300,6 +329,7 @@
"x": 12,
"y": 7
},
"hiddenSeries": false,
"id": 3,
"legend": {
"alignAsTable": true,
@@ -316,6 +346,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -427,6 +460,12 @@
"datasource": "gdev-elasticsearch-v6-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fontSize": "100%",
"gridPos": {
"h": 7,
@@ -445,11 +484,13 @@
},
"styles": [
{
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "@timestamp",
"type": "date"
},
{
"align": "auto",
"colorMode": null,
"colors": ["rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)"],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
@@ -505,7 +546,7 @@
],
"title": "ES Metrics",
"transform": "table",
"type": "table"
"type": "table-old"
},
{
"columns": [
@@ -529,6 +570,12 @@
"datasource": "gdev-elasticsearch-v6-logs",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fontSize": "100%",
"gridPos": {
"h": 7,
@@ -547,6 +594,7 @@
},
"styles": [
{
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "@timestamp",
"type": "date"
@@ -574,7 +622,7 @@
],
"title": "ES Log query",
"transform": "json",
"type": "table"
"type": "table-old"
},
{
"circleMaxSize": 30,
@@ -584,6 +632,12 @@
"decimals": 0,
"esGeoPoint": "@location",
"esMetric": "Average",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"gridPos": {
"h": 12,
"w": 24,
@@ -645,7 +699,8 @@
"valueName": "total"
}
],
"schemaVersion": 18,
"refresh": false,
"schemaVersion": 25,
"style": "dark",
"tags": ["elasticsearch", "gdev", "datasource-test"],
"templating": {
@@ -662,7 +717,7 @@
]
},
"time": {
"from": "now-30m",
"from": "now-1h",
"to": "now"
},
"timepicker": {
@@ -678,5 +733,5 @@
"timezone": "browser",
"title": "Datasource tests - Elasticsearch v6",
"uid": "NF8Pq2Biz",
"version": 5
"version": 1
}

View File

@@ -15,7 +15,7 @@
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"iteration": 1554902936982,
"iteration": 1591027621672,
"links": [
{
"asDropdown": true,
@@ -34,13 +34,21 @@
"dashLength": 10,
"dashes": false,
"datasource": "gdev-elasticsearch-v6-filebeat",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 5,
"w": 24,
"x": 0,
"y": 0
},
"hiddenSeries": false,
"id": 4,
"legend": {
"avg": false,
@@ -54,6 +62,9 @@
"lines": false,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 2,
"points": false,
@@ -142,22 +153,13 @@
}
},
{
"columns": [
{
"text": "@timestamp",
"value": "@timestamp"
},
{
"text": "fields.level",
"value": "fields.level"
},
{
"text": "message",
"value": "message"
}
],
"datasource": "gdev-elasticsearch-v6-filebeat",
"fontSize": "100%",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"gridPos": {
"h": 22,
"w": 24,
@@ -166,58 +168,35 @@
},
"id": 2,
"links": [],
"pageSize": null,
"scroll": true,
"showHeader": true,
"sort": {
"col": 0,
"desc": true
"options": {
"showLabels": false,
"showTime": true,
"sortOrder": "Descending",
"wrapLogMessage": true
},
"styles": [
{
"alias": "Time",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "@timestamp",
"type": "date"
},
{
"alias": "Level",
"colorMode": null,
"colors": ["rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)"],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": 2,
"mappingType": 1,
"pattern": "fields.level",
"thresholds": [""],
"type": "string",
"unit": "short",
"valueMaps": []
},
{
"alias": "Message",
"colorMode": null,
"colors": ["rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)"],
"decimals": 2,
"pattern": "message",
"preserveFormat": false,
"sanitize": false,
"thresholds": [],
"type": "string",
"unit": "short"
}
],
"targets": [
{
"bucketAggs": [],
"bucketAggs": [
{
"$$hashKey": "object:394",
"field": "@timestamp",
"id": "2",
"settings": {
"interval": "auto",
"min_doc_count": 0,
"trimEdges": 0
},
"type": "date_histogram"
}
],
"metrics": [
{
"$$hashKey": "object:359",
"field": "select field",
"id": "1",
"meta": {},
"settings": {
"size": 500
},
"type": "raw_document"
"settings": {},
"type": "logs"
}
],
"query": "fields.app:grafana",
@@ -228,11 +207,10 @@
"timeFrom": null,
"timeShift": null,
"title": "Panel Title",
"transform": "json",
"type": "table"
"type": "logs"
}
],
"schemaVersion": 18,
"schemaVersion": 25,
"style": "dark",
"tags": ["gdev", "elasticsearch", "datasource-test"],
"templating": {
@@ -249,7 +227,7 @@
]
},
"time": {
"from": "now-1h",
"from": "now-30m",
"to": "now"
},
"timepicker": {
@@ -259,5 +237,5 @@
"timezone": "",
"title": "Datasource tests - Elasticsearch v6 Filebeat",
"uid": "06tPt4gZz",
"version": 8
"version": 1
}

View File

@@ -28,8 +28,7 @@
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": 2342,
"iteration": 1555593977614,
"iteration": 1591027717495,
"links": [
{
"asDropdown": true,
@@ -48,7 +47,14 @@
"datasource": "gdev-elasticsearch-v7-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 7,
@@ -56,6 +62,7 @@
"x": 0,
"y": 0
},
"hiddenSeries": false,
"id": 1,
"legend": {
"alignAsTable": true,
@@ -72,6 +79,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -171,7 +181,14 @@
"datasource": "gdev-elasticsearch-v7-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 6,
@@ -179,6 +196,7 @@
"x": 0,
"y": 7
},
"hiddenSeries": false,
"id": 2,
"legend": {
"alignAsTable": true,
@@ -195,6 +213,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -293,7 +314,14 @@
"datasource": "gdev-elasticsearch-v7-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"grid": {},
"gridPos": {
"h": 6,
@@ -301,6 +329,7 @@
"x": 12,
"y": 7
},
"hiddenSeries": false,
"id": 3,
"legend": {
"alignAsTable": true,
@@ -317,6 +346,9 @@
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
@@ -428,6 +460,12 @@
"datasource": "gdev-elasticsearch-v7-metrics",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fontSize": "100%",
"gridPos": {
"h": 7,
@@ -446,11 +484,13 @@
},
"styles": [
{
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "@timestamp",
"type": "date"
},
{
"align": "auto",
"colorMode": null,
"colors": ["rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)"],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
@@ -506,7 +546,7 @@
],
"title": "ES Metrics",
"transform": "table",
"type": "table"
"type": "table-old"
},
{
"columns": [
@@ -530,6 +570,12 @@
"datasource": "gdev-elasticsearch-v7-logs",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fontSize": "100%",
"gridPos": {
"h": 7,
@@ -548,6 +594,7 @@
},
"styles": [
{
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "@timestamp",
"type": "date"
@@ -575,7 +622,7 @@
],
"title": "ES Log query",
"transform": "json",
"type": "table"
"type": "table-old"
},
{
"circleMaxSize": 30,
@@ -585,6 +632,12 @@
"decimals": 0,
"esGeoPoint": "@location",
"esMetric": "Average",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"gridPos": {
"h": 12,
"w": 24,
@@ -646,7 +699,7 @@
"valueName": "total"
}
],
"schemaVersion": 18,
"schemaVersion": 25,
"style": "dark",
"tags": ["elasticsearch", "gdev", "datasource-test"],
"templating": {

View File

@@ -15,8 +15,7 @@
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": 2341,
"iteration": 1555591591930,
"iteration": 1591027736516,
"links": [
{
"asDropdown": true,
@@ -35,13 +34,21 @@
"dashLength": 10,
"dashes": false,
"datasource": "gdev-elasticsearch-v7-filebeat",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 5,
"w": 24,
"x": 0,
"y": 0
},
"hiddenSeries": false,
"id": 4,
"legend": {
"avg": false,
@@ -55,6 +62,9 @@
"lines": false,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 2,
"points": false,
@@ -143,22 +153,13 @@
}
},
{
"columns": [
{
"text": "@timestamp",
"value": "@timestamp"
},
{
"text": "fields.level",
"value": "fields.level"
},
{
"text": "message",
"value": "message"
}
],
"datasource": "gdev-elasticsearch-v7-filebeat",
"fontSize": "100%",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"gridPos": {
"h": 22,
"w": 24,
@@ -167,58 +168,35 @@
},
"id": 2,
"links": [],
"pageSize": null,
"scroll": true,
"showHeader": true,
"sort": {
"col": 0,
"desc": true
"options": {
"showLabels": false,
"showTime": true,
"sortOrder": "Descending",
"wrapLogMessage": true
},
"styles": [
{
"alias": "Time",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "@timestamp",
"type": "date"
},
{
"alias": "Level",
"colorMode": null,
"colors": ["rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)"],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": 2,
"mappingType": 1,
"pattern": "fields.level",
"thresholds": [""],
"type": "string",
"unit": "short",
"valueMaps": []
},
{
"alias": "Message",
"colorMode": null,
"colors": ["rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)"],
"decimals": 2,
"pattern": "message",
"preserveFormat": false,
"sanitize": false,
"thresholds": [],
"type": "string",
"unit": "short"
}
],
"targets": [
{
"bucketAggs": [],
"bucketAggs": [
{
"$$hashKey": "object:522",
"field": "@timestamp",
"id": "2",
"settings": {
"interval": "auto",
"min_doc_count": 0,
"trimEdges": 0
},
"type": "date_histogram"
}
],
"metrics": [
{
"$$hashKey": "object:484",
"field": "select field",
"id": "1",
"meta": {},
"settings": {
"size": 500
},
"type": "raw_document"
"settings": {},
"type": "logs"
}
],
"query": "fields.app:grafana",
@@ -229,11 +207,10 @@
"timeFrom": null,
"timeShift": null,
"title": "Panel Title",
"transform": "json",
"type": "table"
"type": "logs"
}
],
"schemaVersion": 18,
"schemaVersion": 25,
"style": "dark",
"tags": ["elasticsearch", "gdev", "datasource-test"],
"templating": {

View File

@@ -15,12 +15,18 @@
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": 13844,
"iteration": 1566896059256,
"iteration": 1590677937026,
"links": [],
"panels": [
{
"content": "## Data center = $datacenter\n\n### server = $server\n\n#### pod = $pod",
"datasource": null,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 12,
@@ -29,7 +35,6 @@
},
"id": 4,
"mode": "markdown",
"options": {},
"targets": [
{
"refId": "A",
@@ -47,6 +52,12 @@
"colorValue": false,
"colors": ["#299c46", "rgba(237, 129, 40, 0.89)", "#d44a3a"],
"datasource": "gdev-testdata",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"format": "none",
"gauge": {
"maxValue": 100,
@@ -75,7 +86,6 @@
"maxDataPoints": 100,
"nullPointMode": "connected",
"nullText": null,
"options": {},
"postfix": "",
"postfixFontSize": "50%",
"prefix": "",
@@ -119,6 +129,41 @@
},
{
"cacheTimeout": null,
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"links": [
{
"targetBlank": true,
"title": "Go to drilldown",
"url": "/d/O6GmNPvWk/dashboard-tests-nested-template-variables-drilldown?orgId=1&${__all_variables}&${__url_time_range}"
}
],
"mappings": [],
"max": 100,
"min": 0,
"nullValueMode": "connected",
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
},
"unit": "none"
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 4,
@@ -128,40 +173,15 @@
"id": 8,
"links": [],
"options": {
"fieldOptions": {
"orientation": "horizontal",
"reduceOptions": {
"calcs": ["mean"],
"defaults": {
"links": [
{
"targetBlank": true,
"title": "Go to drilldown",
"url": "/d/O6GmNPvWk/dashboard-tests-nested-template-variables-drilldown?orgId=1&${__all_variables}&${__url_time_range}"
}
],
"mappings": [],
"max": 100,
"min": 0,
"nullValueMode": "connected",
"thresholds": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
],
"unit": "none"
},
"override": {},
"values": false
},
"orientation": "horizontal",
"showThresholdLabels": false,
"showThresholdMarkers": true
},
"pluginVersion": "6.4.0-pre",
"pluginVersion": "7.1.0-pre",
"targets": [
{
"refId": "A",
@@ -175,6 +195,41 @@
},
{
"cacheTimeout": null,
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"links": [
{
"targetBlank": true,
"title": "Go to drilldown",
"url": "/d/O6GmNPvWk/dashboard-tests-nested-template-variables-drilldown?orgId=1&${__all_variables}&${__url_time_range}"
}
],
"mappings": [],
"max": 100,
"min": 0,
"nullValueMode": "connected",
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
},
"unit": "none"
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 4,
@@ -185,38 +240,14 @@
"links": [],
"options": {
"displayMode": "basic",
"fieldOptions": {
"orientation": "vertical",
"reduceOptions": {
"calcs": ["mean"],
"defaults": {
"links": [
{
"targetBlank": true,
"title": "Go to drilldown",
"url": "/d/O6GmNPvWk/dashboard-tests-nested-template-variables-drilldown?orgId=1&${__all_variables}&${__url_time_range}"
}
],
"mappings": [],
"max": 100,
"min": 0,
"nullValueMode": "connected",
"thresholds": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
],
"unit": "none"
},
"override": {},
"values": false
},
"orientation": "vertical"
"showUnfilled": true
},
"pluginVersion": "6.4.0-pre",
"pluginVersion": "7.1.0-pre",
"targets": [
{
"refId": "A",
@@ -228,20 +259,108 @@
"title": "React gauge datalink",
"type": "bargauge"
},
{
"datasource": "CsvData",
"fieldConfig": {
"defaults": {
"custom": {
"align": null
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "server"
},
"properties": [
{
"id": "links",
"value": [
{
"title": "filter",
"url": "http://localhost:3000/d/-Y-tnEDWk/templating-nested-template-variables?var-datacenter=${__data.fields[datacenter]}&var-server=${__value.raw}"
}
]
}
]
}
]
},
"gridPos": {
"h": 6,
"w": 24,
"x": 0,
"y": 9
},
"id": 11,
"options": {
"showHeader": true
},
"pluginVersion": "7.1.0-pre",
"targets": [
{
"data": [
{
"fields": [
{
"config": {},
"name": "datacenter",
"type": "string",
"values": ["A", "B", "C"]
},
{
"config": {},
"name": "server",
"type": "string",
"values": ["AA", "BB", "CC"]
}
]
}
],
"refId": "A"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Data links that filter update variables on current dashboard",
"type": "table"
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "gdev-testdata",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 13,
"w": 24,
"x": 0,
"y": 9
"y": 15
},
"hiddenSeries": false,
"id": 2,
"legend": {
"avg": false,
@@ -316,7 +435,7 @@
}
],
"refresh": false,
"schemaVersion": 19,
"schemaVersion": 25,
"style": "dark",
"tags": ["gdev", "templating"],
"templating": {
@@ -324,6 +443,7 @@
{
"allValue": null,
"current": {
"selected": true,
"text": "A",
"value": ["A"]
},
@@ -349,6 +469,7 @@
{
"allValue": null,
"current": {
"selected": true,
"text": "AA",
"value": ["AA"]
},
@@ -374,6 +495,7 @@
{
"allValue": null,
"current": {
"selected": true,
"text": "All",
"value": ["$__all"]
},
@@ -403,7 +525,7 @@
"to": "now"
},
"timepicker": {
"refresh_intervals": ["5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d"]
"refresh_intervals": ["10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d"]
},
"timezone": "",
"title": "Templating - Nested Template Variables",

View File

@@ -0,0 +1,195 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"type": "dashboard"
}
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"iteration": 1584435937931,
"links": [],
"panels": [
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": null,
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 14,
"w": 19,
"x": 0,
"y": 0
},
"hiddenSeries": false,
"id": 2,
"legend": {
"alignAsTable": true,
"avg": false,
"current": false,
"max": false,
"min": true,
"rightSide": true,
"show": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "updatesOnTime: $updatesOnTime",
"refId": "A",
"scenarioId": "random_walk"
},
{
"alias": "dependsOnFirst: $dependsOnFirst",
"refId": "B",
"scenarioId": "random_walk"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Panel Title",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
],
"schemaVersion": 22,
"style": "dark",
"tags": ["gdev", "templating"],
"templating": {
"list": [
{
"allValue": null,
"current": {
"text": "value.1584434137814",
"value": "value.1584434137814"
},
"datasource": "gdev-testdata",
"definition": "value.$__from",
"hide": 0,
"includeAll": false,
"index": -1,
"label": null,
"multi": false,
"name": "updatesOnTime",
"options": [],
"query": "value.$__from",
"refresh": 2,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"tagValuesQuery": "",
"tags": [],
"tagsQuery": "",
"type": "query",
"useTags": false
},
{
"allValue": null,
"current": {
"text": "value.value.1584434072074",
"value": "value.value.1584434072074"
},
"datasource": "gdev-testdata",
"definition": "value.$updatesOnTime",
"hide": 0,
"includeAll": false,
"index": -1,
"label": null,
"multi": false,
"name": "dependsOnFirst",
"options": [
{
"selected": true,
"text": "value.value.1584434072074",
"value": "value.value.1584434072074"
}
],
"query": "value.$updatesOnTime",
"refresh": 0,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"tagValuesQuery": "",
"tags": [],
"tagsQuery": "",
"type": "query",
"useTags": false
}
]
},
"time": {
"from": "now-30m",
"to": "now"
},
"timepicker": {
"refresh_intervals": ["5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d"]
},
"timezone": "",
"title": "Templating - Variables That Refresh On Time Change",
"uid": "HeUnbEuZk",
"variables": {
"list": []
},
"version": 13
}

View File

@@ -155,7 +155,7 @@
],
"timeFrom": null,
"timeShift": null,
"title": "Last non nulll",
"title": "Last non-null",
"type": "gauge"
},
{

View File

@@ -454,7 +454,7 @@
"yaxes": [
{
"format": "percent",
"label": "Perecent",
"label": "Percent",
"logBase": 1,
"max": null,
"min": null,

View File

@@ -428,6 +428,14 @@
{
"text": "Bitcoin (฿)",
"value": "currencyBTC"
},
{
"text": "Milli Bitcoin (mBTC)",
"value": "currencymBTC"
},
{
"text": "Micro Bitcoin (μBTC)",
"value": "currencyμBTC"
}
],
"text": "currency"

View File

@@ -85,7 +85,7 @@
}
],
"thresholds": "5,10",
"title": "prefix 3 ms (green) postfixt + sparkline",
"title": "prefix 3 ms (green) postfix + sparkline",
"type": "singlestat",
"valueFontSize": "80%",
"valueMaps": [

View File

@@ -19,6 +19,42 @@
"panels": [
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": []
},
"gridPos": {
"h": 3,
"w": 24,
@@ -29,51 +65,20 @@
"interval": "6m",
"options": {
"colorMode": "background",
"fieldOptions": {
"calcs": ["mean"],
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": [],
"values": false
},
"graphMode": "area",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"sparkline": {
"show": true
}
},
"textMode": "auto"
},
"pluginVersion": "6.6.0-pre",
"pluginVersion": "7.1.0-pre",
"targets": [
{
"alias": "__house_locations",
@@ -93,6 +98,42 @@
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": []
},
"gridPos": {
"h": 6,
"w": 24,
@@ -103,51 +144,20 @@
"interval": "7m",
"options": {
"colorMode": "background",
"fieldOptions": {
"calcs": ["mean"],
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": [],
"values": false
},
"graphMode": "area",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"sparkline": {
"show": true
}
},
"textMode": "auto"
},
"pluginVersion": "6.6.0-pre",
"pluginVersion": "7.1.0-pre",
"targets": [
{
"alias": "__house_locations",
@@ -166,6 +176,42 @@
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": []
},
"gridPos": {
"h": 6,
"w": 24,
@@ -176,51 +222,20 @@
"interval": "7m",
"options": {
"colorMode": "value",
"fieldOptions": {
"calcs": ["mean"],
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": [],
"values": false
},
"graphMode": "area",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"sparkline": {
"show": true
}
},
"textMode": "auto"
},
"pluginVersion": "6.6.0-pre",
"pluginVersion": "7.1.0-pre",
"targets": [
{
"alias": "__house_locations",
@@ -239,8 +254,44 @@
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": []
},
"gridPos": {
"h": 14,
"h": 18,
"w": 6,
"x": 0,
"y": 15
@@ -249,51 +300,20 @@
"interval": "5m",
"options": {
"colorMode": "background",
"fieldOptions": {
"calcs": ["mean"],
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": [],
"values": false
},
"graphMode": "area",
"justifyMode": "auto",
"orientation": "horizontal",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"sparkline": {
"show": true
}
},
"textMode": "auto"
},
"pluginVersion": "6.6.0-pre",
"pluginVersion": "7.1.0-pre",
"targets": [
{
"alias": "__server_names",
@@ -306,13 +326,49 @@
],
"timeFrom": null,
"timeShift": null,
"title": "Panel Title",
"title": "Horizontal with graph",
"type": "stat"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": []
},
"gridPos": {
"h": 11,
"h": 9,
"w": 4,
"x": 6,
"y": 15
@@ -321,51 +377,20 @@
"interval": "10m",
"options": {
"colorMode": "background",
"fieldOptions": {
"calcs": ["mean"],
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": [],
"values": false
},
"graphMode": "line",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"sparkline": {
"show": true
}
},
"textMode": "auto"
},
"pluginVersion": "6.6.0-pre",
"pluginVersion": "7.1.0-pre",
"targets": [
{
"refId": "A",
@@ -398,14 +423,50 @@
],
"timeFrom": null,
"timeShift": null,
"title": "Panel Title",
"title": "Auto grid",
"type": "stat"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 8,
"w": 6,
"x": 10,
"y": 15
},
@@ -413,51 +474,20 @@
"interval": "10m",
"options": {
"colorMode": "background",
"fieldOptions": {
"calcs": ["mean"],
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": [],
"values": false
},
"graphMode": "line",
"justifyMode": "auto",
"orientation": "horizontal",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"sparkline": {
"show": true
}
},
"textMode": "auto"
},
"pluginVersion": "6.6.0-pre",
"pluginVersion": "7.1.0-pre",
"targets": [
{
"refId": "A",
@@ -490,11 +520,257 @@
],
"timeFrom": null,
"timeShift": null,
"title": "Panel Title",
"title": "Horizontal",
"type": "stat"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"mappings": [],
"max": 200,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 8,
"x": 16,
"y": 15
},
"id": 15,
"interval": "5m",
"options": {
"colorMode": "background",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "horizontal",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"sparkline": {
"show": true
},
"textMode": "name"
},
"pluginVersion": "7.1.0-pre",
"targets": [
{
"alias": "__server_names",
"max": 200,
"min": 0,
"noise": 5,
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 7,
"spread": 20,
"startValue": 0
}
],
"timeFrom": null,
"timeShift": null,
"title": "Text mode name",
"type": "stat"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"mappings": [],
"max": 200,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 18,
"x": 6,
"y": 24
},
"id": 16,
"interval": "5m",
"options": {
"colorMode": "background",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"sparkline": {
"show": true
},
"textMode": "value"
},
"pluginVersion": "7.1.0-pre",
"targets": [
{
"alias": "__server_names",
"max": 200,
"min": 0,
"noise": 15,
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 45,
"spread": 1,
"startValue": 0
}
],
"timeFrom": null,
"timeShift": null,
"title": "Value only",
"type": "stat"
},
{
"datasource": null,
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {},
"mappings": [],
"max": 200,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 10
},
{
"color": "purple",
"value": 20
},
{
"color": "orange",
"value": 40
},
{
"color": "red",
"value": 80
}
]
},
"unit": "areaM2"
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 24,
"x": 0,
"y": 33
},
"id": 17,
"interval": "5m",
"options": {
"colorMode": "background",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"sparkline": {
"show": true
},
"textMode": "none"
},
"pluginVersion": "7.1.0-pre",
"targets": [
{
"alias": "__server_names",
"max": 200,
"min": 0,
"noise": 15,
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 200,
"spread": 1,
"startValue": 0
}
],
"timeFrom": null,
"timeShift": null,
"title": "No text",
"type": "stat"
}
],
"schemaVersion": 22,
"schemaVersion": 26,
"style": "dark",
"tags": ["gdev", "panel-tests"],
"templating": {
@@ -508,5 +784,7 @@
"refresh_intervals": ["5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d"]
},
"timezone": "",
"title": "Panel Tests - Stat"
"title": "Panel Tests - Stat",
"uid": "EJ8_d9jZk",
"version": 1
}

View File

@@ -0,0 +1,602 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"type": "dashboard"
}
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"links": [],
"panels": [
{
"datasource": null,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 7,
"title": "Cell styles",
"type": "row"
},
{
"datasource": "gdev-testdata",
"fieldConfig": {
"defaults": {
"custom": {
"align": "center",
"displayMode": "color-background"
},
"mappings": [],
"thresholds": {
"mode": "percentage",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "blue",
"value": 20
},
{
"color": "orange",
"value": 60
},
{
"color": "red",
"value": 70
}
]
},
"unit": "degree"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Max"
},
"properties": [
{
"id": "custom.width",
"value": 84
}
]
},
{
"matcher": {
"id": "byName",
"options": "Last"
},
"properties": [
{
"id": "custom.width",
"value": 78
}
]
},
{
"matcher": {
"id": "byName",
"options": "Mean"
},
"properties": [
{
"id": "custom.width",
"value": 74
}
]
},
{
"matcher": {
"id": "byName",
"options": "Field"
},
"properties": [
{
"id": "custom.align",
"value": "left"
}
]
}
]
},
"gridPos": {
"h": 16,
"w": 7,
"x": 0,
"y": 1
},
"id": 4,
"options": {
"showHeader": true,
"sortBy": [
{
"desc": true,
"displayName": "Last"
}
]
},
"pluginVersion": "7.1.0-pre",
"targets": [
{
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 15,
"stringInput": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Colored background",
"transformations": [
{
"id": "reduce",
"options": {
"reducers": ["max", "mean", "last"]
}
}
],
"type": "table"
},
{
"datasource": "gdev-testdata",
"fieldConfig": {
"defaults": {
"custom": {
"align": null
},
"mappings": [],
"thresholds": {
"mode": "percentage",
"steps": [
{
"color": "orange",
"value": null
},
{
"color": "red",
"value": 50
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Value"
},
"properties": [
{
"id": "custom.displayMode",
"value": "gradient-gauge"
}
]
},
{
"matcher": {
"id": "byName",
"options": "Info"
},
"properties": [
{
"id": "custom.width",
"value": 92
}
]
},
{
"matcher": {
"id": "byName",
"options": "Min"
},
"properties": [
{
"id": "custom.width",
"value": 76
}
]
},
{
"matcher": {
"id": "byName",
"options": "Max"
},
"properties": [
{
"id": "custom.width",
"value": 89
}
]
},
{
"matcher": {
"id": "byName",
"options": "Time"
},
"properties": [
{
"id": "custom.width",
"value": 165
}
]
}
]
},
"gridPos": {
"h": 16,
"w": 8,
"x": 7,
"y": 1
},
"id": 2,
"options": {
"showHeader": true,
"sortBy": [
{
"desc": false,
"displayName": "Min"
}
]
},
"pluginVersion": "7.1.0-pre",
"targets": [
{
"refId": "A",
"scenarioId": "random_walk_table",
"stringInput": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Bar gauge cells",
"transformations": [
{
"id": "organize",
"options": {
"excludeByName": {
"Time": true
},
"indexByName": {
"Info": 1,
"Max": 3,
"Min": 2,
"Time": 0,
"Value": 4
},
"renameByName": {}
}
}
],
"type": "table"
},
{
"datasource": "gdev-testdata",
"description": "",
"fieldConfig": {
"defaults": {
"custom": {
"align": null
},
"mappings": [],
"thresholds": {
"mode": "percentage",
"steps": [
{
"color": "blue",
"value": null
},
{
"color": "green",
"value": 50
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Value"
},
"properties": [
{
"id": "custom.displayMode",
"value": "lcd-gauge"
},
{
"id": "custom.align",
"value": "center"
}
]
}
]
},
"gridPos": {
"h": 16,
"w": 9,
"x": 15,
"y": 1
},
"id": 5,
"options": {
"showHeader": true,
"sortBy": []
},
"pluginVersion": "7.1.0-pre",
"targets": [
{
"refId": "A",
"scenarioId": "random_walk_table",
"stringInput": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Retro LCD cell",
"transformations": [
{
"id": "organize",
"options": {
"excludeByName": {
"Info": false,
"Max": true,
"Min": true,
"Time": false
},
"indexByName": {
"Info": 1,
"Max": 3,
"Min": 2,
"Time": 0,
"Value": 4
},
"renameByName": {}
}
}
],
"type": "table"
},
{
"collapsed": false,
"datasource": null,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 17
},
"id": 9,
"panels": [],
"title": "Data links",
"type": "row"
},
{
"datasource": "gdev-testdata",
"fieldConfig": {
"defaults": {
"custom": {
"align": "center",
"displayMode": "color-text"
},
"decimals": 2,
"mappings": [],
"thresholds": {
"mode": "percentage",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "blue",
"value": 20
},
{
"color": "orange",
"value": 50
},
{
"color": "red",
"value": 70
}
]
},
"unit": "percent"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Time"
},
"properties": [
{
"id": "custom.align",
"value": null
}
]
},
{
"matcher": {
"id": "byName",
"options": "{name=\"S1\", server=\"A\"}"
},
"properties": [
{
"id": "links",
"value": [
{
"title": "Details",
"url": "http://detail?serverLabel=${__field.labels.server}&valueNumeric=${__value.numeric}"
}
]
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 18
},
"id": 3,
"maxDataPoints": "10",
"options": {
"showHeader": true
},
"pluginVersion": "7.1.0-pre",
"targets": [
{
"alias": "S1",
"labels": "server=A",
"refId": "A",
"scenarioId": "random_walk",
"seriesCount": 1,
"stringInput": ""
},
{
"alias": "S2",
"labels": "server=B",
"refId": "B",
"scenarioId": "random_walk",
"seriesCount": 1,
"stringInput": ""
},
{
"alias": "S3",
"labels": "server=C",
"refId": "C",
"scenarioId": "random_walk",
"seriesCount": 1,
"stringInput": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "Data link with labels and numeric value",
"transformations": [
{
"id": "seriesToColumns",
"options": {}
}
],
"type": "table"
},
{
"datasource": "gdev-testdata",
"fieldConfig": {
"defaults": {
"custom": {
"align": "center",
"displayMode": "auto"
},
"mappings": [],
"thresholds": {
"mode": "percentage",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "blue",
"value": 20
},
{
"color": "orange",
"value": 60
},
{
"color": "red",
"value": 70
}
]
},
"unit": "degree"
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 5,
"x": 12,
"y": 18
},
"id": 10,
"options": {
"showHeader": false,
"sortBy": [
{
"desc": true,
"displayName": "Last"
}
]
},
"pluginVersion": "7.1.0-pre",
"targets": [
{
"refId": "A",
"scenarioId": "random_walk_table",
"seriesCount": 5,
"stringInput": ""
}
],
"timeFrom": null,
"timeShift": null,
"title": "No header",
"transformations": [
{
"id": "organize",
"options": {
"excludeByName": {
"Min": true,
"Time": true,
"Value": true
},
"indexByName": {
"Info": 2,
"Max": 4,
"Min": 3,
"Time": 0,
"Value": 1
},
"renameByName": {}
}
}
],
"type": "table"
}
],
"schemaVersion": 25,
"style": "dark",
"tags": ["gdev", "panel-tests"],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {
"refresh_intervals": ["10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d"]
},
"timezone": "",
"title": "Panel Tests - React Table",
"uid": "U_bZIMRMk",
"version": 17
}

View File

@@ -0,0 +1,695 @@
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"type": "dashboard"
}
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": 28,
"links": [],
"panels": [
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "gdev-testdata",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 12,
"x": 0,
"y": 0
},
"hiddenSeries": false,
"id": 4,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"refId": "A",
"scenario": "random_walk",
"scenarioId": "random_walk",
"target": ""
}
],
"thresholds": [],
"timeFrom": "2s",
"timeRegions": [],
"timeShift": null,
"title": "Millisecond res x-axis and tooltip",
"tooltip": {
"msResolution": false,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "gdev-testdata",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 12,
"x": 12,
"y": 0
},
"hiddenSeries": false,
"id": 3,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"refId": "A",
"scenario": "random_walk",
"scenarioId": "random_walk",
"target": ""
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Random walk series",
"tooltip": {
"msResolution": false,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "gdev-testdata",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 7
},
"hiddenSeries": false,
"id": 5,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "B-series",
"yaxis": 2
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,20,90,30,5,0",
"target": ""
},
{
"refId": "B",
"scenarioId": "csv_metric_values",
"stringInput": "2000,3000,4000,1000,3000,10000",
"target": ""
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "2 yaxis and axis labels",
"tooltip": {
"msResolution": false,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "percent",
"label": "Perecent",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": "Pressure",
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "gdev-testdata",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 7
},
"hiddenSeries": false,
"id": 9,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "B-series",
"zindex": -3
}
],
"spaceLength": 10,
"stack": true,
"steppedLine": false,
"targets": [
{
"hide": false,
"refId": "B",
"scenarioId": "csv_metric_values",
"stringInput": "1,20,null,null,null,null,null,null,100,10,10,20,30,40,10",
"target": ""
},
{
"alias": "",
"hide": false,
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,20,90,30,5,10,20,30,40,40,40,100,10,20,20",
"target": ""
},
{
"alias": "",
"hide": false,
"refId": "C",
"scenarioId": "csv_metric_values",
"stringInput": "1,20,90,30,5,10,20,30,40,40,40,100,10,20,20",
"target": ""
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Stacking value ontop of nulls",
"tooltip": {
"msResolution": false,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "gdev-testdata",
"editable": true,
"error": false,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 12,
"x": 0,
"y": 15
},
"hiddenSeries": false,
"id": 21,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [
{
"alias": "C-series",
"steppedLine": true
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "",
"hide": false,
"refId": "B",
"scenarioId": "csv_metric_values",
"stringInput": "1,null,40,null,90,null,null,100,null,null,100,null,null,80,null",
"target": ""
},
{
"alias": "",
"hide": false,
"refId": "C",
"scenarioId": "csv_metric_values",
"stringInput": "20,null40,null,null,50,null,70,null,100,null,10,null,30,null",
"target": ""
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Null between points",
"tooltip": {
"msResolution": false,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "gdev-testdata",
"decimals": 3,
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 12,
"x": 12,
"y": 15
},
"hiddenSeries": false,
"id": 16,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": true,
"show": true,
"total": true,
"values": true
},
"lines": true,
"linewidth": 1,
"links": [],
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"refId": "A",
"scenarioId": "csv_metric_values",
"stringInput": "1,20,90,30,5,0",
"target": ""
},
{
"refId": "B",
"scenarioId": "csv_metric_values",
"stringInput": "1,20,90,30,5,0",
"target": ""
},
{
"refId": "C",
"scenarioId": "csv_metric_values",
"stringInput": "1,20,90,30,5,0",
"target": ""
},
{
"refId": "D",
"scenarioId": "csv_metric_values",
"stringInput": "1,20,90,30,5,0",
"target": ""
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Legend Table No Scroll Visible",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
],
"refresh": false,
"revision": 8,
"schemaVersion": 25,
"style": "dark",
"tags": ["gdev", "panel-tests", "graph", "table"],
"templating": {
"list": []
},
"time": {
"from": "now-1h",
"to": "now"
},
"timepicker": {
"refresh_intervals": ["10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d"],
"time_options": ["5m", "15m", "1h", "6h", "12h", "24h", "2d", "7d", "30d"]
},
"timezone": "utc",
"title": "Panel Tests - Time zone support",
"uid": "5SdHCasdf",
"version": 1
}

View File

@@ -0,0 +1 @@
grafana_version=6.6.2

View File

@@ -0,0 +1,14 @@
grafana:
image: grafana/grafana:${grafana_version}
ports:
- "3001:3000"
volumes:
- "./dashboards.yaml:/etc/grafana/provisioning/dashboards/dashboards.yaml"
- "./dev-dashboards:/usr/share/grafana/devenv/dev-dashboards"
- "./datasources_docker.yaml:/etc/grafana/provisioning/datasources/datasources.yaml"
environment:
GF_RENDERING_SERVER_URL: http://renderer:8081/render
GF_RENDERING_CALLBACK_URL: http://grafana:3000/
renderer:
image: grafana/grafana-image-renderer:latest

View File

@@ -10,6 +10,11 @@
ports:
- "3100:3100"
command: -config.file=/etc/loki/local-config.yaml
# For this to work you need to install the logging driver see https://github.com/grafana/loki/tree/master/cmd/docker-driver#plugin-installation
logging:
driver: loki
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
# Optional jaeger tracing
environment:
- JAEGER_AGENT_HOST=jaeger

View File

@@ -1,6 +1,6 @@
#!/bin/bash
# When not limiting the open file descritors limit, the memory consumption of
# When not limiting the open file descriptors limit, the memory consumption of
# slapd is absurdly high. See https://github.com/docker/docker/issues/8231
ulimit -n 8192

View File

@@ -1,6 +1,6 @@
#!/bin/bash
# When not limiting the open file descritors limit, the memory consumption of
# When not limiting the open file descriptors limit, the memory consumption of
# slapd is absurdly high. See https://github.com/docker/docker/issues/8231
ulimit -n 8192

View File

@@ -1,18 +1,15 @@
prometheus:
build: docker/blocks/prometheus
network_mode: host
ports:
- "9090:9090"
node_exporter:
image: prom/node-exporter
network_mode: host
ports:
- "9100:9100"
fake-prometheus-data:
image: grafana/fake-data-gen
network_mode: host
ports:
- "9091:9091"
environment:
@@ -20,12 +17,10 @@
alertmanager:
image: quay.io/prometheus/alertmanager
network_mode: host
ports:
- "9093:9093"
prometheus-random-data:
build: docker/blocks/prometheus_random_data
network_mode: host
ports:
- "8081:8080"

View File

@@ -15,7 +15,7 @@ alerting:
- scheme: http
static_configs:
- targets:
- "127.0.0.1:9093"
- "alertmanager:9093"
scrape_configs:
- job_name: 'prometheus'
@@ -24,16 +24,16 @@ scrape_configs:
- job_name: 'node_exporter'
static_configs:
- targets: ['127.0.0.1:9100']
- targets: ['node_exporter:9100']
- job_name: 'fake-data-gen'
static_configs:
- targets: ['127.0.0.1:9091']
- targets: ['fake-prometheus-data:9091']
- job_name: 'grafana'
static_configs:
- targets: ['127.0.0.1:3000']
- targets: ['grafana:3000']
- job_name: 'prometheus-random-data'
static_configs:
- targets: ['127.0.0.1:8081']
- targets: ['prometheus-random-data:8080']

View File

@@ -1,3 +1,4 @@
FROM prom/prometheus:v2.7.2
ADD prometheus.yml /etc/prometheus/
ADD alert.rules /etc/prometheus/
ADD recording.yml /etc/prometheus/
ADD alert.yml /etc/prometheus/

View File

@@ -1,10 +0,0 @@
# Alert Rules
ALERT AppCrash
IF process_open_fds > 0
FOR 15s
LABELS { severity="critical" }
ANNOTATIONS {
summary = "Number of open fds > 0",
description = "Just testing"
}

View File

@@ -0,0 +1,11 @@
groups:
- name: ALERT
rules:
- alert: AppCrash
expr: process_open_fds > 0
for: 15s
labels:
severity: critical
annotations:
summary: Number of open fds > 0
description: Just testing

View File

@@ -1,18 +1,15 @@
prometheus:
build: docker/blocks/prometheus2
network_mode: host
ports:
- "9090:9090"
node_exporter:
image: prom/node-exporter
network_mode: host
ports:
- "9100:9100"
fake-prometheus-data:
image: grafana/fake-data-gen
network_mode: host
ports:
- "9091:9091"
environment:
@@ -20,12 +17,10 @@
alertmanager:
image: quay.io/prometheus/alertmanager
network_mode: host
ports:
- "9093:9093"
prometheus-random-data:
build: docker/blocks/prometheus_random_data
network_mode: host
ports:
- "8081:8080"

View File

@@ -5,17 +5,17 @@ global:
# scrape_timeout is set to the global default (10s).
# Load and evaluate rules in this file every 'evaluation_interval' seconds.
#rule_files:
# - "alert.rules"
# - "first.rules"
rule_files:
- "alert.yml"
- "recording.yml"
# - "second.rules"
# alerting:
# alertmanagers:
# - scheme: http
# static_configs:
# - targets:
# - "127.0.0.1:9093"
alerting:
alertmanagers:
- scheme: http
static_configs:
- targets:
- "alertmanager:9093"
scrape_configs:
- job_name: 'prometheus'
@@ -24,16 +24,16 @@ scrape_configs:
- job_name: 'node_exporter'
static_configs:
- targets: ['127.0.0.1:9100']
- targets: ['node_exporter:9100']
- job_name: 'fake-data-gen'
static_configs:
- targets: ['127.0.0.1:9091']
- targets: ['fake-prometheus-data:9091']
- job_name: 'grafana'
static_configs:
- targets: ['127.0.0.1:3000']
- targets: ['grafana:3000']
- job_name: 'prometheus-random-data'
static_configs:
- targets: ['127.0.0.1:8081']
- targets: ['prometheus-random-data:8080']

View File

@@ -0,0 +1,16 @@
groups:
- name: RECORDING_RULES
rules:
- record: instance_path:requests:rate5m
expr: rate(prometheus_http_requests_total{job="prometheus"}[5m])
- record: path:requests:rate5m
expr: sum without (instance)(instance_path:requests:rate5m{job="prometheus"})
- record: instance_path:reloads_failures:rate5m
expr: rate(prometheus_tsdb_reloads_failures_total{job="prometheus"}[5m])
- record: instance_path:reloads:rate5m
expr: rate(prometheus_tsdb_reloads_total{job="prometheus"}[5m])
- record: instance_path:request_failures_per_requests:ratio_rate5m
expr: |2
instance_path:reloads_failures:rate5m{job="prometheus"}
/
instance_path:reloads:rate5m{job="prometheus"}

View File

@@ -1,3 +0,0 @@
FROM prom/prometheus:v1.8.2
ADD prometheus.yml /etc/prometheus/
ADD alert.rules /etc/prometheus/

View File

@@ -1,10 +0,0 @@
# Alert Rules
ALERT AppCrash
IF process_open_fds > 0
FOR 15s
LABELS { severity="critical" }
ANNOTATIONS {
summary = "Number of open fds > 0",
description = "Just testing"
}

View File

@@ -1,26 +0,0 @@
prometheus:
build: docker/blocks/prometheus_mac
ports:
- "9090:9090"
node_exporter:
image: prom/node-exporter
ports:
- "9100:9100"
fake-prometheus-data:
image: grafana/fake-data-gen
ports:
- "9091:9091"
environment:
FD_DATASOURCE: prom
alertmanager:
image: quay.io/prometheus/alertmanager
ports:
- "9093:9093"
prometheus-random-data:
build: docker/blocks/prometheus_random_data
ports:
- "8081:8080"

View File

@@ -1,39 +0,0 @@
# my global config
global:
scrape_interval: 10s # By default, scrape targets every 15 seconds.
evaluation_interval: 10s # By default, scrape targets every 15 seconds.
# scrape_timeout is set to the global default (10s).
# Load and evaluate rules in this file every 'evaluation_interval' seconds.
rule_files:
- "alert.rules"
# - "first.rules"
# - "second.rules"
alerting:
alertmanagers:
- scheme: http
static_configs:
- targets:
- "alertmanager:9093"
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
- job_name: 'node_exporter'
static_configs:
- targets: ['node_exporter:9100']
- job_name: 'fake-data-gen'
static_configs:
- targets: ['fake-prometheus-data:9091']
- job_name: 'grafana'
static_configs:
- targets: ['host.docker.internal:3000']
- job_name: 'prometheus-random-data'
static_configs:
- targets: ['prometheus-random-data:8080']

View File

@@ -1,7 +1,7 @@
# This Dockerfile builds an image for a client_golang example.
# Builder image, where we build the example.
FROM golang:1.13.4 AS builder
FROM golang:1.14.1 AS builder
# Download prometheus/client_golang/examples/random first
RUN go get github.com/prometheus/client_golang/examples/random
WORKDIR /go/src/github.com/prometheus/client_golang

View File

@@ -0,0 +1,6 @@
# There is no data generator for this so easiest way to get some data here is run this example app
# https://github.com/openzipkin/zipkin-js-example/tree/master/web
zipkin:
image: openzipkin/zipkin:latest
ports:
- "9411:9411"

View File

@@ -35,6 +35,12 @@ Run load test for 10 virtual users:
$ ./run.sh -v 10
```
Run load test and send the results to the database "myDb" in influxDB running locally on port 8086 (with no authentication):
```bash
$ ./run.sh -o influxdb=http://localhost:8086/myDb
```
Run auth token slow test (random query latency between 1 and 30 seconds):
```bash

View File

@@ -8,8 +8,9 @@ run() {
vus='2'
testcase='auth_token_test'
slowQuery=''
out=''
while getopts ":d:u:v:c:s:" o; do
while getopts ":d:u:v:c:s:o:" o; do
case "${o}" in
d)
duration=${OPTARG}
@@ -26,11 +27,14 @@ run() {
s)
slowQuery=${OPTARG}
;;
o) out=${OPTARG}
;;
esac
done
shift $((OPTIND-1))
docker run -t --network=host -v $PWD:/src -e URL=$url -e SLOW_QUERY=$slowQuery --rm -i loadimpact/k6:master run --vus $vus --duration $duration src/$testcase.js
docker run -t --network=host -v $PWD:/src -e URL=$url -e SLOW_QUERY=$slowQuery -e K6_OUT=$out --rm -i loadimpact/k6:master run --vus $vus --duration $duration src/$testcase.js
}
run "$@"

View File

@@ -18,14 +18,21 @@ bulkAlertingDashboard() {
requiresJsonnet
COUNTER=0
MAX=100
jsonnet -o "bulk_alerting_dashboards/bulk_alerting_datasources.yaml" ./bulk_alerting_dashboards/datasources.jsonnet
COUNTER=1
DS=1
MAX=1000
while [ $COUNTER -lt $MAX ]; do
jsonnet -o "bulk_alerting_dashboards/alerting_dashboard${COUNTER}.json" -e "local bulkDash = import 'bulk_alerting_dashboards/bulkdash_alerting.jsonnet'; bulkDash + { uid: 'bd-${COUNTER}', title: 'alerting-title-${COUNTER}' }"
jsonnet -o "bulk_alerting_dashboards/alerting_dashboard${COUNTER}.json" \
-e "local bulkDash = import 'bulk_alerting_dashboards/dashboard.libsonnet'; bulkDash.alertingDashboard(${COUNTER}, ${DS})"
let COUNTER=COUNTER+1
let DS=COUNTER/10
let DS=DS+1
done
ln -s -f ../../../devenv/bulk_alerting_dashboards/bulk_alerting_dashboards.yaml ../conf/provisioning/dashboards/custom.yaml
ln -s -f ../../../devenv/bulk_alerting_dashboards/bulk_alerting_datasources.yaml ../conf/provisioning/datasources/custom.yaml
}
requiresJsonnet() {
@@ -52,7 +59,7 @@ usage() {
echo "Usage:"
echo " bulk-dashboards - create and provisioning 400 dashboards"
echo " bulk-alerting-dashboards - create and provisioning 400 dashboards with alerts"
echo " no args - provisiong core datasources and dev dashboards"
echo " no args - provisioning core datasources and dev dashboards"
}
main() {

View File

@@ -1,12 +1,11 @@
.PHONY: docs docs-no-pull docs-test
.PHONY: docs docs-test
IMAGE = grafana/docs-base:latest
docs:
docker pull grafana/docs-base:latest
docker run -v $(PWD)/sources:/hugo/content/docs/grafana/latest -p 3002:3002 --rm -it grafana/docs-base:latest /bin/bash -c 'npm i && make webpack && make docs-menu && hugo server -p 3002 -D --ignoreCache --baseUrl http://localhost:3002 --bind 0.0.0.0'
docs-no-pull:
docker run -v $(PWD)/sources:/hugo/content/docs/grafana/latest -p 3002:3002 --rm -it grafana/docs-base:latest /bin/bash -c 'make docs-menu && hugo server -p 3002 -D --ignoreCache --baseUrl http://localhost:3002 --bind 0.0.0.0'
docker pull ${IMAGE}
docker run -v $(shell pwd)/sources:/hugo/content/docs/grafana/latest -p 3002:3002 --rm -it $(IMAGE) /bin/bash -c 'make server'
docs-test:
docker pull grafana/docs-base:latest
docker run -v $(PWD)/sources:/hugo/content/docs/grafana/latest --rm -it grafana/docs-base:latest /bin/bash -c 'npm i && make prod'
docker pull ${IMAGE}
docker run -v $(shell pwd)/sources:/hugo/content/docs/grafana/latest --rm -it $(IMAGE) /bin/bash -c 'make prod'

View File

@@ -8,7 +8,8 @@ aliases = ["/docs/grafana/v1.1", "/docs/grafana/latest/guides/reference/admin",
# Grafana documentation
<h2>Installing Grafana</h2>
## Installing Grafana
<div class="nav-cards">
<a href="{{< relref "installation/debian.md" >}}" class="nav-cards__item nav-cards__item--install">
<div class="nav-cards__icon fa fa-linux">
@@ -26,8 +27,8 @@ aliases = ["/docs/grafana/v1.1", "/docs/grafana/latest/guides/reference/admin",
<h5>Install on Windows</h5>
</a>
<a href="{{< relref "installation/docker.md" >}}" class="nav-cards__item nav-cards__item--install">
<h4>Run Docker image</h4>
<p>Run Grafana on a Docker image.</p>
<img src="/static/img/logos/logo-docker.svg">
<h5>Run Docker image</h5>
</a>
<a href="https://grafana.com/cloud/grafana" class="nav-cards__item nav-cards__item--install">
<div class="nav-cards__icon fa fa-cloud">
@@ -41,22 +42,22 @@ aliases = ["/docs/grafana/v1.1", "/docs/grafana/latest/guides/reference/admin",
</a>
</div>
<h2>Guides</h2>
## Guides
<div class="nav-cards">
<a href="{{< relref "guides/what-is-grafana.md" >}}" class="nav-cards__item nav-cards__item--guide">
<a href="{{< relref "getting-started/what-is-grafana.md" >}}" class="nav-cards__item nav-cards__item--guide">
<h4>What is Grafana?</h4>
<p>Get an overview of Grafana's key features.</p>
</a>
<a href="{{< relref "guides/getting_started.md" >}}" class="nav-cards__item nav-cards__item--guide">
<a href="{{< relref "getting-started/getting-started.md" >}}" class="nav-cards__item nav-cards__item--guide">
<h4>Getting started</h4>
<p>Learn the basics of using Grafana.</p>
</a>
<a href="{{< relref "installation/configuration.md" >}}" class="nav-cards__item nav-cards__item--guide">
<a href="{{< relref "administration/configuration.md" >}}" class="nav-cards__item nav-cards__item--guide">
<h4>Configure Grafana</h4>
<p>Review the configuration and setup options.</p>
</a>
<a href="{{< relref "guides/timeseries.md" >}}" class="nav-cards__item nav-cards__item--guide">
<a href="{{< relref "getting-started/timeseries.md" >}}" class="nav-cards__item nav-cards__item--guide">
<h4>Intro to time series</h4>
<p>Learn about time series data.</p>
</a>
@@ -64,14 +65,15 @@ aliases = ["/docs/grafana/v1.1", "/docs/grafana/latest/guides/reference/admin",
<h4>Provisioning</h4>
<p>Learn how to automate your Grafana configuration.</p>
</a>
<a href="{{< relref "guides/whats-new-in-v6-6.md" >}}" class="nav-cards__item nav-cards__item--guide">
<h4>What's new in v6.6</h4>
<a href="{{< relref "guides/whats-new-in-v7-0.md" >}}" class="nav-cards__item nav-cards__item--guide">
<h4>What's new in v7.0</h4>
<p>Explore the features and enhancements in the latest release.</p>
</a>
</div>
<h2>Data source guides</h2>
## Data source guides
<div class="nav-cards">
<a href="{{< relref "features/datasources/graphite.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_graphite.svg" >
@@ -89,9 +91,9 @@ aliases = ["/docs/grafana/v1.1", "/docs/grafana/latest/guides/reference/admin",
<img src="/img/docs/logos/icon_prometheus.svg" >
<h5>Prometheus</h5>
</a>
<a href="{{< relref "features/datasources/stackdriver.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_stackdriver.svg">
<h5>Google Stackdriver</h5>
<a href="{{< relref "features/datasources/cloudmonitoring.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_cloudmonitoring.svg">
<h5>Google Cloud Monitoring</h5>
</a>
<a href="{{< relref "features/datasources/cloudwatch.md" >}}" class="nav-cards__item nav-cards__item--ds">
<img src="/img/docs/logos/icon_cloudwatch.svg">

View File

@@ -8,4 +8,6 @@ identifier = "admin"
weight = 2
+++
# Administration
This section provides resources for Grafana administrators.

View File

@@ -23,7 +23,7 @@ grafana-cli -h
Some commands, such as installing or removing plugins, require `sudo` in order to run.
**Windows users**
Some commands, such as installing or removing plugins, require you to run Windows PowerShell as Administrator.
Some commands, such as installing or removing plugins, require you to run Windows PowerShell as Administrator.
Before you enter commands, `cd` into the Grafana bin directory. The default path is:
```
@@ -101,40 +101,40 @@ grafana-cli --insecure --pluginUrl https://company.com/grafana/plugins/<plugin-i
### Enable debug logging
`--debug` or `-d` enables debug logging. Debug output is returned and shown in the terminal.
`--debug` or `-d` enables debug logging. Debug output is returned and shown in the terminal.
**Example:**
```bash
grafana-cli --debug plugins install <plugin-id>
```
### Override a configuration setting
### Override a configuration setting
`--configOverrides` is a command line argument that acts like an environmental variable override.
For example, you can use it to redirect logging to another file (maybe to log plugin installs in a service like Hosted Grafana) or when resetting the admin password and you have non-default values for some important config value (like where the database is located).
For example, you can use it to redirect logging to another file (maybe to log plugin installations in Grafana Cloud) or when resetting the admin password and you have non-default values for some important config value (like where the database is located).
**Example:**
```bash
grafana-cli --configOverrides cfg:default.paths.log=/dev/null plugins install <plugin-id>
```
### Override homepath value
### Override homepath value
Sets the path for the Grafana install/home path, defaults to working directory. You do not need to use this if you are in the Grafana installation directory when using the CLI.
**Example:**
```bash
grafana-cli --homepath "c:\Program Files\grafana" admin reset-admin-password mynewpassword
```
### Override config file
### Override config file
`--config value` overrides the default location where Grafana expects the configuration file. Refer to [Configuration]({{< relref "../installation/configuration.md" >}}) for more information about configuring Grafana and default configuration file locations.
`--config value` overrides the default location where Grafana expects the configuration file. Refer to [Configuration]({{< relref "../administration/configuration.md" >}}) for more information about configuring Grafana and default configuration file locations.
**Example:**
```bash
grafana-cli admin reset-admin-password --config "/etc/configuration/" mynewpassword
grafana-cli --config "/etc/configuration/" admin reset-admin-password mynewpassword
```
## Plugins commands
@@ -200,7 +200,7 @@ grafana-cli admin
If there are two flags being used to set the homepath and the config file path, then running the command returns this error:
> Could not find config defaults, make sure homepath command line parameter is set or working directory is homepath
> Could not find config defaults, make sure homepath command line parameter is set or working directory is homepath
To correct this, use the `--homepath` global option to specify the Grafana default homepath for this command:

File diff suppressed because it is too large Load Diff

View File

@@ -12,9 +12,9 @@ weight = 8
Grafana supports automatic rendering of panels and dashboards as PNG images. This allows Grafana to automatically generate images of your panels to include in [alert notifications]({{< relref "../alerting/notifications.md" >}}).
When an image is being rendered the PNG-image is temporarily written to the file system. When an image is rendered, the PNG image is temporary written to the `png` folder in the Grafana `data` folder.
While an image is being rendered, the PNG image is temporarily written to the file system. When the image is rendered, the PNG image is temporarily written to the `png` folder in the Grafana `data` folder.
A background job runs every 10 minutes and removes temporary images. You can configure how long an image should be stored before being removed by configuring the [temp-data-lifetime]({{< relref "../installation/configuration/#temp-data-lifetime" >}}) setting.
A background job runs every 10 minutes and removes temporary images. You can configure how long an image should be stored before being removed by configuring the [temp-data-lifetime]({{< relref "../administration/configuration/#temp-data-lifetime" >}}) setting.
You can also render a PNG by clicking the dropdown arrow next to a panel title, then clicking **Share > Direct link rendered image**.
@@ -26,7 +26,7 @@ Rendering images can require a lot of memory, mainly because Grafana creates bro
## Alerting and render limits
Alert notifications can include images, but rendering many images at the same time can overload the server where the renderer is running. For instructions of how to configure this, see [concurrent_render_limit]({{< relref "../installation/configuration/#concurrent_render_limit" >}}).
Alert notifications can include images, but rendering many images at the same time can overload the server where the renderer is running. For instructions of how to configure this, see [concurrent_render_limit]({{< relref "../administration/configuration/#concurrent_render_limit" >}}).
## Install Grafana Image Renderer plugin
@@ -108,7 +108,7 @@ The following example describes how to build and run the remote HTTP rendering s
## PhantomJS
> PhantomJS is deprecated since Grafana v6.4 and will be removed in a future release. Please migrate to the Grafana Image Renderer plugin or remote rendering service.
> Starting from Grafana v7.0.0, all PhantomJS support has been removed. Please use the Grafana Image Renderer plugin or remote rendering service.
## Troubleshoot image rendering
@@ -154,9 +154,17 @@ On Ubuntu 18.10 the following dependencies have been confirmed as needed for the
libx11-6 libx11-xcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrender1 libxtst6 libglib2.0-0 libnss3 libcups2 libdbus-1-3 libxss1 libxrandr2 libgtk-3-0 libgtk-3-0 libasound2
```
**Debian:**
On Debian 9 (Stretch) the following dependencies have been confirmed as needed for the image rendering to function.
```bash
libx11 libcairo bcairo2 libcairo2 libxtst6 libxcomposite1 libx11-xcb1 libxcursor1 libxdamage1 libnss3 libcups libcups2 libXss libXss1 libxss1 libxrandr2 libasound2 libatk1.0-0 libatk-bridge2.0-0 libpangocairo-1.0-0 libgtk-3-0
```
**Centos:**
On a minimal Centos install the following dependencies have been confirmed as needed for the image rendering to function:
On a minimal Centos installation, the following dependencies have been confirmed as needed for the image rendering to function:
```bash
libXcomposite libXdamage libXtst cups libXScrnSaver pango atk adwaita-cursor-theme adwaita-icon-theme at at-spi2-atk at-spi2-core cairo-gobject colord-libs dconf desktop-file-utils ed emacs-filesystem gdk-pixbuf2 glib-networking gnutls gsettings-desktop-schemas gtk-update-icon-cache gtk3 hicolor-icon-theme jasper-libs json-glib libappindicator-gtk3 libdbusmenu libdbusmenu-gtk3 libepoxy liberation-fonts liberation-narrow-fonts liberation-sans-fonts liberation-serif-fonts libgusb libindicator-gtk3 libmodman libproxy libsoup libwayland-cursor libwayland-egl libxkbcommon m4 mailx nettle patch psmisc redhat-lsb-core redhat-lsb-submod-security rest spax time trousers xdg-utils xkeyboard-config
@@ -164,7 +172,7 @@ libXcomposite libXdamage libXtst cups libXScrnSaver pango atk adwaita-cursor-the
### Certificate signed by internal certificate authorities
In many cases Grafana, runs on internal servers and uses certificates that have not been signed by a CA ([Certificate Authority](https://en.wikipedia.org/wiki/Certificate_authority)) known to Chrome, and therefore cannot be validated. Chrome internally uses NSS ([Network Security Services](https://en.wikipedia.org/wiki/Network_Security_Services)) for cryptogtraphic operations such as the validation of certificates.
In many cases, Grafana runs on internal servers and uses certificates that have not been signed by a CA ([Certificate Authority](https://en.wikipedia.org/wiki/Certificate_authority)) known to Chrome, and therefore cannot be validated. Chrome internally uses NSS ([Network Security Services](https://en.wikipedia.org/wiki/Network_Security_Services)) for cryptogtraphic operations such as the validation of certificates.
If you are using the Grafana Image Renderer with a Grafana server that uses a certificate signed by such a custom CA (for example a company-internal CA), rendering images will fail and you will see messages like this in the Grafana log:

View File

@@ -1,5 +1,5 @@
+++
title = "Internal metrics"
title = "Internal Grafana metrics"
description = "Internal metrics exposed by Grafana"
keywords = ["grafana", "metrics", "internal metrics"]
type = "docs"
@@ -8,8 +8,87 @@ parent = "admin"
weight = 8
+++
# Internal metrics
# Internal Grafana metrics
Grafana collects some metrics about itself internally. Currently, Grafana supports pushing metrics to Graphite or exposing them to be scraped by Prometheus.
Grafana collects some metrics about itself internally. Grafana supports pushing metrics to Graphite or exposing them to be scraped by Prometheus.
To emit internal metrics you have to enable the option under the [metrics] section in your [grafana.ini](http://docs.grafana.org/installation/configuration/#enabled-6) config file. If you want to push metrics to Graphite, you must also configure the [metrics.graphite](http://docs.grafana.org/installation/configuration/#metrics-graphite) section.
For more information about configuration options related to Grafana metrics, refer to [metrics]({{< relref "../administration/configuration/#metrics" >}}) and [metrics.graphite]({{< relref "../administration/configuration/#metrics-graphite" >}}) in [Configuration]({{< relref "../administration/configuration.md" >}}).
## Available metrics
When enabled, Grafana exposes a number of metrics, including:
* Active Grafana instances
* Number of dashboards, users, and playlists
* HTTP status codes
* Requests by routing group
* Grafana active alerts
* Grafana performance
## Pull metrics from Grafana into Prometheus
These instructions assume you have already added Prometheus as a data source in Grafana.
1. Enable Prometheus to scrape metrics from Grafana. In your configuration file (`grafana.ini` or `custom.ini` depending on your operating system) remove the semicolon to enable the following configuration options:
```
# Metrics available at HTTP API Url /metrics
[metrics]
# Disable / Enable internal metrics
enabled = true
# Disable total stats (stat_totals_*) metrics to be generated
disable_total_stats = false
```
1. (optional) If you want to require authorization to view the metrics endpoint, then uncomment and set the following options:
```
basic_auth_username =
basic_auth_password =
```
1. Restart Grafana. Grafana now exposes metrics at http://localhost:3000/metrics.
1. Add the job to your prometheus.yml file.
Example:
```
- job_name: 'grafana_metrics'
scrape_interval: 15s
scrape_timeout: 5s
static_configs:
- targets: ['localhost:3000']
```
1. Restart Prometheus. Your new job should appear on the Targets tab.
1. In Grafana, hover your mouse over the **Configuration** (gear) icon on the left sidebar and then click **Data Sources**.
1. Select the **Prometheus** data source.
1. On the Dashboards tab, **Import** the Grafana metrics dashboard. All scraped Grafana metrics are available in the dashboard.
## View Grafana metrics in Graphite
These instructions assume you have already added Graphite as a data source in Grafana.
1. Enable sending metrics to Graphite. In your configuration file (`grafana.ini` or `custom.ini` depending on your operating system) remove the semicolon to enable the following configuration options:
```
# Metrics available at HTTP API Url /metrics
[metrics]
# Disable / Enable internal metrics
enabled = true
# Disable total stats (stat_totals_*) metrics to be generated
disable_total_stats = false
```
1. Enable [metrics.graphite] options:
```
# Send internal metrics to Graphite
[metrics.graphite]
# Enable by setting the address setting (ex localhost:2003)
address = <hostname or ip>:<port#>
prefix = prod.grafana.%(instance_name)s.
```
1. Restart Grafana. Grafana now exposes metrics at http://localhost:3000/metrics and sends them to the Graphite location you specified.

460
docs/sources/administration/provisioning.md Executable file → Normal file
View File

@@ -15,7 +15,7 @@ In previous versions of Grafana, you could only use the API for provisioning dat
## Config File
Check out the [configuration]({{< relref "../installation/configuration" >}}) page for more information on what you can configure in `grafana.ini`
Check out the [configuration]({{< relref "configuration.md" >}}) page for more information on what you can configure in `grafana.ini`
### Config File Locations
@@ -38,11 +38,11 @@ Example:
```yaml
datasources:
- name: Graphite
url: http://localhost:$PORT
user: $USER
secureJsonData:
password: $PASSWORD
- name: Graphite
url: http://localhost:$PORT
user: $USER
secureJsonData:
password: $PASSWORD
```
If you have a literal `$` in your value and want to avoid interpolation, `$$` can be used.
@@ -51,27 +51,27 @@ If you have a literal `$` in your value and want to avoid interpolation, `$$` ca
## Configuration Management Tools
Currently we do not provide any scripts/manifests for configuring Grafana. Rather than spending time learning and creating scripts/manifests for each tool, we think our time is better spent making Grafana easier to provision. Therefore, we heavily relay on the expertise of the community.
Currently we do not provide any scripts/manifests for configuring Grafana. Rather than spending time learning and creating scripts/manifests for each tool, we think our time is better spent making Grafana easier to provision. Therefore, we heavily rely on the expertise of the community.
Tool | Project
-----|------------
Puppet | [https://forge.puppet.com/puppet/grafana](https://forge.puppet.com/puppet/grafana)
Ansible | [https://github.com/cloudalchemy/ansible-grafana](https://github.com/cloudalchemy/ansible-grafana)
Chef | [https://github.com/JonathanTron/chef-grafana](https://github.com/JonathanTron/chef-grafana)
Saltstack | [https://github.com/salt-formulas/salt-formula-grafana](https://github.com/salt-formulas/salt-formula-grafana)
Jsonnet | [https://github.com/grafana/grafonnet-lib/](https://github.com/grafana/grafonnet-lib/)
| Tool | Project |
| --------- | -------------------------------------------------------------------------------------------------------------- |
| Puppet | [https://forge.puppet.com/puppet/grafana](https://forge.puppet.com/puppet/grafana) |
| Ansible | [https://github.com/cloudalchemy/ansible-grafana](https://github.com/cloudalchemy/ansible-grafana) |
| Chef | [https://github.com/JonathanTron/chef-grafana](https://github.com/JonathanTron/chef-grafana) |
| Saltstack | [https://github.com/salt-formulas/salt-formula-grafana](https://github.com/salt-formulas/salt-formula-grafana) |
| Jsonnet | [https://github.com/grafana/grafonnet-lib/](https://github.com/grafana/grafonnet-lib/) |
## Datasources
## Data sources
> This feature is available from v5.0
It's possible to manage datasources in Grafana by adding one or more yaml config files in the [`provisioning/datasources`](/installation/configuration/#provisioning) directory. Each config file can contain a list of `datasources` that will be added or updated during start up. If the datasource already exists, Grafana will update it to match the configuration file. The config file can also contain a list of datasources that should be deleted. That list is called `deleteDatasources`. Grafana will delete datasources listed in `deleteDatasources` before inserting/updating those in the `datasource` list.
It's possible to manage data sources in Grafana by adding one or more yaml config files in the [`provisioning/datasources`](/administration/configuration/#provisioning) directory. Each config file can contain a list of `datasources` that will be added or updated during start up. If the data source already exists, then Grafana updates it to match the configuration file. The config file can also contain a list of data sources that should be deleted. That list is called `deleteDatasources`. Grafana will delete data sources listed in `deleteDatasources` before inserting/updating those in the `datasource` list.
### Running Multiple Grafana Instances
If you are running multiple instances of Grafana you might run into problems if they have different versions of the `datasource.yaml` configuration file. The best way to solve this problem is to add a version number to each datasource in the configuration and increase it when you update the config. Grafana will only update datasources with the same or lower version number than specified in the config. That way, old configs cannot overwrite newer configs if they restart at the same time.
### Example Datasource Config File
### Example data source Config File
```yaml
# config file version
@@ -86,105 +86,112 @@ deleteDatasources:
# what's available in the database
datasources:
# <string, required> name of the datasource. Required
- name: Graphite
# <string, required> datasource type. Required
type: graphite
# <string, required> access mode. proxy or direct (Server or Browser in the UI). Required
access: proxy
# <int> org id. will default to orgId 1 if not specified
orgId: 1
# <string> url
url: http://localhost:8080
# <string> Deprecated, use secureJsonData.password
password:
# <string> database user, if used
user:
# <string> database name, if used
database:
# <bool> enable/disable basic auth
basicAuth:
# <string> basic auth username
basicAuthUser:
# <string> Deprecated, use secureJsonData.basicAuthPassword
basicAuthPassword:
# <bool> enable/disable with credentials headers
withCredentials:
# <bool> mark as default datasource. Max one per org
isDefault:
# <map> fields that will be converted to json and stored in jsonData
jsonData:
graphiteVersion: "1.1"
tlsAuth: true
tlsAuthWithCACert: true
# <string> json object of data that will be encrypted.
secureJsonData:
tlsCACert: "..."
tlsClientCert: "..."
tlsClientKey: "..."
# <string> database password, if used
- name: Graphite
# <string, required> datasource type. Required
type: graphite
# <string, required> access mode. proxy or direct (Server or Browser in the UI). Required
access: proxy
# <int> org id. will default to orgId 1 if not specified
orgId: 1
# <string> custom UID which can be used to reference this datasource in other parts of the configuration, if not specified will be generated automatically
uid: my_unique_uid
# <string> url
url: http://localhost:8080
# <string> Deprecated, use secureJsonData.password
password:
# <string> basic auth password
# <string> database user, if used
user:
# <string> database name, if used
database:
# <bool> enable/disable basic auth
basicAuth:
# <string> basic auth username
basicAuthUser:
# <string> Deprecated, use secureJsonData.basicAuthPassword
basicAuthPassword:
version: 1
# <bool> allow users to edit datasources from the UI.
editable: false
# <bool> enable/disable with credentials headers
withCredentials:
# <bool> mark as default datasource. Max one per org
isDefault:
# <map> fields that will be converted to json and stored in jsonData
jsonData:
graphiteVersion: '1.1'
tlsAuth: true
tlsAuthWithCACert: true
# <string> json object of data that will be encrypted.
secureJsonData:
tlsCACert: '...'
tlsClientCert: '...'
tlsClientKey: '...'
# <string> database password, if used
password:
# <string> basic auth password
basicAuthPassword:
version: 1
# <bool> allow users to edit datasources from the UI.
editable: false
```
#### Custom Settings per Datasource
Please refer to each datasource documentation for specific provisioning examples.
| Datasource | Misc |
| ---- | ---- |
| Datasource | Misc |
| ------------- | ---------------------------------------------------------------------------------- |
| Elasticsearch | Elasticsearch uses the `database` property to configure the index for a datasource |
#### Json Data
Since not all datasources have the same configuration settings we only have the most common ones as fields. The rest should be stored as a json blob in the `jsonData` field. Here are the most common settings that the core datasources use.
| Name | Type | Datasource | Description |
| ---- | ---- | ---- | ---- |
| tlsAuth | boolean | *All* | Enable TLS authentication using client cert configured in secure json data |
| tlsAuthWithCACert | boolean | *All* | Enable TLS authentication using CA cert |
| tlsSkipVerify | boolean | *All* | Controls whether a client verifies the server's certificate chain and host name. |
| graphiteVersion | string | Graphite | Graphite version |
| timeInterval | string | Prometheus, Elasticsearch, InfluxDB, MySQL, PostgreSQL and MSSQL | Lowest interval/step value that should be used for this data source |
| esVersion | number | Elasticsearch | Elasticsearch version as a number (2/5/56/60/70) |
| timeField | string | Elasticsearch | Which field that should be used as timestamp |
| interval | string | Elasticsearch | Index date time format. nil(No Pattern), 'Hourly', 'Daily', 'Weekly', 'Monthly' or 'Yearly' |
| logMessageField | string | Elasticsearch | Which field should be used as the log message |
| logLevelField | string | Elasticsearch | Which field should be used to indicate the priority of the log message |
| authType | string | Cloudwatch | Auth provider. keys/credentials/arn |
| assumeRoleArn | string | Cloudwatch | ARN of Assume Role |
| defaultRegion | string | Cloudwatch | AWS region |
| customMetricsNamespaces | string | Cloudwatch | Namespaces of Custom Metrics |
| tsdbVersion | string | OpenTSDB | Version |
| tsdbResolution | string | OpenTSDB | Resolution |
| sslmode | string | PostgreSQL | SSLmode. 'disable', 'require', 'verify-ca' or 'verify-full' |
| encrypt | string | MSSQL | Connection SSL encryption handling. 'disable', 'false' or 'true' |
| postgresVersion | number | PostgreSQL | Postgres version as a number (903/904/905/906/1000) meaning v9.3, v9.4, ..., v10 |
| timescaledb | boolean | PostgreSQL | Enable usage of TimescaleDB extension |
| maxOpenConns | number | MySQL, PostgreSQL and MSSQL | Maximum number of open connections to the database (Grafana v5.4+) |
| maxIdleConns | number | MySQL, PostgreSQL and MSSQL | Maximum number of connections in the idle connection pool (Grafana v5.4+) |
| connMaxLifetime | number | MySQL, PostgreSQL and MSSQL | Maximum amount of time in seconds a connection may be reused (Grafana v5.4+) |
| Name | Type | Datasource | Description |
| ----------------------- | ------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| tlsAuth | boolean | _All_ | Enable TLS authentication using client cert configured in secure json data |
| tlsAuthWithCACert | boolean | _All_ | Enable TLS authentication using CA cert |
| tlsSkipVerify | boolean | _All_ | Controls whether a client verifies the server's certificate chain and host name. |
| graphiteVersion | string | Graphite | Graphite version |
| timeInterval | string | Prometheus, Elasticsearch, InfluxDB, MySQL, PostgreSQL and MSSQL | Lowest interval/step value that should be used for this data source |
| esVersion | number | Elasticsearch | Elasticsearch version as a number (2/5/56/60/70) |
| timeField | string | Elasticsearch | Which field that should be used as timestamp |
| interval | string | Elasticsearch | Index date time format. nil(No Pattern), 'Hourly', 'Daily', 'Weekly', 'Monthly' or 'Yearly' |
| logMessageField | string | Elasticsearch | Which field should be used as the log message |
| logLevelField | string | Elasticsearch | Which field should be used to indicate the priority of the log message |
| authType | string | Cloudwatch | Auth provider. keys/credentials/arn |
| assumeRoleArn | string | Cloudwatch | ARN of Assume Role |
| defaultRegion | string | Cloudwatch | AWS region |
| customMetricsNamespaces | string | Cloudwatch | Namespaces of Custom Metrics |
| tsdbVersion | string | OpenTSDB | Version |
| tsdbResolution | string | OpenTSDB | Resolution |
| sslmode | string | PostgreSQL | SSLmode. 'disable', 'require', 'verify-ca' or 'verify-full' |
| sslRootCertFile | string | PostgreSQL | SSL server root certificate file, must be readable by the Grafana user |
| sslCertFile | string | PostgreSQL | SSL client certificate file, must be readable by the Grafana user |
| sslKeyFile | string | PostgreSQL | SSL client key file, must be readable by _only_ the Grafana user |
| encrypt | string | MSSQL | Connection SSL encryption handling. 'disable', 'false' or 'true' |
| postgresVersion | number | PostgreSQL | Postgres version as a number (903/904/905/906/1000) meaning v9.3, v9.4, ..., v10 |
| timescaledb | boolean | PostgreSQL | Enable usage of TimescaleDB extension |
| maxOpenConns | number | MySQL, PostgreSQL and MSSQL | Maximum number of open connections to the database (Grafana v5.4+) |
| maxIdleConns | number | MySQL, PostgreSQL and MSSQL | Maximum number of connections in the idle connection pool (Grafana v5.4+) |
| connMaxLifetime | number | MySQL, PostgreSQL and MSSQL | Maximum amount of time in seconds a connection may be reused (Grafana v5.4+) |
#### Secure Json Data
`{"authType":"keys","defaultRegion":"us-west-2","timeField":"@timestamp"}`
Secure json data is a map of settings that will be encrypted with [secret key]({{< relref "../installation/configuration/#secret-key" >}}) from the Grafana config. The purpose of this is only to hide content from the users of the application. This should be used for storing TLS Cert and password that Grafana will append to the request on the server side. All of these settings are optional.
Secure json data is a map of settings that will be encrypted with [secret key]({{< relref "configuration.md#secret-key" >}}) from the Grafana config. The purpose of this is only to hide content from the users of the application. This should be used for storing TLS Cert and password that Grafana will append to the request on the server side. All of these settings are optional.
| Name | Type | Datasource | Description |
| ----| ---- | ---- | --- |
| tlsCACert | string | *All* |CA cert for out going requests |
| tlsClientCert | string | *All* |TLS Client cert for outgoing requests |
| tlsClientKey | string | *All* |TLS Client key for outgoing requests |
| password | string | *All* | password |
| basicAuthPassword | string | *All* | password for basic authentication |
| accessKey | string | Cloudwatch | Access key for connecting to Cloudwatch |
| secretKey | string | Cloudwatch | Secret key for connecting to Cloudwatch |
| Name | Type | Datasource | Description |
| ----------------- | ------ | ---------- | --------------------------------------- |
| tlsCACert | string | _All_ | CA cert for out going requests |
| tlsClientCert | string | _All_ | TLS Client cert for outgoing requests |
| tlsClientKey | string | _All_ | TLS Client key for outgoing requests |
| password | string | _All_ | password |
| basicAuthPassword | string | _All_ | password for basic authentication |
| accessKey | string | Cloudwatch | Access key for connecting to Cloudwatch |
| secretKey | string | Cloudwatch | Secret key for connecting to Cloudwatch |
#### Custom HTTP headers for datasources
Datasources managed by Grafanas provisioning can be configured to add HTTP headers to all requests
Data sources managed by Grafanas provisioning can be configured to add HTTP headers to all requests
going to that datasource. The header name is configured in the `jsonData` field and the header value should be
configured in `secureJsonData`.
@@ -192,18 +199,48 @@ configured in `secureJsonData`.
apiVersion: 1
datasources:
- name: Graphite
jsonData:
httpHeaderName1: "HeaderName"
httpHeaderName2: "Authorization"
secureJsonData:
httpHeaderValue1: "HeaderValue"
httpHeaderValue2: "Bearer XXXXXXXXX"
- name: Graphite
jsonData:
httpHeaderName1: 'HeaderName'
httpHeaderName2: 'Authorization'
secureJsonData:
httpHeaderValue1: 'HeaderValue'
httpHeaderValue2: 'Bearer XXXXXXXXX'
```
### Dashboards
## Plugins
It's possible to manage dashboards in Grafana by adding one or more yaml config files in the [`provisioning/dashboards`](/installation/configuration/#provisioning) directory. Each config file can contain a list of `dashboards providers` that will load dashboards into Grafana from the local filesystem.
> This feature is available from v7.1
You can manage plugins in Grafana by adding one or more YAML config files in the [`provisioning/plugins`]({{< relref "configuration.md#provisioning" >}}) directory. Each config file can contain a list of `apps` that will be updated during start up. Grafana updates each app to match the configuration file.
### Example plugin configuration file
```yaml
apiVersion: 1
apps:
# <string> the type of app, plugin identifier. Required
- type: raintank-worldping-app
# <int> Org ID. Default to 1, unless org_name is specified
org_id: 1
# <string> Org name. Overrides org_id unless org_id not specified
org_name: Main Org.
# <bool> disable the app. Default to false.
disabled: false
# <map> fields that will be converted to json and stored in jsonData. Custom per app.
jsonData:
# key/value pairs of string to object
key: value
# <map> fields that will be converted to json, encrypted and stored in secureJsonData. Custom per app.
secureJsonData:
# key/value pairs of string to string
key: value
```
## Dashboards
You can manage dashboards in Grafana by adding one or more YAML config files in the [`provisioning/dashboards`]({{< relref "configuration.md" >}}) directory. Each config file can contain a list of `dashboards providers` that load dashboards into Grafana from the local filesystem.
The dashboard provider config file looks somewhat like this:
@@ -211,46 +248,49 @@ The dashboard provider config file looks somewhat like this:
apiVersion: 1
providers:
# <string> an unique provider name
- name: 'a unique provider name'
# <int> org id. will default to orgId 1 if not specified
orgId: 1
# <string, required> name of the dashboard folder. Required
folder: ''
# <string> folder UID. will be automatically generated if not specified
folderUid: ''
# <string, required> provider type. Required
type: file
# <bool> disable dashboard deletion
disableDeletion: false
# <bool> enable dashboard editing
editable: true
# <int> how often Grafana will scan for changed dashboards
updateIntervalSeconds: 10
# <bool> allow updating provisioned dashboards from the UI
allowUiUpdates: false
options:
# <string, required> path to dashboard files on disk. Required
path: /var/lib/grafana/dashboards
# <string> an unique provider name. Required
- name: 'a unique provider name'
# <int> Org id. Default to 1
orgId: 1
# <string> name of the dashboard folder.
folder: ''
# <string> folder UID. will be automatically generated if not specified
folderUid: ''
# <string> provider type. Default to 'file'
type: file
# <bool> disable dashboard deletion
disableDeletion: false
# <bool> enable dashboard editing
editable: true
# <int> how often Grafana will scan for changed dashboards
updateIntervalSeconds: 10
# <bool> allow updating provisioned dashboards from the UI
allowUiUpdates: false
options:
# <string, required> path to dashboard files on disk. Required when using the 'file' type
path: /var/lib/grafana/dashboards
# <bool> use folder names from filesystem to create folders in Grafana
foldersFromFilesStructure: true
```
When Grafana starts, it will update/insert all dashboards available in the configured path. Then later on poll that path every **updateIntervalSeconds** and look for updated json files and update/insert those into the database.
#### Making changes to a provisioned dashboard
It's possible to make changes to a provisioned dashboard in the Grafana UI. However, it is not possible to automatically save the changes back to the provisioning source.
If `allowUiUpdates` is set to `true` and you make changes to a provisioned dashboard, you can `Save` the dashboard then changes will be persisted to the Grafana database.
> **Note.**
> **Note:**
> If a provisioned dashboard is saved from the UI and then later updated from the source, the dashboard stored in the database will always be overwritten. The `version` property in the JSON file will not affect this, even if it is lower than the existing dashboard.
>
>
> If a provisioned dashboard is saved from the UI and the source is removed, the dashboard stored in the database will be deleted unless the configuration option `disableDeletion` is set to true.
If `allowUiUpdates` is configured to `false`, you are not able to make changes to a provisioned dashboard. When you click `Save`, Grafana brings up a *Cannot save provisioned dashboard* dialog. The screenshot below illustrates this behavior.
If `allowUiUpdates` is configured to `false`, you are not able to make changes to a provisioned dashboard. When you click `Save`, Grafana brings up a _Cannot save provisioned dashboard_ dialog. The screenshot below illustrates this behavior.
Grafana offers options to export the JSON definition of a dashboard. Either `Copy JSON to Clipboard` or `Save JSON to file` can help you synchronize your dashboard changes back to the provisioning source.
Note: The JSON definition in the input field when using `Copy JSON to Clipboard` or `Save JSON to file` will have the `id` field automatically removed to aid the provisioning workflow.
{{< docs-imagebox img="/img/docs/v51/provisioning_cannot_save_dashboard.png" max-width="500px" class="docs-image--no-shadow" >}}
### Reusable Dashboard URLs
@@ -264,11 +304,41 @@ By default Grafana will delete dashboards in the database if the file is removed
> Be careful not to re-use the same `title` multiple times within a folder
> or `uid` within the same installation as this will cause weird behaviors.
### Provision folders structure from filesystem to Grafana
If you already store your dashboards using folders in a git repo or on a filesystem, and also you want to have the same folder names in the Grafana menu, you can use `foldersFromFilesStructure` option.
For example, to replicate these dashboards structure from the filesystem to Grafana,
```
/etc/dashboards
├── /server
│ ├── /common_dashboard.json
│ └── /network_dashboard.json
└── /application
├── /requests_dashboard.json
└── /resources_dashboard.json
```
you need to specify just this short provision configuration file.
```yaml
apiVersion: 1
providers:
- name: dashboards
type: file
updateIntervalSeconds: 30
options:
path: /etc/dashboards
foldersFromFileStructure: true
```
`server` and `application` will become new folders in Grafana menu.
> **Note.** `folder` and `folderUid` options should be empty or missing to make `foldersFromFileStructure` works.
## Alert Notification Channels
Alert Notification Channels can be provisioned by adding one or more yaml config files in the [`provisioning/notifiers`](/installation/configuration/#provisioning) directory.
Alert Notification Channels can be provisioned by adding one or more yaml config files in the [`provisioning/notifiers`](/administration/configuration/#provisioning) directory.
Each config file can contain the following top-level fields:
- `notifiers`, a list of alert notifications that will be added or updated during start up. If the notification channel already exists, Grafana will update it to match the configuration file.
- `delete_notifiers`, a list of alert notifications to be deleted before inserting/updating those in the `notifiers` list.
@@ -311,8 +381,8 @@ notifiers:
# See `Supported Settings` section for settings supporter for each
# alert notification type.
settings:
recipient: "XXX"
token: "xoxb"
recipient: 'XXX'
token: 'xoxb'
uploadImage: true
url: https://slack.com
@@ -333,128 +403,131 @@ The following sections detail the supported settings for each alert notification
#### Alert notification `pushover`
| Name |
| ---- |
| Name |
| -------- |
| apiToken |
| userKey |
| device |
| retry |
| expire |
| userKey |
| device |
| retry |
| expire |
#### Alert notification `slack`
| Name |
| ---- |
| url |
| recipient |
| username |
| icon_emoji |
| icon_url |
| uploadImage |
| mentionUsers |
| mentionGroups |
| Name |
| -------------- |
| url |
| recipient |
| username |
| icon_emoji |
| icon_url |
| uploadImage |
| mentionUsers |
| mentionGroups |
| mentionChannel |
| token |
| token |
#### Alert notification `victorops`
| Name |
| ---- |
| url |
| Name |
| ----------- |
| url |
| autoResolve |
#### Alert notification `kafka`
| Name |
| ---- |
| Name |
| -------------- |
| kafkaRestProxy |
| kafkaTopic |
| kafkaTopic |
#### Alert notification `LINE`
| Name |
| ---- |
| Name |
| ----- |
| token |
#### Alert notification `pagerduty`
| Name |
| ---- |
| Name |
| -------------- |
| integrationKey |
| autoResolve |
| autoResolve |
#### Alert notification `sensu`
| Name |
| ---- |
| url |
| source |
| handler |
| Name |
| -------- |
| url |
| source |
| handler |
| username |
| password |
#### Alert notification `prometheus-alertmanager`
| Name |
| ---- |
| url |
| Name |
| ----------------- |
| url |
| basicAuthUser |
| basicAuthPassword |
#### Alert notification `teams`
| Name |
| ---- |
| url |
| url |
#### Alert notification `dingding`
| Name |
| ---- |
| url |
| url |
#### Alert notification `email`
| Name |
| ---- |
| addresses |
| Name |
| ----------- |
| singleEmail |
| addresses |
#### Alert notification `hipchat`
| Name |
| ---- |
| url |
| Name |
| ------ |
| url |
| apikey |
| roomid |
#### Alert notification `opsgenie`
| Name |
| ---- |
| apiKey |
| apiUrl |
| autoClose |
| Name |
| ---------------- |
| apiKey |
| apiUrl |
| autoClose |
| overridePriority |
#### Alert notification `telegram`
| Name |
| ---- |
| bottoken |
| chatid |
| Name |
| ----------- |
| bottoken |
| chatid |
| uploadImage |
#### Alert notification `threema`
| Name |
| ---- |
| gateway_id |
| Name |
| ------------ |
| gateway_id |
| recipient_id |
| api_secret |
| api_secret |
#### Alert notification `webhook`
| Name |
| ---- |
| url |
| Name |
| -------- |
| url |
| username |
| password |
@@ -462,5 +535,4 @@ The following sections detail the supported settings for each alert notification
| Name |
| ---- |
| url |
| url |

View File

@@ -7,3 +7,51 @@ parent = "features"
weight = 6
+++
# Alerts overview
Alerts allow you to identify problems in your system moments after they occur. By quickly identifying unintended changes in your system, you can minimize disruptions to your services.
Alerts consists of two parts:
- Alert rules - When the alert is triggered. Alert rules are defined by one or more conditions that are regularly evaluated by Grafana.
- Notification channel - How the alert is delivered. When the conditions of an alert rule are met, the Grafana notifies the channels configured for that alert.
Currently only the graph panel visualization supports alerts.
## Alert tasks
You can perform the following tasks for alerts:
- [Add or edit an alert notification channel]({{< relref "notifications.md" >}})
- [Create an alert rule]({{< relref "create-alerts.md" >}})
- [View existing alert rules and their current state]({{< relref "view-alerts.md" >}})
- [Test alert rules and troubleshoot]({{< relref "troubleshoot-alerts.md" >}})
## Clustering
Currently alerting supports a limited form of high availability. Since v4.2.0 of Grafana, alert notifications are deduped when running multiple servers. This means all alerts are executed on every server but no duplicate alert notifications are sent due to the deduping logic. Proper load balancing of alerts will be introduced in the future.
## Notifications
You can also set alert rule notifications along with a detailed message about the alert rule. The message can contain anything: information about how you might solve the issue, link to runbook, and so on.
The actual notifications are configured and shared between multiple alerts.
## Alert execution
Alert rules are evaluated in the Grafana backend in a scheduler and query execution engine that is part
of core Grafana. Only some data sources are supported right now. They include `Graphite`, `Prometheus`, `InfluxDB`, `Elasticsearch`,
`Google Cloud Monitoring`, `Cloudwatch`, `Azure Monitor`, `MySQL`, `PostgreSQL`, `MSSQL`, `OpenTSDB`, `Oracle`, and `Azure Data Explorer`.
## Metrics from the alert engine
The alert engine publishes some internal metrics about itself. You can read more about how Grafana publishes [internal metrics]({{< relref "../administration/metrics/" >}}).
Description | Type | Metric name
---------- | ----------- | ----------
Total number of alerts | counter | `alerting.active_alerts`
Alert execution result | counter | `alerting.result`
Notifications sent counter | counter | `alerting.notifications_sent`
Alert execution timer | timer | `alerting.execution_time`

View File

@@ -0,0 +1,56 @@
+++
title = "Alerts overview"
type = "docs"
[menu.docs]
identifier = "alerting"
parent = "Alerting"
aliases = ["/docs/grafana/latest/alerting/rules/", "/docs/grafana/latest/alerting/metrics/", "/docs/grafana/latest/alerting/rules/#query-condition-example", "/docs/grafana/latest/alerting/rules/#for", "/docs/grafana/latest/alerting/rules/#rule-config"]
weight = 100
+++
# Alerts overview
Alerts allow you to identify problems in your system moments after they occur. By quickly identifying unintended changes in your system, you can minimize disruptions to your services.
Alerts consists of two parts:
- Alert rules - When the alert is triggered. Alert rules are defined by one or more conditions that are regularly evaluated by Grafana.
- Notification channel - How the alert is delivered. When the conditions of an alert rule are met, the Grafana notifies the channels configured for that alert.
Currently only the graph panel visualization supports alerts.
## Alert tasks
You can perform the following tasks for alerts:
- [Add or edit an alert notification channel]({{< relref "notifications.md" >}})
- [Create an alert rule]({{< relref "create-alerts.md" >}})
- [View existing alert rules and their current state]({{< relref "view-alerts.md" >}})
- [Test alert rules and troubleshoot]({{< relref "troubleshoot-alerts.md" >}})
## Clustering
Currently alerting supports a limited form of high availability. Since v4.2.0 of Grafana, alert notifications are deduped when running multiple servers. This means all alerts are executed on every server but no duplicate alert notifications are sent due to the deduping logic. Proper load balancing of alerts will be introduced in the future.
## Notifications
You can also set alert rule notifications along with a detailed message about the alert rule. The message can contain anything: information about how you might solve the issue, link to runbook, and so on.
The actual notifications are configured and shared between multiple alerts.
## Alert execution
Alert rules are evaluated in the Grafana backend in a scheduler and query execution engine that is part
of core Grafana. Only some data sources are supported right now. They include `Graphite`, `Prometheus`, `InfluxDB`, `Elasticsearch`,
`Google Cloud Monitoring`, `Cloudwatch`, `Azure Monitor`, `MySQL`, `PostgreSQL`, `MSSQL`, `OpenTSDB`, `Oracle`, and `Azure Data Explorer`.
## Metrics from the alert engine
The alert engine publishes some internal metrics about itself. You can read more about how Grafana publishes [internal metrics]({{< relref "../administration/metrics/" >}}).
Description | Type | Metric name
---------- | ----------- | ----------
Total number of alerts | counter | `alerting.active_alerts`
Alert execution result | counter | `alerting.result`
Notifications sent counter | counter | `alerting.notifications_sent`
Alert execution timer | timer | `alerting.execution_time`

View File

@@ -0,0 +1,129 @@
+++
title = "Create alerts"
description = "Configure alert rules"
keywords = ["grafana", "alerting", "guide", "rules"]
type = "docs"
[menu.docs]
name = "Create alerts"
parent = "alerting"
weight = 200
+++
# Create alerts
Grafana alerting allows you to attach rules to your dashboard panels. When you save the dashboard, Grafana extracts the alert rules into a separate alert rule storage and schedules them for evaluation.
{{< imgbox max-width="1000px" img="/img/docs/alerting/drag_handles_gif.gif" caption="Alerting overview" >}}
In the Alert tab of the graph panel you can configure how often the alert rule should be evaluated and the conditions that need to be met for the alert to change state and trigger its [notifications]({{< relref "notifications.md" >}}).
Currently only the graph panel supports alert rules.
## Add or edit an alert rule
1. Navigate to the panel you want to add or edit an alert rule for, click the title, and then click **Edit**.
1. On the Alert tab, click **Create Alert**. If an alert already exists for this panel, then you can just edit the fields on the Alert tab.
1. Fill out the fields. Descriptions are listed below in [Alert rule fields](#alert-rule-fields).
1. When you have finished writing your rule, click **Save** in the upper right corner to save alert rule and the dashboard.
1. (Optional but recommended) Click **Test rule** to make sure the rule returns the results you expect.
## Delete an alert
To delete an alert, scroll to the bottom of the alert and then click **Delete**.
## Alert rule fields
This section describes the fields you fill out to create an alert.
### Rule
- **Name -** Enter a descriptive name. The name will be displayed in the Alert Rules list.
- **Evaluate every -** Specify how often the scheduler should evaluate the alert rule. This is referred to as the _evaluation interval_.
- **For -** Specify how long the query needs to violate the configured thresholds before the alert notification triggers.
You can set a minimum evaluation interval in the `alerting.min_interval_seconds` config field, to set a minimum time between evaluations. Refer to [Configuration]({{< relref "../administration/configuration.md" >}}#min-interval-seconds) for more information.
> **Caution:** Do not use `For` with the `If no data or all values are null` setting set to `No Data`. The triggering of `No Data` will trigger instantly and not take `For` into consideration. This may also result in that an OK notification not being sent if alert transitions from `No Data -> Pending -> OK`.
If an alert rule has a configured `For` and the query violates the configured threshold, then it will first go from `OK` to `Pending`. Going from `OK` to `Pending` Grafana will not send any notifications. Once the alert rule has been firing for more than `For` duration, it will change to `Alerting` and send alert notifications.
Typically, it's always a good idea to use this setting since it's often worse to get false positive than wait a few minutes before the alert notification triggers. Looking at the `Alert list` or `Alert list panels` you will be able to see alerts in pending state.
Below you can see an example timeline of an alert using the `For` setting. At ~16:04 the alert state changes to `Pending` and after 4 minutes it changes to `Alerting` which is when alert notifications are sent. Once the series falls back to normal the alert rule goes back to `OK`.
{{< imgbox img="/img/docs/v54/alerting-for-dark-theme.png" caption="Alerting For" >}}
{{< imgbox max-width="40%" img="/img/docs/v4/alerting_conditions.png" caption="Alerting Conditions" >}}
### Conditions
Currently the only condition type that exists is a `Query` condition that allows you to
specify a query letter, time range and an aggregation function.
#### Query condition example
```sql
avg() OF query(A, 15m, now) IS BELOW 14
```
- `avg()` Controls how the values for **each** series should be reduced to a value that can be compared against the threshold. Click on the function to change it to another aggregation function.
- `query(A, 15m, now)` The letter defines what query to execute from the **Metrics** tab. The second two parameters define the time range, `15m, now` means 15 minutes ago to now. You can also do `10m, now-2m` to define a time range that will be 10 minutes ago to 2 minutes ago. This is useful if you want to ignore the last 2 minutes of data.
- `IS BELOW 14` Defines the type of threshold and the threshold value. You can click on `IS BELOW` to change the type of threshold.
The query used in an alert rule cannot contain any template variables. Currently we only support `AND` and `OR` operators between conditions and they are executed serially.
For example, we have 3 conditions in the following order:
_condition:A(evaluates to: TRUE) OR condition:B(evaluates to: FALSE) AND condition:C(evaluates to: TRUE)_
so the result will be calculated as ((TRUE OR FALSE) AND TRUE) = TRUE.
We plan to add other condition types in the future, like `Other Alert`, where you can include the state of another alert in your conditions, and `Time Of Day`.
#### Multiple Series
If a query returns multiple series then the aggregation function and threshold check will be evaluated for each series. What Grafana does not do currently is track alert rule state **per series**. This has implications that are detailed in the scenario below.
- Alert condition with query that returns 2 series: **server1** and **server2**
- **server1** series causes the alert rule to fire and switch to state `Alerting`
- Notifications are sent out with message: _load peaking (server1)_
- In a subsequent evaluation of the same alert rule, the **server2** series also causes the alert rule to fire
- No new notifications are sent as the alert rule is already in state `Alerting`.
So as you can see from the above scenario Grafana will not send out notifications when other series cause the alert to fire if the rule already is in state `Alerting`. To improve support for queries that return multiple series we plan to track state **per series** in a future release.
> Starting with Grafana v5.3 you can configure reminders to be sent for triggered alerts. This will send additional notifications
> when an alert continues to fire. If other series (like server2 in the example above) also cause the alert rule to fire they will be included in the reminder notification. Depending on what notification channel you're using you may be able to take advantage of this feature for identifying new/existing series causing alert to fire.
### No Data & Error Handling
Below are conditions you can configure how the rule evaluation engine should handle queries that return no data or only null values.
| No Data Option | Description |
| --------------- | ------------------------------------------------------------------------------------------ |
| No Data | Set alert rule state to `NoData` |
| Alerting | Set alert rule state to `Alerting` |
| Keep Last State | Keep the current alert rule state, what ever it is. |
| Ok | Not sure why you would want to send yourself an alert when things are okay, but you could. |
### Execution errors or timeouts
Tell Grafana how to handle execution or timeout errors.
| Error or timeout option | Description |
| ----------------------- | --------------------------------------------------- |
| Alerting | Set alert rule state to `Alerting` |
| Keep Last State | Keep the current alert rule state, what ever it is. |
If you have an unreliable time series store from which queries sometime timeout or fail randomly you can set this option to `Keep Last State` in order to basically ignore them.
## Notifications
In alert tab you can also specify alert rule notifications along with a detailed message about the alert rule. The message can contain anything, information about how you might solve the issue, link to runbook, and so on.
The actual notifications are configured and shared between multiple alerts. Read
[Alert notifications]({{< relref "notifications.md" >}}) for information on how to configure and set up notifications.
- **Send to -** Select an alert notification channel if you have one set up.
- **Message -** Enter a text message to be sent on the notification channel. Some alert notifiers support transforming the text to HTML or other rich formats.
- **Tags -** Specify a list of tags (key/value) to be included in the notification. It is only supported by [some notifiers]({{< relref "notifications/#all-supported-notifiers" >}}).
## Alert state history and annotations
Alert state changes are recorded in the internal annotation table in Grafana's database. The state changes are visualized as annotations in the alert rule's graph panel. You can also go into the `State history` submenu in the alert tab to view and clear state history.

View File

@@ -1,21 +0,0 @@
+++
title = "Alerting Metrics"
description = "Alerting Metrics Guide"
keywords = ["Grafana", "alerting", "guide", "metrics"]
type = "docs"
[menu.docs]
name = "Metrics"
parent = "alerting"
weight = 2
+++
# Metrics from the alert engine
The alert engine publishes some internal metrics about itself. You can read more about how Grafana publishes [internal metrics]({{< relref "../administration/metrics/" >}}).
Description | Type | Metric name
---------- | ----------- | ----------
Total number of alerts | counter | `alerting.active_alerts`
Alert execution result | counter | `alerting.result`
Notifications sent counter | counter | `alerting.notifications_sent`
Alert execution timer | timer | `alerting.execution_time`

View File

@@ -1,46 +1,42 @@
+++
title = "Alerting Notifications"
description = "Alerting Notifications Guide"
title = "Alert notifications"
description = "Alerting notifications guide"
keywords = ["Grafana", "alerting", "guide", "notifications"]
type = "docs"
[menu.docs]
name = "Notifications"
parent = "alerting"
weight = 2
weight = 200
+++
# Alert Notifications
> Alerting is only available in Grafana v4.0 and above.
# Alert notifications
When an alert changes state, it sends out notifications. Each alert rule can have
multiple notifications. In order to add a notification to an alert rule you first need
to add and configure a `notification` channel (can be email, PagerDuty or other integration).
This is done from the Notification Channels page.
to add and configure a `notification` channel (can be email, PagerDuty, or other integration).
## Notification Channel Setup
This is done from the Notification channels page.
On the Notification Channels page hit the `New Channel` button to go the page where you
can configure and setup a new Notification Channel.
> **Note:** Alerting is only available in Grafana v4.0 and above.
You specify a name and a type, and type specific options. You can also test the notification to make
sure it's setup correctly.
## Add a notification channel
1. In the Grafana side bar, hover your cursor over the **Alerting** (bell) icon and then click **Notification channels**.
1. Click **Add channel**.
1. Fill out the fields or select options described below.
## New notification channel fields
### Default (send on all alerts)
When checked, this option will notify for all alert rules - existing and new.
- **Name -** Enter a name for this channel. It will be displayed when users add notifications to alert rules.
- **Type -** Select the channel type. Refer to the [List of supported notifiers](#list-of-supported-notifiers) for details.
- **Default (send on all alerts) -** When selected, this option sends a notification on this channel for all alert rules.
- **Include Image -** See [Enable images in notifications](#enable-images-in-notifications-external-image-store) for details.
- **Disable Resolve Message -** When selected, this option disables the resolve message [OK] that is sent when the alerting state returns to false.
- **Send reminders -** When this option is checked additional notifications (reminders) will be sent for triggered alerts. You can specify how often reminders should be sent using number of seconds (s), minutes (m) or hours (h), for example `30s`, `3m`, `5m` or `1h`.
### Send reminders
> Only available in Grafana v5.3 and above.
{{< docs-imagebox max-width="600px" img="/img/docs/v53/alerting_notification_reminders.png" class="docs-image--right" caption="Alerting notification reminders setup" >}}
When this option is checked additional notifications (reminders) will be sent for triggered alerts. You can specify how often reminders
should be sent using number of seconds (s), minutes (m) or hours (h), for example `30s`, `3m`, `5m` or `1h` etc.
**Important:** Alert reminders are sent after rules are evaluated. Therefore a reminder can never be sent more frequently than a configured [alert rule evaluation interval]({{< relref "rules/#name-evaluation-interval" >}}).
**Important:** Alert reminders are sent after rules are evaluated. Therefore a reminder can never be sent more frequently than a configured alert rule evaluation interval.
These examples show how often and when reminders are sent for a triggered alert.
@@ -55,43 +51,63 @@ Alert rule evaluation interval | Send reminders every | Reminder sent every (aft
<div class="clearfix"></div>
### Disable resolve message
## List of supported notifiers
When checked, this option will disable resolve message [OK] that is sent when alerting state returns to false.
## Supported Notification Types
Grafana ships with the following set of notification types:
Name | Type | Supports images | Support alert rule tags
-----|------|---------------- | -----------------------
[DingDing](#dingdingdingtalk) | `dingding` | yes, external only | no
Discord | `discord` | yes | no
[Email](#email) | `email` | yes | no
[Google Hangouts Chat](#google-hangouts-chat) | `googlechat` | yes, external only | no
Hipchat | `hipchat` | yes, external only | no
[Kafka](#kafka) | `kafka` | yes, external only | no
Line | `line` | yes, external only | no
Microsoft Teams | `teams` | yes, external only | no
OpsGenie | `opsgenie` | yes, external only | yes
[Pagerduty](#pagerduty) | `pagerduty` | yes, external only | yes
Prometheus Alertmanager | `prometheus-alertmanager` | yes, external only | yes
Pushover | `pushover` | yes | no
Sensu | `sensu` | yes, external only | no
[Slack](#slack) | `slack` | yes | no
Telegram | `telegram` | yes | no
Threema | `threema` | yes, external only | no
VictorOps | `victorops` | yes, external only | no
[Webhook](#webhook) | `webhook` | yes, external only | yes
### Email
To enable email notifications you have to setup [SMTP settings]({{< relref "../installation/configuration/#smtp" >}})
To enable email notifications you have to setup [SMTP settings]({{< relref "../administration/configuration/#smtp" >}})
in the Grafana config. Email notifications will upload an image of the alert graph to an
external image destination if available or fallback to attaching the image to the email.
Be aware that if you use the `local` image storage email servers and clients might not be
able to access the image.
Setting | Description
---------- | -----------
Single email | Send a single email to all recipients. Disabled per default.
Addresses | Email addresses to recipients. You can enter multiple email addresses using a ";" separator.
### Slack
{{< imgbox max-width="40%" img="/img/docs/v4/slack_notification.png" caption="Alerting Slack Notification" >}}
To set up Slack, you need to configure an incoming Slack webhook URL. You can follow
[their guide](https://api.slack.com/incoming-webhooks) on how to do that. If you want to include screenshots of the
firing alerts in the Slack messages you have to configure either the [external image destination](#external-image-store)
in Grafana, or a bot integration via Slack Apps. Follow Slack's guide to set up a bot integration and use the token
provided (https://api.slack.com/bot-users), which starts with "xoxb".
To set up Slack, you need to configure an incoming Slack webhook URL. You can follow
[Sending messages using Incoming Webhooks](https://api.slack.com/incoming-webhooks) on how to do that. If you want to include screenshots of the
firing alerts in the Slack messages you have to configure either the [external image destination](#external-image-store)
in Grafana or a bot integration via Slack Apps. [Follow Slack's guide to set up a bot integration](https://api.slack.com/bot-users) and use the token
provided, which starts with "xoxb".
Setting | Description
---------- | -----------
Url | Slack incoming webhook URL.
Url | Slack incoming webhook URL, or eventually the [chat.postMessage](https://api.slack.com/methods/chat.postMessage) Slack API endpoint.
Username | Set the username for the bot's message.
Recipient | Allows you to override the Slack recipient. You must either provide a channel Slack ID, a user Slack ID, a username reference (@&lt;user&gt;, all lowercase, no whitespace), or a channel reference (#&lt;channel&gt;, all lowercase, no whitespace).
Recipient | Allows you to override the Slack recipient. You must either provide a channel Slack ID, a user Slack ID, a username reference (@&lt;user&gt;, all lowercase, no whitespace), or a channel reference (#&lt;channel&gt;, all lowercase, no whitespace). If you use the `chat.postMessage` Slack API endpoint, this is required.
Icon emoji | Provide an emoji to use as the icon for the bot's message. Ex :smile:
Icon URL | Provide a URL to an image to use as the icon for the bot's message.
Mention Users | Optionally mention one or more users in the Slack notification sent by Grafana. You have to refer to users, comma-separated, via their corresponding Slack IDs (which you can find by clicking the overflow button on each user's Slack profile).
Mention Groups | Optionally mention one or more groups in the Slack notification sent by Grafana. You have to refer to groups, comma-separated, via their corresponding Slack IDs (which you can get from each group's Slack profile URL).
Mention Channel | Optionally mention either all channel members or just active ones.
Token | If provided, Grafana will upload the generated image via Slack's file.upload API method, not the external image destination.
Token | If provided, Grafana will upload the generated image via Slack's file.upload API method, not the external image destination. If you use the `chat.postMessage` Slack API endpoint, this is required.
If you are using the token for a slack bot, then you have to invite the bot to the channel you want to send notifications and add the channel to the recipient field.
@@ -102,10 +118,16 @@ To set up PagerDuty, all you have to do is to provide an integration key.
Setting | Description
---------- | -----------
Integration Key | Integration key for PagerDuty.
Severity | Level for dynamic notifications, default is `critical`
Severity | Level for dynamic notifications, default is `critical` (1)
Auto resolve incidents | Resolve incidents in PagerDuty once the alert goes back to ok
Message in details | Removes the Alert message from the PD summary field and puts it into custom details instead (2)
**Note:** The tags `Class`, `Group`, and `Component` have special meaning in the [Pagerduty Common Event Format - PD-CEF](https://support.pagerduty.com/docs/pd-cef). If an alert panel defines these tag keys they will be transposed to the root of the event sent to Pagerduty. This means they will be available within the Pagerduty UI and Filtering tools.
>**Note:** The tags `Severity`, `Class`, `Group`, and `Component` have special meaning in the [Pagerduty Common Event Format - PD-CEF](https://support.pagerduty.com/docs/pd-cef). If an alert panel defines these tag keys, then they are transposed to the root of the event sent to Pagerduty. This means they will be available within the Pagerduty UI and Filtering tools. A Severity tag set on an alert overrides the global Severity set on the notification channel if it's a valid level.
>Using Message In Details will change the structure of the `custom_details` field in the PagerDuty Event.
This might break custom event rules in your PagerDuty rules if you rely on the fields in `payload.custom_details`.
Move any existing rules using `custom_details.myMetric` to `custom_details.queries.myMetric`.
This behavior will become the default in a future version of Grafana.
### Webhook
@@ -180,53 +202,22 @@ Notifications can be sent by setting up an incoming webhook in Google Hangouts c
Squadcast helps you get alerted via Phone call, SMS, Email and Push notifications and lets you take actions on those alerts. Grafana notifications can be sent to Squadcast via a simple incoming webhook. Refer the official [Squadcast support documentation](https://support.squadcast.com/docs/grafana) for configuring these webhooks.
### All supported notifiers
### Prometheus Alertmanager
Name | Type | Supports images | Support alert rule tags
-----|------|---------------- | -----------------------
DingDing | `dingding` | yes, external only | no
Discord | `discord` | yes | no
Email | `email` | yes | no
Google Hangouts Chat | `googlechat` | yes, external only | no
Hipchat | `hipchat` | yes, external only | no
Kafka | `kafka` | yes, external only | no
Line | `line` | yes, external only | no
Microsoft Teams | `teams` | yes, external only | no
OpsGenie | `opsgenie` | yes, external only | yes
Pagerduty | `pagerduty` | yes, external only | yes
Prometheus Alertmanager | `prometheus-alertmanager` | yes, external only | yes
Pushover | `pushover` | yes | no
Sensu | `sensu` | yes, external only | no
Slack | `slack` | yes | no
Squadcast | `webhook` | no | no
Telegram | `telegram` | yes | no
Threema | `threema` | yes, external only | no
VictorOps | `victorops` | yes, external only | no
Webhook | `webhook` | yes, external only | yes
Alertmanager handles alerts sent by client applications such as Prometheus server or Grafana. It takes care of deduplicating, grouping, and routing them to the correct receiver. Grafana notifications can be sent to Alertmanager via a simple incoming webhook. Refer to the official [Prometheus Alertmanager documentation](https://prometheus.io/docs/alerting/alertmanager) for configuration information.
# Enable images in notifications {#external-image-store}
> **Caution:** In case of a high-availability setup, do not load balance traffic between Grafana and Alertmanagers to keep coherence between all your Alertmanager instances. Instead, point Grafana to a list of all Alertmanagers, by listing their URLs comma-separated in the notification channel configuration.
Grafana can render the panel associated with the alert rule as a PNG image and include that in the notification. Read more about the requirements and how to configure
## Enable images in notifications {#external-image-store}
Grafana can render the panel associated with the alert rule as a PNG image and include that in the notification. Read more about the requirements and how to configure
[image rendering]({{< relref "../administration/image_rendering/" >}}).
Most Notification Channels require that this image be publicly accessible (Slack and PagerDuty for example). In order to include images in alert notifications, Grafana can upload the image to an image store. It currently supports
Amazon S3, Webdav, Google Cloud Storage and Azure Blob Storage. So to set that up you need to configure the [external image uploader]({{< relref "../installation/configuration/#external-image-storage" >}}) in your grafana-server ini config file.
Be aware that some notifiers requires public access to the image to be able to include it in the notification. So make sure to enable public access to the images. If you're using local image uploader, your Grafana instance need to be accessible by the internet.
You must configure an [external image storage provider]({{< relref "../administration/configuration/#external-image-storage" >}}) in order to receive images in alert notifications. If your notification channel requires that the image be publicly accessible (e.g. Slack, PagerDuty), configure a provider which uploads the image to a remote image store like Amazon S3, Webdav, Google Cloud Storage, or Azure Blob Storage. Otherwise, the local provider can be used to serve the image directly from Grafana.
Notification services which need public image access are marked as 'external only'.
# Use alert rule tags in notifications {#alert-rule-tags}
> Only available in Grafana v6.3+.
Grafana can include a list of tags (key/value) in the notification.
It's called alert rule tags to contrast with tags parsed from timeseries.
It currently supports only the Prometheus Alertmanager notifier.
This is an optional feature. You can get notifications without using alert rule tags.
# Configure the link back to Grafana from alert notifications
## Configure the link back to Grafana from alert notifications
All alert notifications contain a link back to the triggered alert in the Grafana instance.
This URL is based on the [domain]({{< relref "../installation/configuration/#domain" >}}) setting in Grafana.
This URL is based on the [domain]({{< relref "../administration/configuration/#domain" >}}) setting in Grafana.

View File

@@ -0,0 +1,17 @@
+++
title = "Pause alert rule"
description = "Pause an existing alert rule"
keywords = ["grafana", "alerting", "guide", "rules", "view"]
type = "docs"
[menu.docs]
parent = "alerting"
weight = 400
+++
# Pause an alert rule
Pausing the evaluation of an alert rule can sometimes be useful. For example, during a maintenance window, pausing alert rules can avoid triggering a flood of alerts.
1. In the Grafana side bar, hover your cursor over the Alerting (bell) icon and then click **Alert Rules**. All configured alert rules are listed, along with their current state.
1. Find your alert in the list, and click the **Pause** icon on the right. The **Pause** icon turns into a **Play** icon.
1. Click the **Play** icon to resume evaluation of your alert.

View File

@@ -1,174 +0,0 @@
+++
title = "Alerting Engine and Rules Guide"
description = "Configuring Alert Rules"
keywords = ["grafana", "alerting", "guide", "rules"]
type = "docs"
[menu.docs]
name = "Engine and Rules"
parent = "alerting"
weight = 1
+++
# Alerting Engine and Rules Guide
Alerting in Grafana allows you to attach rules to your dashboard panels. When you save the dashboard
Grafana will extract the alert rules into a separate alert rule storage and schedule them for evaluation.
{{< imgbox max-width="40%" img="/img/docs/v4/drag_handles_gif.gif" caption="Alerting overview" >}}
In the alert tab of the graph panel you can configure how often the alert rule should be evaluated
and the conditions that need to be met for the alert to change state and trigger its
[notifications]({{< relref "notifications.md" >}}).
## Execution
The alert rules are evaluated in the Grafana backend in a scheduler and query execution engine that is part
of core Grafana. Only some data sources are supported right now. They include `Graphite`, `Prometheus`, `InfluxDB`, `Elasticsearch`,
`Stackdriver`, `Cloudwatch`, `Azure Monitor`, `MySQL`, `PostgreSQL`, `MSSQL`, `OpenTSDB`, `Oracle`, and `Azure Data Explorer`.
## Clustering
Currently alerting supports a limited form of high availability. Since v4.2.0 of Grafana, alert notifications are deduped when running multiple servers. This means all alerts are executed on every server but no duplicate alert notifications are sent due to the deduping logic. Proper load balancing of alerts will be introduced in the future.
<div class="clearfix"></div>
## Rule Config
Currently only the graph panel supports alert rules.
### Name and Evaluation interval
Here you can specify the name of the alert rule and how often the scheduler should evaluate the alert rule.
**Note:** You can set a minimum interval in the `alerting.min_interval_seconds` config field, to set a minimum time between evaluations. Check out the [[configuration]]({{< relref "../installation/configuration.md" >}}#min-interval-seconds) page for more information.
### For
> **Important note regarding No Data:**
>
> Do not use `For` with the `If no data or all values are null` setting set to `No Data`. The triggering of `No Data` will trigger instantly and not take `For` into consideration. This may also result in that an OK notification not being sent if alert transitions from `No Data -> Pending -> OK`.
If an alert rule has a configured `For` and the query violates the configured threshold it will first go from `OK` to `Pending`. Going from `OK` to `Pending` Grafana will not send any notifications. Once the alert rule has been firing for more than `For` duration, it will change to `Alerting` and send alert notifications.
Typically, it's always a good idea to use this setting since it's often worse to get false positive than wait a few minutes before the alert notification triggers. Looking at the `Alert list` or `Alert list panels` you will be able to see alerts in pending state.
Below you can see an example timeline of an alert using the `For` setting. At ~16:04 the alert state changes to `Pending` and after 4 minutes it changes to `Alerting` which is when alert notifications are sent. Once the series falls back to normal the alert rule goes back to `OK`.
{{< imgbox img="/img/docs/v54/alerting-for-dark-theme.png" caption="Alerting For" >}}
{{< imgbox max-width="40%" img="/img/docs/v4/alerting_conditions.png" caption="Alerting Conditions" >}}
### Conditions
Currently the only condition type that exists is a `Query` condition that allows you to
specify a query letter, time range and an aggregation function.
### Query condition example
```sql
avg() OF query(A, 15m, now) IS BELOW 14
```
- `avg()` Controls how the values for **each** series should be reduced to a value that can be compared against the threshold. Click on the function to change it to another aggregation function.
- `query(A, 15m, now)` The letter defines what query to execute from the **Metrics** tab. The second two parameters define the time range, `15m, now` means 15 minutes ago to now. You can also do `10m, now-2m` to define a time range that will be 10 minutes ago to 2 minutes ago. This is useful if you want to ignore the last 2 minutes of data.
- `IS BELOW 14` Defines the type of threshold and the threshold value. You can click on `IS BELOW` to change the type of threshold.
The query used in an alert rule cannot contain any template variables. Currently we only support `AND` and `OR` operators between conditions and they are executed serially.
For example, we have 3 conditions in the following order:
*condition:A(evaluates to: TRUE) OR condition:B(evaluates to: FALSE) AND condition:C(evaluates to: TRUE)*
so the result will be calculated as ((TRUE OR FALSE) AND TRUE) = TRUE.
We plan to add other condition types in the future, like `Other Alert`, where you can include the state
of another alert in your conditions, and `Time Of Day`.
#### Multiple Series
If a query returns multiple series then the aggregation function and threshold check will be evaluated for each series.
What Grafana does not do currently is track alert rule state **per series**. This has implications that are detailed
in the scenario below.
- Alert condition with query that returns 2 series: **server1** and **server2**
- **server1** series cause the alert rule to fire and switch to state `Alerting`
- Notifications are sent out with message: _load peaking (server1)_
- In a subsequence evaluation of the same alert rule the **server2** series also cause the alert rule to fire
- No new notifications are sent as the alert rule is already in state `Alerting`.
So as you can see from the above scenario Grafana will not send out notifications when other series cause the alert
to fire if the rule already is in state `Alerting`. To improve support for queries that return multiple series
we plan to track state **per series** in a future release.
> Starting with Grafana v5.3 you can configure reminders to be sent for triggered alerts. This will send additional notifications
> when an alert continues to fire. If other series (like server2 in the example above) also cause the alert rule to fire they will
> be included in the reminder notification. Depending on what notification channel you're using you may be able to take advantage
> of this feature for identifying new/existing series causing alert to fire. [Read more about notification reminders here]({{< relref "notifications/#send-reminders" >}}).
### No Data / Null values
Below your conditions you can configure how the rule evaluation engine should handle queries that return no data or only null values.
No Data Option | Description
------------ | -------------
NoData | Set alert rule state to `NoData`
Alerting | Set alert rule state to `Alerting`
Keep Last State | Keep the current alert rule state, what ever it is.
### Execution errors or timeouts
The last option tells how to handle execution or timeout errors.
Error or timeout option | Description
------------ | -------------
Alerting | Set alert rule state to `Alerting`
Keep Last State | Keep the current alert rule state, what ever it is.
If you have an unreliable time series store from which queries sometime timeout or fail randomly you can set this option
to `Keep Last State` in order to basically ignore them.
## Notifications
In alert tab you can also specify alert rule notifications along with a detailed message about the alert rule.
The message can contain anything, information about how you might solve the issue, link to runbook, etc.
The actual notifications are configured and shared between multiple alerts. Read the
[notifications]({{< relref "notifications.md" >}}) guide for how to configure and setup notifications.
## Alert State History and Annotations
Alert state changes are recorded in the internal annotation table in Grafana's database. The state changes
are visualized as annotations in the alert rule's graph panel. You can also go into the `State history`
submenu in the alert tab to view and clear state history.
## Troubleshooting
{{< imgbox max-width="40%" img="/img/docs/v4/alert_test_rule.png" caption="Test Rule" >}}
First level of troubleshooting you can do is hit the **Test Rule** button. You will get result back that you can expand
to the point where you can see the raw data that was returned from your query.
Further troubleshooting can also be done by inspecting the grafana-server log. If it's not an error or for some reason
the log does not say anything you can enable debug logging for some relevant components. This is done
in Grafana's ini config file.
Example showing loggers that could be relevant when troubleshooting alerting.
```ini
[log]
filters = alerting.scheduler:debug \
alerting.engine:debug \
alerting.resultHandler:debug \
alerting.evalHandler:debug \
alerting.evalContext:debug \
alerting.extractor:debug \
alerting.notifier:debug \
alerting.notifier.slack:debug \
alerting.notifier.pagerduty:debug \
alerting.notifier.email:debug \
alerting.notifier.webhook:debug \
tsdb.graphite:debug \
tsdb.prometheus:debug \
tsdb.opentsdb:debug \
tsdb.influxdb:debug \
tsdb.elasticsearch:debug \
tsdb.elasticsearch.client:debug \
```
If you want to log raw query sent to your TSDB and raw response in log you also have to set grafana.ini option `app_mode` to
`development`.

View File

@@ -0,0 +1,45 @@
+++
title = "Troubleshoot alerts"
description = "Troubleshoot alert rules"
keywords = ["grafana", "alerting", "guide", "rules", "troubleshoot"]
type = "docs"
[menu.docs]
name = "Troubleshoot alerts"
parent = "alerting"
weight = 500
+++
# Troubleshoot alerts
If alerts are not behaving as you expect, here are some steps you can take to troubleshoot and figure out what is going wrong.
{{< imgbox max-width="1000px" img="/img/docs/v4/alert_test_rule.png" caption="Test Rule" >}}
The first level of troubleshooting you can do is click **Test Rule**. You will get result back that you can expand to the point where you can see the raw data that was returned from your query.
Further troubleshooting can also be done by inspecting the grafana-server log. If it's not an error or for some reason the log does not say anything you can enable debug logging for some relevant components. This is done in Grafana's ini config file.
Example showing loggers that could be relevant when troubleshooting alerting.
```ini
[log]
filters = alerting.scheduler:debug \
alerting.engine:debug \
alerting.resultHandler:debug \
alerting.evalHandler:debug \
alerting.evalContext:debug \
alerting.extractor:debug \
alerting.notifier:debug \
alerting.notifier.slack:debug \
alerting.notifier.pagerduty:debug \
alerting.notifier.email:debug \
alerting.notifier.webhook:debug \
tsdb.graphite:debug \
tsdb.prometheus:debug \
tsdb.opentsdb:debug \
tsdb.influxdb:debug \
tsdb.elasticsearch:debug \
tsdb.elasticsearch.client:debug \
```
If you want to log raw query sent to your TSDB and raw response in log you also have to set grafana.ini option `app_mode` to `development`.

View File

@@ -0,0 +1,23 @@
+++
title = "View alerts"
description = "View existing alert rules"
keywords = ["grafana", "alerting", "guide", "rules", "view"]
type = "docs"
[menu.docs]
name = "View alerts"
parent = "alerting"
weight = 400
+++
# View existing alert rules
Grafana stores individual alert rules in the panels where they are defined, but you can also view a list of all existing alert rules and their current state.
In the Grafana side bar, hover your cursor over the Alerting (bell) icon and then click **Alert Rules**. All configured alert rules are listed, along with their current state.
You can do several things while viewing alerts.
- **Filter alerts by name -** Type an alert name in the **Search alerts** field.
- **Filter alerts by state -** In **States**, select which alert states you want to see. All others will be hidden.
- **Pause or resume an alert -** Click the **Pause** or **Play** icon next to the alert to pause or resume evaluation. See [Pause an alert rule]({{< relref "pause-an-alert-rule.md" >}}) for more information.
- **Access alert rule settings -** Click the alert name or the **Edit alert rule** (gear) icon. Grafana opens the Alert tab of the panel where the alert rule is defined. This is helpful when an alert is firing but you don't know which panel it is defined in.

View File

@@ -9,4 +9,135 @@ parent = "admin"
weight = 3
+++
# User Authentication Overview
Grafana provides many ways to authenticate users. Some authentication integrations also enable syncing user permissions and org memberships.
Here is a table showing all supported authentication providers and the features available for them. [Team sync]({{< relref "../enterprise/team-sync.md" >}}) and [active sync]({{< relref "../enterprise/enhanced_ldap.md#active-ldap-synchronization" >}}) are only available in Grafana Enterprise.
Provider | Support | Role mapping | Team sync<br> *(Enterprise only)* | Active sync<br> *(Enterprise only)*
-------- | :-----: | :----------: | :-------: | :---------:
[Auth Proxy]({{< relref "auth-proxy.md" >}}) | v2.1+ | - | v6.3+ | -
[Azure AD OAuth]({{< relref "azuread.md" >}}) | v6.7+ | v6.7+ | v6.7+ | -
[Generic OAuth]({{< relref "generic-oauth.md" >}}) | v4.0+ | v6.5+ | - | -
[GitHub OAuth]({{< relref "github.md" >}}) | v2.0+ | - | v6.3+ | -
[GitLab OAuth]({{< relref "gitlab.md" >}}) | v5.3+ | - | v6.4+ | -
[Google OAuth]({{< relref "google.md" >}}) | v2.0+ | - | - | -
[LDAP]({{< relref "ldap.md" >}}) | v2.1+ | v2.1+ | v5.3+ | v6.3+
[Okta OAuth]({{< relref "okta.md" >}}) | v7.0+ | v7.0+ | v7.0+ | -
[SAML]({{< relref "../enterprise/saml.md" >}}) (Enterprise only) | v6.3+ | v7.0+ | v7.0+ | -
## Grafana Auth
Grafana of course has a built in user authentication system with password authentication enabled by default. You can
disable authentication by enabling anonymous access. You can also hide login form and only allow login through an auth
provider (listed above). There is also options for allowing self sign up.
### Login and short-lived tokens
> The following applies when using Grafana's built in user authentication, LDAP (without Auth proxy) or OAuth integration.
Grafana are using short-lived tokens as a mechanism for verifying authenticated users.
These short-lived tokens are rotated each `token_rotation_interval_minutes` for an active authenticated user.
An active authenticated user that gets it token rotated will extend the `login_maximum_inactive_lifetime_days` time from "now" that Grafana will remember the user.
This means that a user can close its browser and come back before `now + login_maximum_inactive_lifetime_days` and still being authenticated.
This is true as long as the time since user login is less than `login_maximum_lifetime_days`.
#### Remote logout
You can logout from other devices by removing login sessions from the bottom of your profile page. If you are
a Grafana admin user you can also do the same for any user from the Server Admin / Edit User view.
## Settings
Example:
```bash
[auth]
# Login cookie name
login_cookie_name = grafana_session
# The lifetime (days) an authenticated user can be inactive before being required to login at next visit. Default is 7 days.
login_maximum_inactive_lifetime_days = 7
# The maximum lifetime (days) an authenticated user can be logged in since login time before being required to login. Default is 30 days.
login_maximum_lifetime_days = 30
# How often should auth tokens be rotated for authenticated users when being active. The default is each 10 minutes.
token_rotation_interval_minutes = 10
# The maximum lifetime (seconds) an api key can be used. If it is set all the api keys should have limited lifetime that is lower than this value.
api_key_max_seconds_to_live = -1
```
### Anonymous authentication
You can make Grafana accessible without any login required by enabling anonymous access in the configuration file.
Example:
```bash
[auth.anonymous]
enabled = true
# Organization name that should be used for unauthenticated users
org_name = Main Org.
# Role for unauthenticated users, other valid values are `Editor` and `Admin`
org_role = Viewer
```
If you change your organization name in the Grafana UI this setting needs to be updated to match the new name.
### Basic authentication
Basic auth is enabled by default and works with the built in Grafana user password authentication system and LDAP
authentication integration.
To disable basic auth:
```bash
[auth.basic]
enabled = false
```
### Disable login form
You can hide the Grafana login form using the below configuration settings.
```bash
[auth]
disable_login_form = true
```
### Automatic OAuth login
Set to true to attempt login with OAuth automatically, skipping the login screen.
This setting is ignored if multiple OAuth providers are configured.
Defaults to `false`.
```bash
[auth]
oauth_auto_login = true
```
### Hide sign-out menu
Set the option detailed below to true to hide sign-out menu link. Useful if you use an auth proxy.
```bash
[auth]
disable_signout_menu = true
```
### URL redirect after signing out
URL to redirect the user to after signing out from Grafana. This can for example be used to enable signout from oauth provider.
```bash
[auth]
signout_redirect_url =
```

View File

@@ -30,8 +30,8 @@ To enable the Azure AD OAuth2 you must register your application with Azure AD.
1. Click the name of the new application to open the application details page.
1. Click **Endpoints**.
- Note down the **OAuth 2.0 authorization endpoint (v2)**, this will be the auth url.
- Note down the **OAuth 2.0 token endpoint (v2)**, this will be the token url.
- Note down the **OAuth 2.0 authorization endpoint (v2)**, this will be the auth URL.
- Note down the **OAuth 2.0 token endpoint (v2)**, this will be the token URL.
1. Close the Endpoints page to come back to the application details page.
@@ -92,9 +92,9 @@ To enable the Azure AD OAuth2 you must register your application with Azure AD.
1. Click on **Users and groups** and add Users/Groups to the Grafana roles by using **Add User**.
## Enable Azure AD Oauth in Grafana
## Enable Azure AD OAuth in Grafana
1. Add the following to the [Grafana configuration file]({{< relref "../installation/configuration.md#config-file-locations" >}}):
1. Add the following to the [Grafana configuration file]({{< relref "../administration/configuration.md#config-file-locations" >}}):
```ini
[auth.azuread]
@@ -110,7 +110,7 @@ allowed_domains =
allowed_groups =
```
> Note: Ensure that the [root_url]({{< relref "../installation/configuration/#root-url" >}}) in Grafana is set in your Azure Application Reply URLs (App -> Settings -> Reply URLs)
> Note: Ensure that the [root_url]({{< relref "../administration/configuration/#root-url" >}}) in Grafana is set in your Azure Application Reply URLs (App -> Settings -> Reply URLs)
### Configure allowed groups and domains
@@ -122,6 +122,12 @@ only give access to members of the group `example` which has Id `8bab1c86-8fba-3
allowed_groups = 8bab1c86-8fba-33e5-2089-1d1c80ec267d
```
You'll need to ensure that you've [enabled group attributes](https://docs.microsoft.com/en-us/azure/active-directory/hybrid/how-to-connect-fed-group-claims#configure-the-azure-ad-application-registration-for-group-attributes) in your Azure AD Application Registration manifest file (Azure Portal -> Azure Active Directory -> Application Registrations -> Select Application -> Manifest)
```json
"groupMembershipClaims": "ApplicationGroup"
```
The `allowed_domains` option limits access to the users belonging to the specific domains. Domains should be separated by space or comma.
```ini

View File

@@ -12,6 +12,6 @@ weight = 3
# Enhanced LDAP integration
The enhanced LDAP integration adds additional functionality on top of the existing {LDAP integration]({{< relref "ldap.md" >}}).
The enhanced LDAP integration adds additional functionality on top of the existing [LDAP integration]({{< relref "ldap.md" >}}).
> Enhanced LDAP integration is only available in Grafana Enterprise. For more information, refer to [Enhanced LDAP integration]({{< relref "../enterprise/enhanced_ldap.md" >}}) in [Grafana Enterprise]({{< relref "../enterprise" >}}).

Some files were not shown because too many files have changed in this diff Show More