Commit Graph

537 Commits

Author SHA1 Message Date
Shavonn Brown
1c36542018
convert teams section of user profile to react (#18633)
* convert teams section of user profile to react

* isLoading prop

* loading placeholders
2019-08-23 08:26:52 -04:00
Shavonn Brown
e3e2cd82d7
Rewrite user profile edit to react (#17917)
* rewrite user profile edit to react (#17525)

* disableLogin change, still need to fix tooltip

* left out disable form for other auth

* PR changes - wrapper to render, userId instead of bool, optional user in state, change provider child param order

* moved directive to angular_wrappers

* catch api error

* finally

* move user arg back to end- optional

* optional type sig
2019-08-19 13:40:14 -04:00
Ryan McKinley
5a41e8b119 Refactor: move KeyValue and deprecation warning to @grafana/data (#18582)
* move KeyValue and deprecation warning

* move KeyValue and deprecation warning

* rename displayProcessor file
2019-08-16 11:10:32 +02:00
Tobias Skarhed
1db9fff056 strictNullChecks: First batch (#18390)
* First batch of strictNullChecks

* Remove undefined

* Check an alternative solution

* Fix strict nullChecks

* Low hanging strictNullChecks

* Fixing strict nulls issues and more

* Minor change

* fixed unit test

* Fix feedback

* Update public/vendor/ansicolor/ansicolor.ts

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Update public/vendor/ansicolor/ansicolor.ts

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Update public/vendor/ansicolor/ansicolor.ts

Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>

* Fix build errors
2019-08-12 16:11:06 +02:00
Tobias Skarhed
83da3660da
Chore: noImplictAny no errors left (#18303)
* Add types and rewrite datasourceChanged to async/await
2019-08-01 14:38:34 +02:00
Ryan McKinley
4ce814ba94
Utils: avoid calling console.warn() too often for deprecation warnings (#18269) 2019-07-29 21:13:31 -07:00
David
7139544c76
Explore: Reduce default time range to last hour (#18212) 2019-07-22 13:34:10 +02:00
kay delaney
bf7fb67f73
Explore/Loki: Display live tailed logs in correct order (#18031)
Closes #18027
2019-07-10 13:57:23 +01:00
Tobias Skarhed
9e87dbb153
CSV Export: Timezone based on dashboard setting (#18002)
* Timezone export CSV based on dashboard setting

* Add options object and interface
2019-07-09 16:16:46 +02:00
Ryan McKinley
fcdc29746f
@grafana/data: export dateMath and rangeUtil (#17971) 2019-07-05 23:43:12 -07:00
Ryan McKinley
3f15170914 Refactor: move some files to @grafana/data (#17952)
* moving to data WIP

* more refactoring

* add missing test

* mock full path

* remove sinon from grafana-ui
2019-07-06 08:05:53 +02:00
kay delaney
d4e9a8c009
Explore: Introduces storage keys for last used data source on per-orgId basis (#17934)
* Explore: Introduces storage keys for last used data source on per-orgId basis
Closes #17903
2019-07-04 15:31:15 +01:00
kay delaney
164fb13d99
Explore: Adds orgId to URL for sharing purposes (#17895)
Also replaces one-off segment detection functions in explore.ts with general purpose function
Closes #15462
2019-07-03 16:36:12 +01:00
Shavonn Brown
874b8abcc0 ChangePassword: Rewrite change password page to react (#17811)
* ChangePassword to React, created PasswordInput component, attempting UserProvider wrapper component, adding flex to btn row

* UserAPI interface, force classes on PasswordInput, remove api call from ChangePassword

* refactored out form

* clean up

* removed unnecessary bind, added loading state and loading component to change password form

* should be OR

* arrow funcs instead of binds, inline-block instead of flex, isSaving instead of isLoading, disabled button instead of spinner

* inline-flex on the react btn

* change state instatiatiation
2019-07-03 17:02:11 +02:00
Hugo Häggmark
ead4b1f5c7
Explore: Uses new TimePicker from Grafana/UI (#17793)
* Wip: Intiail commit

* Refactor: Replaces TimePicker in Explore

* Refactor: Removes Angular TimePicker folder

* Refactor: Adds tests for getShiftedTimeRange

* Fix: Fixes invalid import to removed TimePicker

* Fix: Fixes dateTime tests

* Refactor: Reuses getShiftedTimeRange for both Explore and Dashboards

* Refactor: Shares getZoomedTimeRange between Explore and Dashboard
2019-06-28 12:07:55 +02:00
kay delaney
5f3a71bc7a Explore: Adds URL support for select mode (#17755)
Adds URL support for mode state (Metrics/Logs). It's important 
to be able to share a link to logs when a data source supports 
both metrics and logs.

Closes #17101
2019-06-27 11:11:49 +02:00
Torkel Ödegaard
335cec07a5
Graph: Add data links feature (click on graph) (#17267)
* WIP: initial panel links editor

* WIP: Added dashboard migration to new panel drilldown link schema

* Make link_srv interpolate new variables

* Fix failing tests

* Drilldown: Add context menu to graph viz (#17284)

* Add simple context menu for adding graph annotations and showing drilldown links

* Close graph context menu when user start scrolling

* Move context menu component to grafana/ui

* Make graph context menu appear on click, use cmd/ctrl click for quick annotations

* Move graph context menu controller to separate file

* Drilldown: datapoint variables interpolation (#17328)

* Add simple context menu for adding graph annotations and showing drilldown links

* Close graph context menu when user start scrolling

* Move context menu component to grafana/ui

* Make graph context menu appear on click, use cmd/ctrl click for quick annotations

* Add util for absolute time range transformation

* Add series name and datapoint timestamp interpolation

* Rename drilldown link variables tot snake case, use const values instead of strings in tests

* Bring LinkSrv.getPanelLinkAnchorInfo for compatibility reasons and add deprecation warning

* Rename seriesLabel to seriesName

* Drilldown: use separate editors for panel and series links (#17355)

* Use correct target ini context menu links

* Rename PanelLinksEditor to DrilldownLinksEditor and mote it to grafana/ui

* Expose DrilldownLinksEditor as an angular directive

* Enable visualization specifix drilldown links

* Props interfaces rename

* Drilldown: Add variables suggestion and syntax highlighting for drilldown link editor (#17391)

* Add variables suggestion in drilldown link editor

* Enable prism

* Fix backspace not working

* Move slate value helpers to grafana/ui

* Add syntax higlighting for links input

* Rename drilldown link components to data links

* Add template variabe suggestions

* Bugfix

* Fix regexp not working in Firefox

* Display correct links in panel header corner

* bugfix

* bugfix

* Bugfix

* Context menu UI tweaks

* Use data link terminology instead of drilldown

* DataLinks: changed autocomplete syntax

* Use singular form for data link

* Use the same syntax higlighting for built-in and template variables in data links editor

* UI improvements to context menu

* UI review tweaks

* Tweak layout of data link editor

* Fix vertical spacing

* Remove data link header in context menu

* Remove pointer cursor from series label in context menu

* Fix variable selection on click

* DataLinks: migrations for old links

* Update docs about data links

* Use value time instead of time range when interpolating datapoint timestamp

* Remove not used util

* Update docs

* Moved icon a bit more down

* Interpolate value ts only when using __value_time variable

* Bring href property back to LinkModel

* Add any type annotations

* Fix TS error on slate's Value type

* minor changes
2019-06-25 11:38:51 +02:00
Tobias Skarhed
75c29566a6 Panel: Fully escape html in drilldown links (was only sanitized before) (#17731)
* Sanitize HTML

* Replace sanitization lib and check for config

* Add htmlToText

* Refactor: Renaming htmlToText to escapeHtml
2019-06-25 09:06:28 +02:00
Johannes Schill
0412a28d2e TimePicker: New time picker dropdown & custom range UI (#16811)
* feat: Add new picker to DashNavTimeControls

* chore: noImplicitAny limit reached

* chore: noImplicityAny fix

* chore: Add momentUtc helper to avoid the isUtc conditionals

* chore: Move getRaw from Explore's time picker to grafana/ui utils and rename to getRawRange

* feat: Use helper functions to convert utc to browser time

* fix: Dont Select current value when pressing tab when using Time Picker

* fix: Add tabIndex to time range inputs so tab works smoothly and prevent mouseDown event to propagate to react-select

* fix: Add spacing to custom range labels

* fix: Updated snapshot

* fix: Re-adding getRaw() temporary to fix the build

* fix: Disable scroll event in Popper when we're using the TimePicker so the popup wont "follow" the menu

* fix: Move all "Last xxxx" quick ranges to the menu and show a "UTC" text when applicable

* fix: Add zoom functionality

* feat: Add logic to mark selected option as active

* fix: Add tooltip to zoom button

* fix: lint fix after rebase

* chore: Remove old time picker from DashNav

* TimePicker: minor design update

* chore: Move all time picker quick ranges to the menu

* fix: Remove the popover border-right, since the quick ranges are gone

* chore: Remove function not in use

* Fix: Close time picker on resize event

* Fix: Remove border bottom

* Fix: Use fa icons on prev/next arrows

* Fix: Pass ref from TimePicker to TimePickerOptionGroup so the popover will align as it should

* Fix: time picker ui adjustments to get better touch area on buttons

* Fix: Dont increase line height on large screens

* TimePicker: style updates

* Fix: Add more prominent colors for selected dates and fade out dates in previous/next month

* TimePicker: style updates2

* TimePicker: Big refactorings and style changes

* Removed use of Popper not sure we need that here?
* Made active selected item in the list have the "selected" checkmark
* Changed design of popover
* Changed design of and implementation of the Custom selection in the dropdown it did not feel like a item you
could select like the rest now the list is just a normal list

* TimePicker: Refactoring & style changes

* TimePicker: use same date format everywhere

* TimePicker: Calendar style updates

* TimePicker: fixed unit test

* fixed unit test

* TimeZone: refactoring time zone type

* TimePicker: refactoring

* TimePicker: finally to UTC to work

* TimePicker: better way to handle calendar utc dates

* TimePicker: Fixed tooltip issues

* Updated snapshot

* TimePicker: moved tooltip from DashNavControls into TimePicker
2019-06-24 14:39:59 +02:00
Ryan McKinley
428134482d
@grafana/runtime: expose config and loadPluginCss (#17655)
* move config to grafana runtime

* set defaults

* defaults in constructor

* use @types/systemjs

* rename Settings to GrafanaBootConfig
2019-06-19 11:31:47 -07:00
Ryan McKinley
401615847c
Build: add @grafana/data package (#17436)
first step in moving non-ui components to their own package
2019-06-18 08:17:27 -07:00
Ryan McKinley
574a37e46f
@grafana/runtime: expose location update (#17428) 2019-06-04 16:20:55 +02:00
Hugo Häggmark
10a4a89902
Fix: Adds context to list of keys that are not part of query (#17423)
Fixes: #17408
2019-06-04 14:07:25 +02:00
Hugo Häggmark
fb39831df2
Explore: Queries the datasource once per run query and uses DataStreamObserver (#17263)
* Refactor: Removes replaceUrl from actions

* Refactor: Moves saveState thunk to epic

* Refactor: Moves thunks to epics

* Wip: removes resulttype and queries once

* Refactor: LiveTailing uses observer in query

* Refactor: Creates epics folder for epics and move back actioncreators

* Tests: Adds tests for epics and reducer

* Fix: Checks for undefined as well

* Refactor: Cleans up previous live tailing implementation

* Chore: merge with master

* Fix: Fixes url issuses and prom graph in Panels

* Refactor: Removes supportsStreaming and adds sockets to DataSourcePluginMeta instead

* Refactor: Changes the way we create TimeSeries

* Refactor: Renames sockets to streaming

* Refactor: Changes the way Explore does incremental updates

* Refactor: Removes unused method

* Refactor: Adds back Loading indication
2019-06-03 14:54:32 +02:00
Dan Cech
5e7537878e Security: Prevent csv formula injection attack (#17363)
* mitigate https://www.owasp.org/index.php/CSV_Injection

- prepend csv cell values that begin with -, +, = or @ with '
- trim trailing whitespace from all csv values

* test for csv formula injection mitigation
2019-05-30 07:07:19 +02:00
Šimon Podlipský
4b0ad174ff Frontend/utils: Import has only from lodash (#17311) 2019-05-28 10:17:03 +02:00
Šimon Podlipský
83af1bdff3 Frontend/utils: Add missing type (#17312) 2019-05-28 10:13:49 +02:00
Dominik Prokop
a9c94ec93b
Explore: Update the way Loki retrieve log context (#17204)
* Move log's typings into grafana/ui
* Update the way context is retrieved for Loki

Major changes:

1. getLogRowContext expects row to be of LogRowModel type
2. getLogRowContext accepts generic options object, specific to a datasource of interest. limit option has been removed, and now it's a part of Loki's context query options (see below)
3. LogRowContextProvider performs two queries now. Before, it was Loki ds that performed queries in both directions when getLogRowContext.
4. Loki's getLogRowContext accepts options object of a type:

interface LokiContextQueryOptions {
    direction?: 'BACKWARD' | 'FORWARD';
    limit?: number;
}

This will enable querying in either direction independently and also slightly simplifies the way query errors are handled.

LogRowContextProvider maps the results to a Loki specific context types, basically string[][], as raw log lines are displayed in first version.
2019-05-22 23:10:05 +02:00
Hugo Häggmark
db48ec1f08
Explore: Adds Live option for supported datasources (#17062)
* Wip: Initial commit

* Refactor: Adds support in Loki datasource for streaming

* Refactor: Adds Live option to RefreshInterval

* Refactor: Adds styles to logrows

* Style: Reverses the order of Explore layout on Live

* Refactor: Adds LiveLogs component

* Tests: Adds tests for epics

* Style: Adds animation to Live in RefreshPicker

* Refactor: Adds ElapsedTime and progress line to LiveLogs

* Style: Adds specific colors to each theme

* Refactor: Adds support for Lokis new API

* Fix: Adds null to resulting empty array

* Refactor: Limits the rate of incoming messages from websockets

* Refactor: Throttles messages instead for simplicity

* Refactor: Optimizes row processing performance

* Refactor: Adds stop live button

* Fix: Fixes so that RefreshPicker shows the correct value when called programmatically

* Refactor: Merges with master and removes a console.log

* Refactor: Sorts rows in correct order and fixes minor UI issues

* Refactor: Adds minor improvments to sorting and container size
2019-05-20 13:28:23 +02:00
David
927e1cbd27
(feat/explore): Support for new LogQL filtering syntax (#16674)
* (feat/explore): Support for new LogQL filtering syntax

Loki is adding syntax to support chained filtering.
This PR adapts Grafana to support this.

- Send only `query` parameter in loki request
- Automatically wrap search text in simple syntax, e.g., `{} foo` is
sent as `{} |~ "foo"`.


* Adapted to regexp parameter staying on in Loki

* Dont wrap single regexp in new filter syntax

* Fix datasource test

* Fallback regexp parameter for legacy queries

* Fix search highlighting

* Make highlighting work for filter chains

* Fix datasource test
2019-05-13 09:58:26 +02:00
Torkel Ödegaard
e0b760e08e
Chore: No implict any fixes (#17020) 2019-05-13 09:38:19 +02:00
Hugo Häggmark
6dbaa704bc
Explore: Align Explore with Dashboards and Panels (#16823)
* Wip: Removes queryTransactions from state

* Refactor: Adds back query failures

* Refactor: Moves error parsing to datasources

* Refactor: Adds back hinting for Prometheus

* Refactor: removed commented out code

* Refactor: Adds back QueryStatus

* Refactor: Adds scanning back to Explore

* Fix: Fixes prettier error

* Fix: Makes sure there is an error

* Merge: Merges with master

* Fix: Adds safeStringifyValue to error parsing

* Fix: Fixes table result calculations

* Refactor: Adds ErrorContainer and generic error handling in Explore

* Fix: Fixes so refIds remain consistent

* Refactor: Makes it possible to return result even when there are errors

* Fix: Fixes digest issue with Angular editors

* Refactor: Adds tests for explore utils

* Refactor: Breakes current behaviour of always returning a result even if Query fails

* Fix: Fixes Prettier error

* Fix: Adds back console.log for erroneous querys

* Refactor: Changes console.log to console.error
2019-05-10 14:00:39 +02:00
Hugo Häggmark
ceb9f0855b
Chore: Replaces moment with Grafanas DateTime (#16919)
* Wip: Initial commit

* Refactor: Replaces moment.utc(

* Refactor: replaces the last isMoment statements

* Refactor: Removes almost all moment imports

* Refactor: Moves moment_wrapper to grafana/ui

* Refactor: Renames momentWrapper

* Refactor: Removes one more moment import

* Refactor: Removes unitOfTime import

* Fix: Fixes Prettier error

* Refactor: Renames DateTimeType to DateTime

* Refactor: Renames isDateTimeType to isDateTime

* Refactor: Renames dateTime to dateTime

* Feature: Bans moment imports and types
2019-05-08 13:51:44 +02:00
Ryan McKinley
d881976c9d Refactor: move datemath to grafana/ui (#16890)
* move datemath to grafana/ui

* don't reference @grafana/ui from its own component
2019-05-06 12:36:42 +02:00
Marcus Efraimsson
fe20dde5db
Explore: Use SeriesData format for loki/logs (#16793)
This is the first step moving towards Explore supporting logs for 
more datasources than Loki. In the first step we move all the log 
processing from Loki into Explore.
- Make explore convert logs result returned from datasources to SeriesData, 
if needed, and for now convert SeriesData to LogsModel.
- Loki datasource query now returns SeriesData and all
processing have been moved into explore instead.
- Removed key from LogRowModel and use log row indexes as 
the unique key instead.
- Removed id from LogsModel since it looks like it's not in use.
- Introduced a new class FieldCache which is convenient to use when
looking up multiple fields and/or field types and series values.

Closes #16287
2019-04-30 18:21:22 +02:00
Marcus Efraimsson
02cb7ff436
Explore: Support user timezone (#16469)
Explore now uses the timezone of the user to decide if local browser 
time or UTC should be used. 
- Now uses TimeRange instead of RawTimeRange in explore item
state tree and only parsing actual time in a few action
handlers.
- Time picker should now properly handle moving back/forward and
apply time range when both utc and non utc time zone.
- URL range representation is changed from YYYY-MM-DD HH:mm:ss
to epoch ms.
- Now uses AbsoluteTimeRange in graph component instead of moment.
- Makes a copy of the time range passed to timeSrv to make sure immutability
of explore time range when for example elasticsearch test datasources uses
timeSrv and sets a time range of last 1 min.
- Various refactorings and cleanup.

Closes #12812
2019-04-29 18:28:41 +02:00
Torkel Ödegaard
057577dcc5
Heatmap: Fixed auto decimals when bucket name is not number but contains dots, fixes #13019 (#16609) 2019-04-16 10:39:12 +02:00
Johannes Schill
406ef962fc Explore & Dashboard: New Refresh picker (#16505)
* Added RefreshButton

* Added RefreshSelect

* Added RefreshSelectButton

* Added RefreshPicker

* Removed the magic string Paused

* Minor style changes and using Off instead of Pause

* Added HeadlessSelect

* Added HeadlessSelect story

* Added SelectButton

* Removed RefreshSelectButton

* Added TimePicker and moved ClickOutsideWrapper to ui/components

* Added TimePickerPopOver

* Added react-calendar

* Missed yarn lock file

* Added inputs to popover

* Added TimePicker and RefreshPicker to DashNav

* Moved TimePicker and RefreshPicker to app/core

* Added react-calendar to app and removed from ui/components

* Fixed PopOver onClick

* Moved everything back to ui components because of typings problems

* Exporing RefreshPicker and TimePicker

* Added Apply and inputs

* Added typings

* Added TimePickerInput and logic

* Fixed parsing of string to Moments

* Fixed range string

* Styling and connecting the calendars and inputs

* Changed Calendar styling

* Added backward forward and zoom

* Fixed responsive styles

* Moved TimePicker and RefreshPicker into app core

* Renamed menuIsOpen to isOpen

* Changed from className={} to className=""

* Moved Popover to TimePickerOptionGroup

* Renamed all PopOver to Popover

* Renamed popOver to popover and some minor refactorings

* Renamed files with git mv

* Added ButtonSelect and refactored RefreshPicker

* Refactored TimePicker to use new ButtonSelect

* Removed HeadlessSelect as suggested

* fix: Fix typings and misc errors after rebase

* wip: Enable time picker on dashboard and add tooltip

* Merge branch 'master' into hugoh/new-timepicker-and-unified-component

# Conflicts:
#	packages/grafana-ui/package.json
#	packages/grafana-ui/src/components/Input/Input.test.tsx
#	packages/grafana-ui/src/components/Input/Input.tsx
#	packages/grafana-ui/src/utils/validate.ts
#	public/app/features/dashboard/panel_editor/QueryOptions.tsx
#	yarn.lock

* fix: Snapshot update

* Move TimePicker default options into the TimePicker as statics, pass the tooltipContent down the line when wanted and wrap the button in a tooltip element

* fix: Override internal state prop if we provide one in a prop

* Updated snapshots

* Let dashnav control refreshPicker state

* feat: Add a stringToMs function

* wip: RefreshPicker

* wip: Move RefreshPicker to @grafana/ui

* wip: Move TimePicker to @grafana/ui

* wip: Remove comments

* wip: Add refreshPicker to explore

* wip: Use default intervals if the prop is missing

* wip: Nicer way of setting defaults

* fix: Control the select component

* wip: Add onMoveForward/onMoveBack

* Remove code related to the new time picker and refresh picker from dashnav

* Fix: Typings after merge

* chore: Minor fix after merge

* chore: Remove _.map usage

* chore: Moved refresh-picker logic out of the refresh picker since it will work a little differently in explore and dashboards until we have replaced the TimeSrv

* feat: Add an Interval component to @grafana/ui

* chore: Remove intervalId from redux state and move setInterval logic from ExploreToolbar to its own Interval component

* feat: Add refreshInterval to Explore's URL state

* feat: Pick up refreshInterval from url on page load

* fix: Set default refreshInterval when no value can be retained from URL

* fix: Update test initial state with refreshInterval

* fix: Handle URLs before RefreshPicker

* fix: Move RefreshInterval to url position 3 since the segments can take multiple positions

* fix: A better way of detecting urls without RefreshInterval in Explore

* chore: Some Explore typings

* fix: Attach refresh picker to interval picker

* chore: Sass fix for refresh button border radius

* fix: Remove refreshInterval from URL

* fix: Intervals now start when previous interval is finished

* fix: Use clearTimeout instead of clearInterval

* fix: Make sure there's a delay set before adding a timeout when we have slow explore queries

* wip: Add refresh picker to dashboard

* feat: Add util for removing keys with empty values

* feat: RefreshPicker in dashboards and tmp rem out old RefreshPicker

* fix: Remove the jumpy:ness in the refreshpicker

* Changed placement and made it hide when your in dashboard settings

* chore: Move logic related to refresh picker out of DashNav to its own component

* feat: Add tooltip to refreshpicker

* fix: Fix bug with refreshpicker not updating when setting to 'off'

* fix: Make it possible to override refresh intervals using the dashboard intervals

* chore: Change name of Interval to SetInterval to align with ecmascripts naming since its basically the same but declarative and async

* fix: Use default intervals when auto refresh is empty in dashboard settings

* fix: Hide time/interval picker when hidden is true on the model, such as on the home dashboard

* fix: Interval picker will have to handle location changes since timeSrv wont

* RefreshPicker: Refactoring refresh picker

* RefreshPicker: minor refactoring
2019-04-16 09:15:23 +02:00
Hugo Häggmark
7eabc282e9
Chore: Adds typings to lodash (#16590) 2019-04-15 12:11:52 +02:00
Hugo Häggmark
e5c1cbabb1
Fix: Pass missing maxDataPoints to query in Explore (#16513)
Fixes: #16490
2019-04-11 13:57:04 +02:00
Steven Sheehy
0bc314a47b Feature: Case insensitive Loki search (#15948)
* Case insensitive Loki search
* Make Loki case insensitivity work with highlighting

Signed-off-by: Steven Sheehy <ssheehy@firescope.com>
2019-03-28 15:58:19 +01:00
Andrej Ocenas
a978e28e7c
chore(core/utils): Add typings to datemath.ts (#16195)
* Add typings

* Remove explicit cast
2019-03-25 14:32:55 +01:00
Torkel Ödegaard
e578e8d2dc
Merge pull request #16189 from grafana/hugoh/explore-graphite-url-not-working
Added target as isMetric property
2019-03-25 10:54:22 +01:00
Hugo Häggmark
b42dec7353 fix: added target and datasource as isMetric property
Fixes: #15862
2019-03-25 09:08:17 +01:00
Torkel Ödegaard
20fec4d261 Panels: Added more tests for change panel plugin 2019-03-24 16:39:55 +01:00
Torkel Ödegaard
25cd196c09
Merge pull request #16006 from grafana/fix-explore-refId
Explore: Query row using character refId instead of number
2019-03-18 22:59:47 +01:00
Peter Holmberg
384e11fd68 Copied from new timepicker and unified component branch 2019-03-18 15:41:46 +01:00
Peter Holmberg
be7a5dab69 reorder imports 2019-03-18 11:23:40 +01:00
Peter Holmberg
cb9bda810f test 2019-03-18 11:21:40 +01:00
Peter Holmberg
39728c885b rename to char 2019-03-18 11:17:58 +01:00
Peter Holmberg
6ca1ae309a set correct return type 2019-03-15 08:52:25 +01:00
Peter Holmberg
52dcb9bf00 renaming function 2019-03-14 17:39:56 +01:00
Peter Holmberg
cf55d68894 using refId from panel model 2019-03-14 17:20:33 +01:00
Torkel Ödegaard
d6bab53d3b
Merge pull request #15626 from grafana/davkal/15607-explore-line-colors
Explore: Make sure line graphs get different colors
2019-03-13 12:21:44 +01:00
Torkel Ödegaard
71159fb606 Merge remote-tracking branch 'origin/master' into bar-gauge-poc 2019-03-13 08:26:06 +01:00
ryan
f7f124c56b reuse deprecationWarning 2019-03-10 10:37:44 -07:00
ryan
b2a7891b08 move stringToJsRegex 2019-03-09 23:50:46 -08:00
Torkel Ödegaard
01eb5fade3 Merge branch '11780_wrong_repexp_in_series' of https://github.com/SamuelToh/grafana into SamuelToh-11780_wrong_repexp_in_series 2019-03-08 13:40:50 +01:00
Daniel Lee
8b1e25b50a utils: show string errors. Fixes #15782 2019-03-05 09:32:02 +01:00
parry
25b09168eb Don't mutate seriesList parameter in mergeSeriesByTime (#15619)
* do not mutate seriesList in mergeSeriesByTime

* extendedseriesList -> extendedDatapointsList

* remove toString() from datapoints, since the value can be null
2019-03-04 09:56:47 +01:00
SamuelToh
6bfbdbe20b 11780: invalid reg value can cause unexpected behaviour 2019-03-01 20:34:40 +10:00
David Kaltschmidt
e6a74eb1a2 Explore: Make sure line graphs get different colors
- lines for graphs from different query rows end up in different
transactions
- within each transaction the color distribution resets leading to color
overlap
- this change takes existing transaction colors into account
2019-02-24 10:01:50 -08:00
Dominik Prokop
d4c40e4360 Imports updates 2019-02-21 15:12:22 +01:00
Peter Holmberg
58f194b483 Merge branch 'master' into bar-gauge-poc 2019-02-21 10:38:26 +01:00
Peter Holmberg
0de9c03879 Merge branch 'gauge-multi-series' into bar-gauge-poc 2019-02-19 15:53:05 +01:00
Dominik Prokop
88a46e6dd4 Bump Prettier version (#15532)
* Fix prettier version to 1.16.4
2019-02-19 15:41:35 +01:00
David
2c92365969
Merge pull request #15305 from avaly/feature/ansi-colors
Support ANSI colors codes in Loki logs
2019-02-14 18:01:23 +01:00
Torkel Ödegaard
cfea8bdcae Prettier had not been running as a precommit hook for some time so had to run in on all files again 2019-02-13 11:14:53 +01:00
Dominik Prokop
1693f083cc Move deduplication calculation from Logs component to redux selector 2019-02-11 16:57:49 +01:00
Dominik Prokop
14bf960b64 Merge branch 'master' into explore/dedup-strategu-url 2019-02-11 12:03:45 +01:00
Torkel Ödegaard
2284175638 Merge branch 'master' into gauge-multi-series 2019-02-11 11:45:02 +01:00
Torkel Ödegaard
bb8bec5aaa Merge branch 'master' into core/theming 2019-02-08 09:05:41 +01:00
Dominik Prokop
229d646bfc Persis deduplication strategy in url 2019-02-07 18:01:09 +01:00
Valentin Agachi
ec0e03e547 Support ANSI colors codes in Loki logs
Closes #15114
2019-02-08 00:49:39 +08:00
Torkel Ödegaard
78ea7ae783
Merge pull request #15212 from grafana/dashboard-react-page
Dashboard react page
2019-02-07 14:23:44 +01:00
Dominik Prokop
ac50d2b31f Merge branch 'master' into core/theming 2019-02-07 14:20:53 +01:00
Torkel Ödegaard
7edc3fdd5c Added another error object message detection 2019-02-06 21:35:01 +01:00
Torkel Ödegaard
dd0afd0a0b Big refactoring for dashboard init redux actions 2019-02-06 19:42:04 +01:00
corpglory-dev
ee132c1091 Fix SemVersion.isGtOrEq 2019-02-06 19:59:28 +03:00
Dominik Prokop
7eb2558fc5 Fix issue with graph legend color picker disapearing on color selection 2019-02-06 15:06:27 +01:00
Torkel Ödegaard
fa32198831 Merge branch 'master' into dashboard-react-page 2019-02-05 17:56:04 +01:00
Dominik Prokop
6b1390b972 Update types and themes usage in components 2019-02-05 17:04:48 +01:00
Peter Holmberg
9d3d1bc669 refactor panel 2019-02-05 16:34:01 +01:00
Torkel Ödegaard
28fc27c4ae Merge branch 'master' of github.com:grafana/grafana into dashboard-react-page 2019-02-05 09:23:58 +01:00
Torkel Ödegaard
d978a66ef6 Fixed lots of loading flow issues and updated solo route page 2019-02-04 18:24:56 +01:00
Hugo Häggmark
a0c4837eb5 Merge with master 2019-02-04 15:06:01 +01:00
Hugo Häggmark
96aef3bab8 Replaced intialQueris with queryKeys 2019-02-04 13:41:29 +01:00
Dominik Prokop
1a0b21b8d1 Minor post review changes 2019-02-01 15:27:02 +01:00
Dominik Prokop
6ab9355146 Restoring explore panels state from URL 2019-02-01 12:33:15 +01:00
Dominik Prokop
f9bab9585a wip 2019-01-31 19:38:49 +01:00
Dominik Prokop
db17262ea4 Add util for handling promise cancelation to avoid setting state on unmounted components
https://github.com/facebook/react/issues/5465
2019-01-29 12:10:03 +01:00
Torkel Ödegaard
daab7a5f6e
Merge pull request #15099 from grafana/tooling/storybook-poc
Named colors & storybook
2019-01-28 20:47:46 +01:00
Torkel Ödegaard
a7b486d998
Merge pull request #15040 from grafana/14807-enable-webit-scrollbar-styles
Re-enable webit-prefixed scrollbar styles
2019-01-28 17:51:39 +01:00
Dominik Prokop
7a8eb8c115 Merge branch 'master' into tooling/storybook-poc 2019-01-28 17:36:41 +01:00
Torkel Ödegaard
0975f816aa Updated url query param encoding to exctly match angular encoding 2019-01-26 12:05:37 +01:00
Johannes Schill
cf44c0cf87 chore: Better comment 2019-01-24 12:51:11 +01:00
Johannes Schill
a91037fb50 chore: Remove comment and unneeded export 2019-01-24 12:43:25 +01:00
Johannes Schill
45fc9c1860 fix: Enable -webkit-scrollbar related css when there's no overlay scrollbar #14807 2019-01-24 12:43:25 +01:00
Johannes Schill
5c72e4e668 fix: Use custom whitelist for XSS sanitizer to allow class and style attributes 2019-01-23 11:27:02 +01:00
Johannes Schill
15d560a1c0 feat: wip: Sanitize user input on text panel 2019-01-22 09:36:07 +01:00
Dominik Prokop
4b9e933691 Added config provider to be able to access config easily from react components 2019-01-22 09:11:30 +01:00
Torkel Ödegaard
5d17ad1103 more typings work around data query and data source 2019-01-18 18:59:32 +01:00
Torkel Ödegaard
febb9e7168 Moved data source and data query types 2019-01-17 17:59:47 +01:00
David Kaltschmidt
9aede9e636 Fix reducer issues 2019-01-15 20:04:03 +01:00
David Kaltschmidt
be172d3e4a Save state in URL and fix tests 2019-01-15 20:03:55 +01:00
David Kaltschmidt
68c039b289 Allow multiple Explore items for split 2019-01-15 20:03:53 +01:00
David Kaltschmidt
2be2deddb8 WIP Explore redux migration 2019-01-15 20:03:51 +01:00
Torkel Ödegaard
ba9d5115d2 Merge branch 'master' into kbn-formats-refactor 2019-01-11 14:33:04 +01:00
Torkel Ödegaard
9e6411bf4b value formats: another rename and updates code to use new valueFormats func 2019-01-11 13:31:25 +01:00
Torkel Ödegaard
fda0f92cf9
Merge pull request #12991 from pgiraud/repeat_min_span
Repeating panels - Max per row
2019-01-11 09:31:21 +01:00
Hugo Häggmark
dc9b83030f Removed default export for colors 2019-01-11 07:03:12 +01:00
Hugo Häggmark
d376fae393 Moved colorpicker to ui/components 2019-01-11 07:03:12 +01:00
Pierre GIRAUD
97b087f5a5
Use factors for max repeated panels per row 2019-01-09 11:17:48 +01:00
Peter Holmberg
38dcbeb2fd removing duplicated things 2019-01-08 15:56:01 +01:00
Torkel Ödegaard
5d3f4422c5 initial design for way to build value formats lazily and a backward compatability layer via Proxy 2019-01-03 09:39:46 +01:00
David Kaltschmidt
757d6f322e s/initialDatasourceId/initialDatasource/ 2019-01-02 11:32:12 +00:00
David Kaltschmidt
67ebdcbcc3 Explore: Remember last use datasource
- use local storage to store last used database
- renamed `datasourceName` property to `initialDatasourceId` for consistency
- adapted tests
2018-12-31 18:30:32 +00:00
Torkel Ödegaard
66a13b281c Merge branch 'grafana-lib' 2018-12-25 19:26:46 +01:00
Torkel Ödegaard
a02b4b47b6 Moving a couple of types to @grafana/ui 2018-12-23 09:15:32 +01:00
Kofi Jedamzik
281312ffcd Add units for blood sugar concentration 💉 2018-12-19 22:23:25 +01:00
Torkel Ödegaard
9e92609313
Merge pull request #14113 from cinaglia/fix-csv-decimal-places
Retain decimal precision when exporting CSV
2018-12-19 11:56:27 +01:00
Torkel Ödegaard
d21b5899c1 Merge branch 'master' of github.com:grafana/grafana 2018-12-19 11:24:25 +01:00
Torkel Ödegaard
6542bfb83e Merge branch 'fix-misspell-issues' of https://github.com/mjtrangoni/grafana into mjtrangoni-fix-misspell-issues 2018-12-19 11:21:34 +01:00
Jonas Hahnfeld
0cf3e94934 Add units for Floating Point Operations per Second
This is an important metric for computation throughput in the context
of High Performance Computing (HPC). I've never heard of the kilo
prefix here, nowadays it's mostly measured in MFLOP/s.
2018-12-18 12:11:21 +01:00
Erik Sundell
2835c4336d filter out table responses that don't have columns and rows 2018-12-17 16:46:22 +01:00
Erik Sundell
18b39967fc enable goto explore from query panel editor for all datasources 2018-12-17 16:44:57 +01:00
Torkel Ödegaard
eb6d0e9f51 Merge branch 'master' into develop 2018-12-07 14:59:38 +01:00
Torkel Ödegaard
9ac3821454 made unknown color theme aware and sync with graph color, some minor cleanup 2018-12-06 11:55:01 -08:00
Torkel Ödegaard
2e6690428f fixed logs to time series calculation issue, increased bucket size, fixes #14248 2018-12-06 12:12:43 +01:00
Mario Trangoni
0f74843332 public/app/core/*: Fix some misspell issues 2018-12-05 13:02:58 +01:00
Torkel Ödegaard
180ca021b5 Merge branch 'master' into develop 2018-12-05 10:17:22 +01:00
David Kaltschmidt
6ee7459f22 Explore: Logging query live preview of matches
A logging query has a selector part and a regexp. The regexp matches are highlighted when results return.
This change adds live preview to matches when modifying the regexp in a search field.

- delegate retrieval of match query to datasource
- datasource returns search expressions to be used to highlight a live preview of matches
- logs row now takes preview highlights
- logs row renders preview highlights with dotted line to distinguish from query run matches (solid line)
- fix react-highlight-words version to ensure custom chunk matcher
- custom chunk matcher can now also take incomplete regexps, eg, `(level` without inifinte looping
- perf: debounce of live preview to 500ms
- perf: only top 100 rows get the live preview
- preview is only supported with one query row (multiple rows semantic makes this tricky: regexp for row n should only filter results for query n)
2018-12-04 15:47:51 +01:00
David
34b8c5bb61
Merge pull request #14278 from grafana/14272-scan-old-logs
only make it possible to scan for older logs if there is at least one…
2018-12-04 15:44:55 +01:00
Erik Sundell
27c4db06fc improve comments 2018-12-04 15:00:24 +01:00
Erik Sundell
8b3bb95007 remove redudant spread 2018-12-04 14:01:32 +01:00
Erik Sundell
2af78aca8e Remove query empty from model 2018-12-04 13:23:26 +01:00
Erik Sundell
541a691aca only display scan button if there is at least one existing selector that returned an empty result 2018-12-04 11:00:21 +01:00
flopp999
8caeb13026
fixedUnit for Flow:l/min and mL/min
got stranged result with decimalSIPrefix
2018-12-04 08:03:25 +01:00
Torkel Ödegaard
9404d36ab5
Merge pull request #14135 from grafana/panel-edit-in-react
React Panel Editor Mode (For Angular and React Panels)
2018-12-03 11:50:06 +01:00
Torkel Ödegaard
d38a0a0b64
Merge pull request #14106 from grafana/unit-picker
Unit picker
2018-12-03 10:53:48 +01:00
David Kaltschmidt
a513130493 Fixed typo in function name 2018-11-30 15:19:09 +01:00
David Kaltschmidt
979f3f3e0c Review feedback
- fixed typo
- moved result calculation to explore utils
- use component keys instead of componentWillReceiveProps
- require logs to have and id, to as use as Logs component key
- render delay based on row count
2018-11-30 12:26:57 +01:00
Johannes Schill
c722ea4f76 react-panel: Input validation should be optional 2018-11-30 11:04:56 +01:00
Johannes Schill
a8e184c025 react-panel: Clean up input validation and increase code readability 2018-11-30 10:21:55 +01:00
Johannes Schill
69ae3d2e6a react-panel: Time range options moved to "Queries" tab 2018-11-30 10:21:54 +01:00
David Kaltschmidt
ae26f7126f Explore: Logging render performance
- moved from grid to flexbox
- calculate Explore results only when query transactions change to prevent expensive re-renders
- split up rendering of graph and log data
- render log results in 2 stages
2018-11-29 17:30:11 +01:00
Ryan McKinley
b3e6da0cbd check for null with toLocalString (#14208) 2018-11-28 00:24:59 -08:00
Torkel Ödegaard
2dc44f6089 Merge branch 'master' into develop 2018-11-23 13:59:35 +01:00
flopp999
91d97ab5b5 Fix abbreviations of Litre/min and milliLitre/min (#14114) 2018-11-23 02:48:22 -08:00
Erik Sundell
a5947e820c Merge branch 'master' into develop 2018-11-22 13:43:25 +01:00
David Kaltschmidt
bbaa5b63c8 Fix history rendering for DataQuery 2018-11-22 11:02:53 +01:00
David Kaltschmidt
22987ee75f Renamed targets to queries 2018-11-21 16:28:30 +01:00
David Kaltschmidt
b3161bea5a Explore: Introduce DataQuery interface for query handling
- Queries in Explore have been string based
- This PR introduces the use of the DataQuery type to denote all queries handled in Explore
- Within Explore all handling of DataQueries is transparent
- Modifying DataQueries is left to the datasource
- Using `target` as variable names for DataQueries to be consistent with the rest of Grafana
2018-11-21 14:45:57 +01:00
Torkel Ödegaard
649d727805 Merge branch 'master' into develop 2018-11-20 09:47:23 +01:00
Carl Bergquist
6049855dc7
Merge pull request #13947 from bergquist/alerting_for
Introduce alert debouncing
2018-11-19 10:38:02 +01:00
Victor Cinaglia
4ed0a3d29a
Retain decimal precision when exporting CSV
Using `Number.prototype.toLocaleString()` has the unexpected behavior of truncating anything
exceeding 3 decimal digits on floats.

Additionally, it introduces inconsistencies (comma vs period separators) which could make processing the
output CSV harder than it could be.  The proposed solution here is to simply let numbers be cast
automatically via string concatenation.

Fixes #13929
2018-11-18 12:40:43 -05:00
Peter Holmberg
cc7bf31c3e Merge remote-tracking branch 'origin/develop' into unit-picker 2018-11-16 16:54:02 +01:00
Peter Holmberg
61a704a64e some progress on groups and options 2018-11-15 17:14:43 +01:00
bergquist
7ba04466a2 alerting: improve annotations for pending state 2018-11-15 14:30:36 +01:00
Peter Holmberg
063a1acf94 started on options and groups 2018-11-14 17:00:26 +01:00
Torkel Ödegaard
e0feb72637 Merge remote-tracking branch 'origin/data-source-settings-to-react' into develop 2018-11-12 16:17:05 +01:00
David Kaltschmidt
a5ed86edba Graph log entries by log level 2018-11-06 12:00:05 +01:00
Peter Holmberg
ffc06e9962 extract store from configurestore 2018-11-05 16:54:48 +01:00
David Kaltschmidt
bf1af66292 Explore: error handling and time fixes
- use global range types
- add ErrorBoundary around individual Explore components
- fix table merge on empty results
- fix TimePicker date parsing on ISO dates
- fix TimePicker range string after relative move
2018-10-26 18:16:00 +02:00
Torkel Ödegaard
e7f6cdc625 Merge branch '13739/alert-to-react' 2018-10-25 17:44:23 +02:00
David Kaltschmidt
fbed57ab43 Get query hints per query transaction 2018-10-23 16:10:52 +02:00
David Kaltschmidt
2e02a8c855 Explore: query transactions
Existing querying was grouped together before handed over to the
datasource. This slowed down result display to however long the slowest
query took.

- create one query transaction per result viewer (graph, table, etc.)
  and query row
- track latencies for each transaction
- show results as soon as they are being received
- loading indicator on graph and query button to indicate that queries
  are still running and that results are incomplete
- properly discard transactions when removing or changing queries
2018-10-23 16:09:48 +02:00
Peter Holmberg
bb6409384e connected to store, self remove logic 2018-10-23 16:00:04 +02:00
Marcus Efraimsson
9f85a7494a
Merge pull request #13651 from grafana/13628_fix_dag
Make sure to add all variable nodes to directed acyclic graph (dag) before linking variables
2018-10-15 11:42:59 +02:00
Francisco Guimarães
b4bca473db Adding tests 2018-10-13 09:32:21 -03:00
Francisco Guimarães
3db5d14214 Adding time clockms and clocks 2018-10-13 09:03:16 -03:00
Marcus Efraimsson
4b1a2d3b11
make sure to add all variable nodes to dag before linking variables 2018-10-12 14:15:44 +02:00
David Kaltschmidt
76a3b1a793 Explore: highlight typed text in suggestions
- use react-highlight-words
- add highlighting (color and border) to the matching substring of the
  suggested items in the typeahead
- extracted match finding from logging datasource
- created new utils/text.ts class for text-related functions
- added more types
2018-10-09 12:33:25 +02:00
David Kaltschmidt
5ec9adb7a7 Explore: compact state URLs
- allow positional state array in URL
- key-based parsing as fallback
- fix issue where split state was kept in URL after closing split
2018-10-05 17:09:40 +02:00
David Kaltschmidt
9914071cc0 Dont rebuild datasource options on each render 2018-10-04 15:28:32 +02:00
David Kaltschmidt
68dfc5699b Moved explore helpers to utils/explore 2018-10-01 12:56:26 +02:00
David Kaltschmidt
54c9beb146 Explore: jump to explore from panels with mixed datasources
- extends handlers for panel menu and keypress 'x'
- in a mixed-datasource panel finds first datasource that supports
  explore and collects its targets
- passes those targets to the found datasource to be serialized for
  explore state
- removed `supportMetrics` and `supportsExplore`
- use datasource metadata instead (set in plugin.json)
- Use angular timeout to wrap url change for explore jump
- Extract getExploreUrl into core/utils/explore
2018-10-01 12:03:57 +02:00
David Kaltschmidt
200784ea4a Explore: Store UI state in URL
Storing queries, split state, and time range in URL.

- harmonize query serialization when generating Explore URLs in
  dashboards (use of `renderUrl`)
- move URL parse/serialization to Wrapper
- keep UI states under two keys, one for left and one for right Explore
- add option to angular router to not reload page on search change
- add lots of types
- fix time service function that gets triggered by URL change
2018-09-28 16:44:07 +02:00
Torkel Ödegaard
c7fdea1dfb wip: dashboard permissions to redux 2018-09-13 16:00:02 +02:00
Torkel Ödegaard
c7bb44b34a
fix: url update loop fix (#13243) 2018-09-12 13:13:47 +02:00
Patrick O'Carroll
2b74b1c4d6 added radix rule and changed files to follow rule (#13153) 2018-09-05 16:51:31 +02:00
Torkel Ödegaard
00c0b71f3d Merge branch '12918-only-arrow-functions4' 2018-09-05 11:46:54 +02:00
Patrick O'Carroll
72ab24f300 Changed functions to arrow functions for only-arrow-functions rule. (#13131) 2018-09-05 07:47:30 +02:00
Patrick O'Carroll
dc4f547a40 Changed functions to arrow functions for only-arrow-functions rule. 2018-09-04 17:02:32 +02:00
Overcooked Panda
4ab3826a08 added Bitcoin as a currency option 2018-09-03 22:02:58 -05:00
Patrick O'Carroll
7837ee4466 Updated rules for variable name (#13106)
* updated rules for variable name and fixed files that didn't follow new rules

* fixed test so it uses new rule

* made exceptions to rule in interval_variable
2018-09-03 11:00:46 +02:00
Patrick O'Carroll
552a61b6ae changed var to let in 50 files (#13075) 2018-08-30 09:03:11 +02:00
Patrick O'Carroll
b494a29e02 changed var to let in last files (#13087) 2018-08-30 08:58:43 +02:00
Patrick O'Carroll
5e0d0c5816 changed var to const (#13061) 2018-08-29 14:26:50 +02:00
Torkel Ödegaard
e1beaaa0f7
tslint: tslint to const fixes part3 (#13036) 2018-08-26 21:52:57 +02:00
Torkel Ödegaard
9b978b7203
tslint: autofix of let -> const (#13033) 2018-08-26 17:14:40 +02:00
Marcus Efraimsson
d6ad1ced6d
when value in variable changes, identify which variable(s) to update
Given you have variables a, b, c, d where b depends on a, c depends on b, c, d depends on a.
When updating a only an update of b and d should be triggered since c depends on b
and c will be updated eventually when the update of b are finished.
2018-08-17 12:20:21 +02:00
Worty
4fa979649c also fixed "Watt per square metre" 2018-07-30 16:28:19 +02:00
Worty
9c0fbe5a0b fixed that missing one 2018-07-30 16:19:31 +02:00
Worty
895b4b40ee correct volume unit 2018-07-27 16:26:04 +02:00
Michał Węgrzynek
ee2eda615e
Update kbn.ts 2018-07-23 12:07:54 +02:00
Rollulus Rouloul
2fbf2bba4e fix: requests/sec instead of requets (#12557) 2018-07-11 03:33:19 -07:00
Marcus Efraimsson
296a841685
Merge pull request #12123 from alexanderzobnin/fix-11792
graph: fix legend decimals precision calculation
2018-06-20 13:08:17 +02:00
flopp999
2d1f59a9cc Added Litre/min and milliLitre/min in Flow (#12282)
units: Litre/min and milliLitre/min in Flow
2018-06-15 10:54:38 +02:00
Marcus Efraimsson
9dd38031e4
Merge pull request #11233 from flopp999/patch-2
units: W/m2(energy), l/h(flow) and kPa(pressure)
2018-06-14 15:36:38 +02:00