* 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.
* 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>
* 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
* 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
* 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
* 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
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.
* 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
* 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>
... 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
* Fix: Show results of instant queries in Explore tables
* Add PreferredVisualisationType to meta
* Implement visualisation exception for Prometheus
* Implement visualisation exception for Elastic
* 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
* 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
* 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>
* 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>
* 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
* 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>
* 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>
* 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
* 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>
* 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>
* 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>
* 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>
* 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
* 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>
* 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
* 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>
* 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.
* 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
* Explore: adds QueryRowErrors component
* Explore: updates QueryRow to use QueryRowErrors component
* Explore: updates PromQueryField to remove error render
* Explore: updates Elastic query field to remove error render
* Explore: updates LokiQueryFieldForm to remove error render
* Explore: updates QueryRow component - brings back passing errors down
* Explore: removes QueryRowErrors component
* Explore: updates ErrorContainer component - moves out data filtering
* Explore: updates QueryRow component - changes QueryRowErrors to ErrorContainer
* Explore: updates Explore component - adds error filtering for ErrorContainer
* Explore: updates ErrorContainer and adds a basic test for it
* Explore: updates Explore component props name and adds a basic render test
* Explore: adds snapshots for Explore and ErrorContainer
* Explore: adds a test for error render
* Explore: adds a comment to Explore component explaining the way we filter non-query-row-specific errors
* Explore: adds getFirstNonQueryRowSpecificError method to explore utilities
* Explore: extracts getFirstNonQueryRowSpecificError method and slightly refactors Explore component
* Explore: updates Explore component tests to cover non-query-row-specific errors
* Explore: Refactor active buttons css
* Explore: Add query history button
* WIP: Creating drawer
* WIP: Create custom drawer (for now)
* Revert changes to Drawer.tsx
* WIP: Layout finished
* Rich History: Set up boilerplate for Settings
* WIP: Query history cards
* Refactor, split components
* Add resizability, interactivity
* Save history to local storage
* Visualise queries from queryhistory local storage
* Set up query history settings
* Refactor
* Create link, un-refactored verison
* Copyable url
* WIP: Add slider
* Commenting feature
* Slider filtration
* Add headings
* Hide Rich history behind feature toggle
* Cleaning up, refactors
* Update tests
* Implement getQueryDisplayText
* Update lockfile for new dependencies
* Update heading based on sorting
* Fix typescript strinctNullCheck errors
* Fix Forms, new forms
* Fixes based on provided feedback
* Fixes, splitting component into two
* Add tooltips, add delete history button
* Clicking on card adds queries to query rows
* Delete history, width of drawers
* UI/UX changes, updates
* Add number of queries to headings, box shadows
* Fix slider, remove feature toggle
* Fix typo in the beta announcement
* Fix how the rich history state is rendered when initialization
* Move updateFilters when activeDatasourceFilter onlyto RichHistory, remove duplicated code
* Fix typescript strictnull errors, not used variables errors
* Alphabetized tslint and tsconfig files
* Optimized tsconfig files
* Optimized editorconfig & prettier config files
… to reduce redundancy
* Switched to @grafana/tsconfig
… and:
* de-duped options
* removed options with default values
* Fixed nasty issue with types for nested slate-react
* Replaced TSLint with ESLint
* TSLint disables → ESLint disables
… also JSHint removals, which haven’t had an affect since it was replaced with TSLint.
* Compliances for ESLint, Prettier and TypeScript
* Updated lockfile
* Explore: updates grafana-data explore query field props with explore mode
* Explore: updates query row to pass down explore mode to query fields
* Explore: adds LokiExploreQueryEditor
* Explore: updates loki query field form to render children
* Explore: adds loki explore extra field component
* Explore: adds extra field element to loki query field form
* Explore: updates loki explore query editor to use extra field element
* Explore: moves ExploreMode to grafana-data
* Explore: updates query row limit string
* Explore: adds maxLines to DataQuery
* Explore: adds maxLines to loki datasource runRangeQueryWithFallback
* Explore: adds onChangeQueryLimit to LokiExploreQueryEditor
* Explore: updates loki explore query editor to render extra field only in logs mode
* Explore: fixes query limits for live and legacy queries
* Explore: fixes result processor max lines limit in get logs result
* Explore: fixes Loki datasource limit test
* Explore: removes unnecessary ExploreMode from Loki language provider
* Explore: fixes formatting
* Explore: updates grafana-data datasource types - replaces strings with explore mode enum
* Explore: updates loki explore query field props to take ReactNode
* Explore: updates the way we calculate loki query lines limit to fall back to 0 lines on negative or invalid input instead of datasource maxLines
* Explore: updates result processor get logs result method to avoid counting invalid/negative line limits
* Explore: updates loki result transformer to process only an appropriate slice of a result instead of an entire one
* Explore: adds a method for query limit preprocessing/mapping
* Explore: updates loki datasource run range query with fallback method to use options.maxDataPoints in dashboards
* Explore: removes unnecessary maxlineslimt from getLogsResult in resultProcessor
* Explore: moves line limit to metadata
* Explore: adds an ability to specify input type of extra field
* Explore: updates LokiExploreQueryEditor - adds an input type
* Explore: updates LokiExploreQueryEditor to run queries when maxLines is positive
* Explore: fixes failing import of ExploreMode
* Explore: fixes reducers test imports formatting
* Explore: updates Loki extra field with min value set to 0
* Explore: exports LokiExploreExtraFieldProps
* Explore: adds render test of LokiExploreQueryEditor
* Explore: adds LokiExploreQueryEditor snapshot
* Explore: updates LokiExploreQueryEditor onChangeQueryLimit method to prevent it from running when query input is empty - fixes cheatsheet display issue
* Explore: updates Loki editor snapshots
* Explore: fixes typo in test set name in LokiExploreQueryEditor
* Explore: adds a render test of LokiExploreExtraField
* Explore: fixes typo in LokiExploreQueryEditor
* Explore: updates LokiExploreQueryEditor snapshot due to timezone issues
* Explore: updates LokiExploreExtraField to export both functional component and a version using memo
* Explore: updates LokiExploreQueryEditor to export both functional component and memoized function
* Explore: updates LokiExploreQueryEditor - removes unnecessary react fragment
* Explore: updates LokiExploreQueryEditor snapshot
* Explore: adds LokiExploreQueryEditor tests for different explore mode cases
* Explore: fixes Loki datasource and result transformer
* Explore: updates LokiExploreQueryEditor snapshot
* Explore: updates LokiExploreQueryEditor tests and test setup
* Explore: updates LokiExploreQueryEditor - refactors component
* Explore: updates LokiExploreQueryEditor to use default import from LokiExploreExtraField
* Explore: updates LokiExploreQueryEditor snapshot
* Explore: fixes formatting
* Explore: updates LokiExploreQueryEditor max lines change
* Explore: updates LokiExploreQueryEditor tests checking ExtraFieldElement
* Explore: adds mock loki datasource to LokiExploreQueryEditor
* Explore: updates LokiExploreQueryEditor test mock - adds language provider
* Explore: updates LokiExploreQueryEditor snapshot
* Explore: updates Loki ResultTransformer to filter out rows on limit - logic to be moved into a component with new form styles
* Explore: updates LokiExploreQueryEditor tests
* wrap content in autosizer
* replace lib
* removing react-virtualized, correct type in editor.ts
* remove caret
* remove dep from grafana/ui and remove story util
* Loki: fix filter expression suggestions
- dont suggest term completion items in filter expression
- allow at least one character before suggesting term items
- keep logql expression when switching between Metrics/Logs mode
- show only history by default in completion items
* Clear results when changing mode
Closes#19598
Fixes bug introduced recently where the new PromQueryEditor did not preserve
the PromContext.Explore set on the query model by PromQueryField which caused
the table to be empty for Prometheus in explore.
* Table: Set & use field display processor
* Use applyFieldOverrides outside in story instead
* Change types a bit
* Table: Move to flexible layout
* Simplest possible custom field option
* Skip default column
* Added textAlign
* Explore: Set display processor for table data frame
* Fixed storybook
* Refactoring
* Progress on cell display mode
* Major progress
* Progress & refactoring
* Fixes
* Updated tests
* Added more tests
* Table: Progress on cell style customization
* Restored testdata random walk table scenario
* put back unrelated change
* remove unused things
* Updated table story
* Renamed property
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
* Dashboard: started to implement new time picker.
* TimePicker: working in full screen (except calendar).
* TimePicker: first draft on narrow screen variant.
* TimePicker: small adjustments to the narrow design.
* TimePicker: enabled range selection and started to style calendar.
* TimePicker: applied some more styling.
* Calendar: added so the calendar range selection is styled properly.
* Calendar: added styling for timepicker calendar in narrow screen.
* TimePicker: made it possible to select range from calendar.
* TimePicker: made the calendar have previous selected value.
* TimePicker: moved calendar to be able to update form state.
* TimePicker: calendar is now displayed onFocus or onClick.
* TimePicker: calendar will be closed if click outside input.
* Calendar: fixed the styling of the calendar in narrow screen.
* Calendar: made it work properly with narrow screen.
* TimePicker: connected recent to absolute time range.
* TimePicker: changed the label on recent ranges.
* TimePicker: cleaned up the range list and options.
* TimePicker: some more cleaning up.
* TimePicker: cleaned up the calendar a bit.
* TimePicker: some more refactorings.
* TimePicker: refactorings.
* TimePicker: styled modal properly.
* TimePicker: empty recent list.
* TimePicker: width when calendar in full screen.
* TimePicker: will validate input value.
* TimePicker: removed unused code.
* TimePicker: positioning with emotion instead of sass.
* Calendar: Made sure we send the dates in the correct order to the calendar.
* TimePicker: fixed theme.
* TimePicker: fixed positioning of the content.
* TimePicker: positioning of narrow.
* TimePicker: added some simple tets.
* TimePicker: fixed issue with invalid and added error message.
* TimePicker: added history.
* TimePicker: cleaned up snapshot data.
* TimePicker: fixed so we keep the quick values in the input.
* TimePicker: fixed the missing styling on UTC.
* TimePicker: added missing caret icon.
* TimePicker: fixed formatting on recent time ranges.
* TimePicker: added missing -.
* TimePicker: refactorings after feedback.
* TimePicker: renamed reserved prop name.
* TimePicker: added missing onChange call.
* TimePicker: removed alternative return type.
* TimePicker: fixed the sorting order on the recent list.
* TimePicker: added useCallback for the onEvent functions.
* TimePicker: moving away from default export.
* TimePicker: used the isMathString instead of private function.
* TimePicker: minor refactoring simplify the code.
* TimePicker: Added empty container that will expand when less then 4 recent searches.
* TimePicker: changed the top to be absolute relative to the container.
* TimePicker: updated snapshots for failing tests.
* Fixed shadow
* Move it down a bit
* added some more tests.
* Fixed so we change the anchor point of the time picker in really small screens.
* removed memo.
* fixed snapshot.
* Make sure that we always use the correct timeZone when formatting output.
* Fixed form background.
* Some minor fixes after demo.
* Making sure that empty info box is centered.
* updated snapshots for timepicker after css changes.
* fixed so we don't overflow when input validation error.
* adjusted final things on the time picker.
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
* first working example
* Support sorting, adding types while waiting for official ones
* using react-window for windowing
* styles via emotion
* sizing
* set an offset for the table
* change table export
* fixing table cell widths
* Explore: Use new table component in explore (#21031)
* Explore: Use new table component in explore
* enable oncellclick
* only let filterable columns be clickable, refactor renderrow
* remove explore table
* Keep using old merge tables logic
* prettier
* remove unused typings file
* fixing tests
* Fixed explore table issue
* NewTable: Updated styles
* Fixed unit test
* Updated TableModel
* Minor update to explore table height
* typing
* Logs: Optional logs label column
- reintroduces label column that was removed when log details were
introduced
- added to explore and also as a new option to logs panel
- explore column settings now stored in localstorage
- labels are rendered with font size xs
- labels that start with `_` or are called `level` or `filename` are not
displayed
- removed click handlers and moved remaining `LogLabel` logic into `LogLabels`
* Added prop to satisfy interface
* Review feedback
* removed comment
* Changed label of label column switch
* Grafana/Loki: Adds support for new Loki endpoints and metrics
* Adds `/loki/` prefix to new loki endpoints and updates response interfaces
* Improved legacy support
* Removed changes related to plugin.json and added Loki-specific hacks
* Fixes live streaming for legacy loki datasources
* Explore: fixes toolbars datasource selector and date picker responsiveness
* Explore: updates grafana UI time picker component - adds a class on long date
* Explore: updates styles for responsive long date without split
* Explore: adds styles for responsive time picker with long date during split
* Explore: updates long datetime detector to isDateTime, renames isAbsolute to hasAbsolute
* Explore: updates datasource responsiveness
* Explore: moves time picker styles
* Explore: updates datasource picker and select component responsiveness
* Explore: updates data source picker
* Explore: updates explore toolbar to use container width
* Explore: updates styles for datasource picker
* Explore: updates Grafana UI elements - select and single value with an ability to hide text
* Explore: updates time picker styles
* Explore: updates datasource select and date picker
* Explore: updates toolbar elements margin
* Explore: updates toolbar elements split breakpoints
* Explore: updates datasource picker label length with substrings
* Explore: updates the datasource picker label length
* Explore: removes refresh picker hide media query
* Explore: updates refresh picker style query to use xs breakpoint
Adds a config section with derived fields which is a config that allows you to create a new field based on a regex matcher run on a log message create DataLink to it which is the clickable in the log detail.
As discussed in a UX feedback session, it's annoying that queries are
automatically executed in Explore. This change adds props to override
the blur behavior.
- add `onBlur` to Explore query field props
- Explore's query row will pass down an empty function for onBlur to the
query fields
- pass onBlur through to the QueryField component for Loki and
Prometheus
- add test to QueryField to make sure if onBlur is specified, the
onRunQuery is not executed
Add LogDetail section that is shown when log line is clicked and expanded. Contains labels/fields and actions to show stats and add/remove label filter.
* Explore: Remove datasource testing on selector
- datasource testing gets in the way of fast query iteration: switching
between datasources can take seconds
- it should not be explore's duty to test datasources in the first place
- removed the concept of datasourceError in Explore, should not be its
concern
- datasource erorrs will express themselves in query errors just fine
- connection errors are still bubbled up
- removed reconnection logic from explore, should not be its concern
- missing labels in loki are still "visible" via an empty label selector
- Loki and Prometheus treated connection errors differently than other
datasources, making sure to pass through the original error message
* Show datasource error in query field for prom/loki/influx
* Removed connection test case, fixed disabled state
* refatoring alert box and using alert
* refactoring alertbox to alert
* Changed default to Error
* added buttonText, onButtonClick, omRemove
* Minor fix to buttons
* fixed onRemove
* Loki: Updated cheat sheet with new filter syntax
- updated cheat sheet with new filter syntax
- added user-specific examples from the user's label set
- added link to LogQL docs
- separated styles for examples (clickable) and expressions
* Review feedback
* PanelQueryRunner: Need to cache preProcessPanelData function between runs so last result can be remembered
* Better fix for remembering lastResult
* Code simplification
* Simplify code a bit
* I needed to learn some rxjs and understand this more, so just playing around
* Updated
* Removed all the complete calls
* Refactoring
* StreamHandler -> observable start
* progress
* simple singal works
* Handle update time range
* added error handling
* wrap old function
* minor changes
* handle data format in the subscribe function
* Use replay subject to return last value to subscribers
* Set loading state after no response in 50ms
* added missing file
* updated comment
* Added cancelation of network requests
* runRequest: Added unit test scenario framework
* Progress on tests
* minor refactor of unit tests
* updated test
* removed some old code
* Shared queries work again, and also became so much simplier
* unified query and observe methods
* implict any fix
* Fixed closed subject issue
* removed comment
* Use last returned data for loading state
* WIP: Explore to runRequest makover step1
* Minor progress
* Minor progress on explore and runRequest
* minor progress
* Things are starting to work in explore
* Updated prometheus to use new observable query response, greatly simplified code
* Revert refId change
* Found better solution for key/refId/requestId problem
* use observable with loki
* tests compile
* fix loki query prep
* Explore: correct first response handling
* Refactorings
* Refactoring
* Explore: Fixes LoadingState and GraphResults between runs (#18986)
* Refactor: Adds state to DataQueryResponse
* Fix: Fixes so we do not empty results before new data arrives
Fixes: #17409
* Transformations work
* observable test data
* remove single() from loki promise
* Fixed comment
* Explore: Fixes failing Loki and Prometheus unit tests (#18995)
* Tests: Makes datasource tests work again
* Fix: Fixes loki datasource so highligthing works
* Chore: Runs Prettier
* Fixed query runner tests
* Delay loading state indication to 200ms
* Fixed test
* fixed unit tests
* Clear cached calcs
* Fixed bug getProcesedDataFrames
* Fix the correct test is a better idea
* Fix: Fixes so queries in Explore are only run if Graph/Table is shown (#19000)
* Fix: Fixes so queries in Explore are only run if Graph/Table is shown
Fixes: #18618
* Refactor: Removes unnecessary condition
* PanelData: provide legacy data only when needed (#19018)
* no legacy
* invert logic... now compiles
* merge getQueryResponseData and getDataRaw
* update comment about query editor
* use single getData() function
* only send legacy when it is used in explore
* pre process rather than post process
* pre process rather than post process
* Minor refactoring
* Add missing tags to test datasource response
* MixedDatasource: Adds query observable pattern to MixedDatasource (#19037)
* start mixed datasource
* Refactor: Refactors into observable parttern
* Tests: Fixes tests
* Tests: Removes console.log
* Refactor: Adds unique requestId
* WIP: Use data frames in explore
* Explore: everything seems to be working again
* Reworked ResultProcessor tests
* Fixed unit test
* Add some typings and comments
* Performance/Webpack: Introduces more aggressive code-splitting and other perf improvements
- Introduces dynamic imports for built-in plugins
- Uses dynamic imports for various packages (rst2html, brace)
- Introduces route-based dynamic imports
- Splits angular and moment into separate bundles
* WIP: inital POC
* Wip: Moving forward
* Wip
* Refactor: Makes loading indicator work for Prometheus
* Refactor: Reverts prom observable queries because they did not work for multiple targets
* Refactor: Transforms all epics into thunks
* Fix: Fixes scanning
* Fix: Fixes so that Instant and TimeSeries Prom query loads in parallel
* Fix: Fixes negation logic error
* Wip: Introduces PanelData as a carries for query responses
* Refactor: Makes errors work again
* Refactor: Simplifies code somewhat and removes comments
* Tests: Fixes broken tests
* Fix query latency
* Remove unused code
* add appending utility
* add appending utility
* update comment
* rename to mutable
* move mutable functions out of DataFrameHelper
* move mutable functions out of DataFrameHelper
* move mutable functions out of DataFrameHelper
* turn DataFrameHelper into FieldCache
* guess time from name
* graph the numbers
* return the timeField, not just the index
* just warn on duplicate field names
* only use a parser if the input is a string
* append init all fields to the same length
* typo
* only parse string if value is a string
* DataFrame: test fixes
* Switch to null for missing values
* Fixed tests
* Editor: Fixes issue where only entire lines were being copied
Closes#18768
* Simplifies onCopy handler and factors out logic for easier testing
Also adds tests to verify behaviour
* Explore: clear results when you change datasource
* Explore: Clear results on data source change, and fix query hints issue
* Clear results on clear all
* Prometheus: Update logic of when to re-check query hints
* Changes brace-insertion behavior to be less annoying
* Removes use of braces plugin
* Revert "Removes use of braces plugin"
This reverts commit 4cf4a6073b.
* WIP: inital POC
* Wip: Moving forward
* Wip
* Refactor: Makes loading indicator work for Prometheus
* Refactor: Reverts prom observable queries because they did not work for multiple targets
* Refactor: Transforms all epics into thunks
* Fix: Fixes scanning
* Fix: Fixes so that Instant and TimeSeries Prom query loads in parallel
* Fix: Fixes negation logic error
* Propagate errors in stream events, and close streams
* Fixes several usability issues with QueryField component
- Can now indent with tab and `mod+[`, `mod+]`
- Copy/Cut preserves new lines, and paste correctly splits blocks now
- Adds support for selection hotkeys
* Explore/Prometheus: More consistently allows for multi-line queries
Allows a user to hit shift+enter to create a new line in the query field, even
when the autocomplete suggestions are displayed.
Also fixes an issue where a new line was inserted when selecting a suggestion
Closes#18341
* Fixes behavior where query wasn't running on pressing Enter
Also adds test to verify this behavior
* Wip: Compiles and runs
* WIP: Logs Graph partially working
* Refactor: Adds GraphSeriesToggler
* Refactor: Adds tickDecimals to YAxis
* Refactor: Adds TimeZone and PlotSelection to Graph
* Refactor: Makes the graphResult work in Explore
* Refactor: Adds ExploreGraphPanel that is used by Logs and Explore
* Fix: Fixes strange behaviour with ExploreMode not beeing changed
* Fix: Adds onSelectionChanged to GraphWithLegend
* Refactor: Cleans up unused comments
* ExploreGraph: Disable colorpicker
* Explore: Adds support for new loki 'start' and 'end' params for labels endpoint
Also initializes absoluteRange when explore is initialized
Closes#16788
* Explore: Dispatches updateTimeRangeAction instead of passing absoluteRange when initializing
Also removes dependency on sinon from loki language provider test
* Loki: Refactors transformation of absolute time range to URL params into small utility function
* Makes use of rangeToParams() util function in loki language provider test
Also updates LanguageProvider.request() interface so that url should be type string, and adds optional params argument
* Explore: Adds datasource plugin config option 'modesSupportingTextEdit'
This allows one to specify which modes support toggling query text edit on and off
Closes#17904
* Explore: Restricts query text edit toggle to metrics mode
* Explore: Adds support for toggling text edit mode in explore
Also modifies query-row-status css to use relative position instead of absolute
Closes#16770
* Explore: Defines State interface for <QueryRow /> and removes unnecessary constructor
* TimePicker: Restore time picker settings
* CleanUp: removed unuused angular-ui (calendar) components
* Fix angular boot dependency list
* TimePicker: set time to 23:59:00 when setting To time using calendar
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
* Refactor: Removes switches for TimeStamp and LocalTime and displays time as configured for user
* Styles: Updates classname used to display timeUtc
* Refactor: Adds switch for Time column