Commit Graph

1233 Commits

Author SHA1 Message Date
Sven Grossmann
6abd75b69c
Log Context: Add wrap lines button to easier wrap lines (#67047)
* add wrap lines button

* change default to 50 lines

* fix test

* change css classes
2023-04-21 17:21:02 +02:00
Joey
6522bb377e
Tracing: Rename feature toggle (#66833)
Rename feature toggle so something more specific so new work can use older feature toggle name
2023-04-21 11:31:24 +01:00
Leon Sorokin
b24ba7b7ae
FieldValues: Use plain arrays instead of Vector (part 3 of 2) (#66612)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2023-04-20 17:59:18 +03:00
Sven Grossmann
c903d1546f
Log Context: Add feature tracking (#66912)
add feature tracking
2023-04-20 15:42:44 +02:00
Sven Grossmann
1e53a87d76
Log Context: Add button to open the context query in a split view (#66777)
* add show context button

* improve type definition

* change to default `maxLines`

* remove context query

* add provider to tests

* add test for split view button

* improve documentation

* add tests for `getLogRowContextQuery`

* refactor LogsContainer functions

* fix spelling

* add `contextQuery` as state

* fix tests

* fix lint

* do not use callIfDefined

* make button secondary
2023-04-20 14:21:14 +02:00
Abdul
3a013cbe48
Explore: Clear live logs (#64237)
* feat: add clear logs to explorer's live logs

* refactor live logs pause/resume updating logic

* add tests for clearing live logs

* rm unused imports

* move `onClear` live logs logic to redux

* move clear logs tests to `query.test`

* use utils `sortLogsRows` and Button's icon props

* rename `filterLogRows` and add `clearedAt` as an arg

* mv clearedAt type closer to live tailing items and add jsdoc

* mv `filterLogRowsByTime` to `/utils` and use it at `LiveLogs` component

* make `Exit live` button consistent with other actions

* use `sortLogRows` and fix timestamp by id on `makeLogs`

* change clear live logs from based on timestamp to index on logRows

* assign `null` to `clearedAtIndex` on first batch of logs live

* move `isFirstStreaming` implementation to `clearLogs` reducer

* fix `clearLogs` tests

* Update public/app/features/explore/state/query.ts

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

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2023-04-20 10:21:28 +02:00
Giordano Ricci
47121e6e8a
Explore: make ExploreToolbar a function component (#66867) 2023-04-19 20:52:08 +01:00
Kristina
d1a918489e
Explore: Remove click tracking for external links (#66801)
Remove click tracking for external links
2023-04-19 10:40:25 -05:00
Ivana Huckova
33186e3e23
Explore: Fix using data source line limit when opening logs sample in split view (#66601)
* Logs sample: Use data source max lines setting when opening logs in split view

* Add internal tags
2023-04-19 17:04:47 +02:00
Joey
c13ec0fc15
Tracing: Span filters reset filters and button (#66781)
* Reset filters and button

* Add tests
2023-04-19 11:58:00 +01:00
Joey
743fdc159b
Traces: Trace view header tweaks (#66049)
* Update header info

* Modify content

* Update test

* Update test

* Add back url and remove tooltip

* Update css
2023-04-18 17:56:14 +01:00
Ivana Huckova
f612a72f96
Loki: Update log context UI (#66730)
* fix logrowcontext scrolling behavior

* Loki: Update loki context ui menu

* Update

* Add test, update

* Use escapeLabelValueInSelector when displaying labels

* Update test for new appliedContextFilters

---------

Co-authored-by: Sven Grossmann <svennergr@gmail.com>
2023-04-18 15:59:22 +02:00
Ashley Harrison
0741f47876
Navigation: Move SectionNav to AppChrome (#64391)
* move section nav to app chrome

* unit tests

* Move SectionNav to AppChrome folder

* fix duplicate variable rendering

---------

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-04-18 14:58:00 +01:00
Kristina
9d69d3173f
Correlations: Add transformation editor (#66217)
* There was an attempt

* Change disabled state based on transformation type

* Add validation to transformation type

* Revert "Add validation to transformation type"

This reverts commit 2188a3d9a93aec5eeafcdd40510391ba1a53671a.

* Add validation to transformation type

* Move transformations editor to a separate file

* Make name more descriptive

* Ensure type dropdown has always the same width

* Add tooltips around transformation options

* Slight style changes

* Remove autofocus on append, integrate read only to transformationeditor, save values that disappear so they come back

* Remove yaml changes

* Have variable background color work with alternating colors on different themes

* Make expression required for regular expressions

* Remove unused empty form object

* Fix bug about transformation’s values saved in memory

* Better validation formatting for expression

* Add labels and (for now) non working test, attempt to fix saved transformation delete/add bug

* Fix datalink comment

* Remove fancy CSS due to background change

* Fix deleting saved transformation bug, finish tests

* Consolidate transformation types

* Double check aria labels

* Change aria labels, fix tests

* Add a transformation with the create correlation test

---------

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2023-04-18 07:17:30 -05:00
Eric Mustin
6462c81f81
Trace View: Update the queryType to traceql for checking if same trace when clicking span link (#66645)
* TraceView: update the queryType to traceql for checking if same trace when clicking span link

* TraceView: linting

* TraceView: remove traceid check completely
2023-04-17 14:17:53 +01:00
Joey
9391700d84
Traces: Span filtering (#65725)
* Filters

* Service/span/duration filters

* Renames for focused span and matches

* Tag filters and new component

* Tag filtering

* Multiple tags and enable next/prev appropriately

* Enum, renames, fixes

* Clean up unecessary props

* setFocusedSearchMatch

* Faster options

* Perf enhancements and cleanup

* General improvements to tags etc

* Updates to filtering

* Add datasourceType in next/prev

* Integrate TracePageSearchBar with NewTracePageSearchBar

* Design tweaks

* Update sticky elem and header design

* Fix tests

* Self review

* Enhancements

* More enhancements

* Update tests

* tests

* More tests

* Add span filters to docs

* Update image link

* Update docs

* Update buttonEnabled and text

* PR review

* Update sticky header

* Doc updates

* Set values for service/span name

* Buffer and dash update
2023-04-17 08:30:27 +01:00
Ryan McKinley
39c04a8e36
Chore: Remove deprecated dashboardId from panel query runner (#64786) 2023-04-14 16:50:10 -07:00
Sven Grossmann
a6a7cebbe5
Logs: Redesign and improve LogContext (#65939)
* Logs: Add new LogRowContext types to grafana/data

* use right type for `RowContextOptions`

* add missing renames

* add show context modal

* no need to call

* removed unused css

* sort properties

* rename

* use correct

* use

* add tests for

* wip

* remove add/minus buttons

* add tests

* disable processing of context results in Loki

* moved into table to align properly

* remove imports

* add highlighting of opened logline

* improve scrolling behavior

* correct style for the table

* use correct query direction

* fix text

* use LoadingBar

* use overflow auto

* rename `onToggleContext` to `onOpenContext`

* add missing import

* mock scrollIntoView

* update unused props

* remove unused import

* no need to process context dataframes

* only show `LogRowContextModal` if `getRowContext` is defined

* remove unused param

* use `userEvent` rather `fireEvent`

* change to `TimeZone`

* directly use style classes

* revert change to public_dashboard_service_mock.go

* improved styling

* add missing await in test

* fix lint

* fix lint

* remove LogRow scrolling when context is opened

* remove references to `scrollElement`

* Update public/app/features/logs/components/log-context/LogRowContextModal.tsx

Co-authored-by: Matias Chomicki <matyax@gmail.com>

* fix lint

* add comment explaining `onCloseContext`

* add comment about debounced onClose

* add comments and remove `showRowMenu`

* scroll twice to correctly center the element

* revert double scrolling

* remove unnecessary `processDataFrame`

* trigger drone

---------

Co-authored-by: Matias Chomicki <matyax@gmail.com>
2023-04-14 17:05:43 +02:00
Piotr Jamróz
4f5b80095e
Dashboards: Fix broken internal data links (#66567)
* In dashboards splitOpenFn is not passed, instead "href" link is used. When we added tracking we changed the behaviour so onClickFn is always passed when generating the model. To bring back the previous behaviour we skip the onClickFn if the split function is not provided.

* Fix test and add a task to re-check the logic
2023-04-14 14:25:07 +02:00
Ivana Huckova
060728b3d5
Explore: Add tooltip to explain what logs sample is (#66568)
* Explore: Add tooltip to logs sample

* Update tooltip
2023-04-14 13:53:12 +02:00
Josh Hunt
a438576a6d
Chore: Use @types/chance types (#66569) 2023-04-14 12:20:25 +01:00
Giordano Ricci
d84bbfd51b
Explore: fix table sizing with few rows (#66546) 2023-04-14 11:47:52 +01:00
Piotr Jamróz
b5e2b0d14c
Explore: Allow supplementary query data provider to be undefined for mixed data sources (#66422)
* Switch back to the API where data provider for a supplementary query can be undefined

* Promote exploreMixedDatasource to beta

* Revert "Promote exploreMixedDatasource to beta"

This reverts commit a3bc167d1c.

* Resolve data source in parallel

* Do not modify function params

* Reorganize code for better readability

* Improve readability

* Simplify code

* Stop using a deprecated error property
2023-04-14 11:31:46 +02:00
Ashley Harrison
4abe0249ba
Chore: Clean up old navigation (#66287)
* remove code outside of the topnav feature flag

* delete NavBar folder

* remove topnav toggle from backend

* restructure AppChrome folder

* fix utils mock

* fix applinks tests

* remove tests since they're covered in e2e

* fix 1 of the approotpage tests

* Fix another dashboardpage test

* remove reverse portalling + test for plugins using deprecated onNavChanged method

* kick drone

* handle correlations
2023-04-14 09:43:11 +01:00
Joey
22fde6a3f2
Tracing: Add links to documentation in config pages (#66442)
Add links to documentation in config pages and clean up styles
2023-04-13 14:56:35 +01:00
Laura Benz
725f29e6d0
Design System: Set TextArea to display: block in order to remove spacing below (#66262)
refactor: set textarea to display: block and add margin
2023-04-13 14:21:36 +02:00
Sven Grossmann
7bc0692801
Logs: Add new LogRowContext types to @grafana/data (#66404)
* Logs: Add new LogRowContext types to grafana/data

* use right type for `RowContextOptions`

* add missing renames
2023-04-13 13:07:28 +02:00
Torkel Ödegaard
4ea7677bff
Explore: Start using PanelChrome as container (#66370)
* Explore: Start using PanelChrome as container

* fix test

* Fixing issue with test and timerange
2023-04-12 18:58:08 +02:00
Ivana Huckova
29c43fcf7e
Explore: Remove deprecated DataSourceWithLogsVolumeSupport (#66266)
Logs volume: Remove deprecated DataSourceWithLogsVolumeSupport
2023-04-12 14:10:14 +02:00
Matias Chomicki
db84277244
Logs Navigation: Fix typo in test description (#66293)
Fix typo in test description
2023-04-12 08:27:31 +00:00
Matias Chomicki
931ae02f26
Logs Navigation: Scroll to first log when using pagination (#66214)
* Logs: add reference to the start of the logs

* Logs: Improve pagination by scrolling to the first log

* Logs: move first log ref

* Logs navigation: reset scroll on page changes

* Update tests

* Logs navigation: unify reference to start of logs for scrolling to top

* Chore: update test title

* Move scrolling reference a bit more to the top
2023-04-11 16:26:50 +02:00
Sven Grossmann
e9b15eff72
Logs: Move components to dedicated directory (#65936)
* move log-context components to dedicated directory

* fix any

* add right format of lerna.json
2023-04-11 12:19:28 +02:00
Ashley Harrison
1261345b81
Chore: Upgrade to react 18 (#64428)
* update react 18 related deps

* fix some types

* make sure we're on react-router-dom >= 5.3.3

* Use new root API

* Remove StrictMode for now - react 18 double rendering causes issues

* fix + ignore some @grafana/ui types

* fix some more types

* use renderHook from @testing-library/react in almost all cases

* fix storybook types

* rewrite useDashboardSave to not use useEffect

* make props optional

* only render if props are provided

* add correct type for useCallback

* make resourcepicker tests more robust

* fix ModalManager rendering

* fix some more unit tests

* store the click coordinates in a ref as setState is NOT synchronous

* fix remaining e2e tests

* rewrite dashboardpage tests to avoid act warnings

* undo lint ignores

* fix ExpanderCell types

* set SymbolCell type correctly

* fix QueryAndExpressionsStep

* looks like the types were actually wrong instead :D

* undo this for now...

* remove spinner waits

* more robust tests

* rewrite errorboundary test to not explicitly count the number of renders

* make urlParam expect async

* increase timeout in waitFor

* revert ExplorePage test changes

* Update public/app/features/dashboard/containers/DashboardPage.test.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* skip fakeTimer test, ignore table types for now + other review comments

* update package peerDeps

* small tweak to resourcepicker test

* update lockfile...

* increase timeout in sharepublicdashboard tests

* ensure ExplorePaneContainer passes correct queries to initializeExplore

* fix LokiContextUI test

* fix unit tests

* make importDashboard flow more consistent

* wait for dashboard name before continuing

* more test fixes

* readd dashboard name to variable e2e tests

* wait for switches to be enabled before clicking

* fix modal rendering

* don't use @testing-library/dom directly

* quick fix for rendering of panels in firefox

* make PromQueryField test more robust

* don't wait for chartData - in react 18 this can happen before the wait code even gets executed

---------

Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2023-04-11 10:51:54 +01:00
Piotr Jamróz
0bf2b89eb9
Explore: Align multiple log volumes (#64356)
* Align log volumes on x an y axes

* Move helper functions to logs/utils

* Add tests

* Simplify supplementaryQueries.ts

* Fix tests

* Revert code simplifications

To simplify the PR, this can be added in a separate PR

* Fix reusing logs volume when limited/non-limited are used

* Use more specific property name

* Add missing property

* Stretch graph to selected range but only if there's data available

* Fix unit tests

* Fix calculating maximum when bars are stacked

* Sort log volumes by data source name

* Simplify logic to determine if log volumes can be zoomed in
2023-04-11 10:05:04 +02:00
Piotr Jamróz
b302cc2297
Correlations: Show correct number of variables (#66191)
* Show correct number of variables

* Remove duplicated test
2023-04-11 08:53:00 +02:00
Andrej Ocenas
37eaf50197
FlameGraph: Use pyroscope/flamegraph (#65896) 2023-04-05 14:57:24 +02:00
Matias Chomicki
c9288868f4
Supplementary Query Error: Align buttons to the right / Update timeout message (#65738)
* Update timeout message

* Align buttons to the right

* Remove test code

* Update test

* Add min width to error container
2023-04-05 13:05:06 +02:00
Matias Chomicki
fb83414b6a
Logs Volume Timeouts: Add a custom message with options (retry, close) for request timeouts (#65434)
* Logs Volume: identify timeouts and provide remediation action

* Supplementary result error: refactor updated component API

* Create helper to identify timeout errors

* Update timeout identifying function

* Add unit test

* Update panel unit test

* Update public/app/features/explore/utils/logsVolumeResponse.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Use some instead of reduce

* Change alert type to info

* Add comment

* Remove unnecessary optional chaining

* Remove unnecessary condition

* Remove unnecessary wrapping arrow function

---------

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2023-03-31 09:01:12 +00:00
Kristina
55947cee8f
Explore: Add click tracking to data links (#65221)
* Add click tracking to data links

* Use constants, mock window.open call

* Add comment about possibly missing reporting data

* Remove superfluous if
2023-03-31 00:30:20 +03:00
Laura Benz
d473fa3977
Design System: Set border radius to theme.shape.radius.default (#65511)
* refactor: replace by default token

* refactor: remove helper

* refactor: use pill token
2023-03-30 09:20:11 +02:00
Joey
10d896d24e
Tracing: Docs and config improvements for Tempo/Jaeger/Zipkin (#65255)
* Docs and config improvements

* Add note

* Add traceToLogs (v1) in provisioning example

* Remove old provisioning

* PR updates
2023-03-30 07:41:27 +01:00
Kristina
845951485f
Explore: Show log line if there is an interpolated link (#65489)
* Add back log lines changes

This reverts commit f43ef18732.

* Bring in @torkelo ’s changes to template_srv, implement with new format

* Enable functionality

* Remove non relevant test

* Fix tests, add @ifrost suggested tests and clarifying comment

* Add test around static link logic
2023-03-29 10:07:55 -05:00
Piotr Jamróz
5c138e16d7
Logs: Merge Log Volumes by data source name (#65392)
* Merge log volume by data source name

* Fix creating response for multiple fallback volumes

* Fix unit tests

* Hide title if there's only one log volume visible

* Make hide title optional

* Remove redundant parentheses

* Do not use frame.name, so the visualization can pick displayNameFromDS from the field config

* Simplify setting aggregated data frame meta data

* Update public/app/features/logs/utils.ts

Co-authored-by: Giordano Ricci <me@giordanoricci.com>

* Fix legend toggling

* Ensure limited graph info is shown

* Always show the data source name

---------

Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2023-03-29 13:43:56 +02:00
Abdul
aedcbf2a4f
Explore: Make DataSourcePicker visible on small screens (#65149)
Co-authored-by: Giordano Ricci <me@giordanoricci.com>
2023-03-29 02:26:37 +01:00
Laura Benz
2c978fb0f0
refactor: add return value for logsSample (#65357)
* refactor: add return value for logsSample

* refactor: modify test for new use case
2023-03-28 15:36:47 +02:00
Torkel Ödegaard
f43ef18732
Revert "Explore: Show log line if there is an interpolated link" (#65315)
Revert "Explore: Show log line if there is an interpolated link (#62926)"

This reverts commit aa857e2a4f.
2023-03-27 19:19:42 +02:00
Andrej Ocenas
d10ce5a122
TraceView: Don't require preferredVisualisationType to render (#64920) 2023-03-23 10:27:34 +01:00
Ryan McKinley
7835aacc8f
Schema: Remove exclusion for timeseries and update imports (#65242) 2023-03-23 02:14:54 +02:00
Kristina
aa857e2a4f
Explore: Show log line if there is an interpolated link (#62926)
* bring in source from database

* bring in transformations from database

* add regex transformations to scopevar

* Consolidate types, add better example, cleanup

* Add var only if match

* Change ScopedVar to not require text, do not leak transformation-made variables between links

* Add mappings and start implementing logfmt

* Add mappings and start implementing logfmt

* Remove mappings, turn off global regex

* Add example yaml and omit transformations if empty

* Fix the yaml

* Add logfmt transformation

* Cleanup transformations and yaml

* add transformation field to FE types and use it, safeStringify logfmt values

* Add tests, only safe stringify if non-string, fix bug with safe stringify where it would return empty string with false value

* Add test for transformation field

* Do not add null transformations object

* Add provisioning (to be removed) and show log lines with links

* Only display links if change to query was made

* Break out transformation logic, add tests to backend code

* Fix lint errors I understand 😅

* Fix the backend lint error

* Remove unnecessary code and mark new Transformations object as internal

* Add support for named capture groups

* Remove type assertion

* Remove variable name from transformation

* Add test for overriding regexes

* Add back variable name field, but change to mapValue

* fix go api test

* Change transformation types to enum, add better provisioning checks for bad type name and format

* Change transformation types to enum, add better provisioning checks for bad type name and format

* Check for expression with regex transformations

* Remove isInterpolated variable, add option to always use format function

* Add template variable check to links

* Use new functions

* Filter log line at render, remove extra createSpanLink imports

* Add scrollable to long log messages

* Remove test that is no longer accurate

* Remove test correlation

* Add tests, fix duplicate key issue

* WIP: show log line links key/value pairs

* Some not great style changes

* Change LogDetailsRow for better multi value formatting

* Cleanup

* Add additional information around variable regex, implement PR feedback

* Display name with fieldPath if applicable

* Add variables with fieldPaths to test

* Count empty string as undefined variable

* Add better commented version of function, fix tests by removing new variable

* Modify when links show

* Remove sample yaml

* If a link has no variables, set value to field name, and some formatting issues

* Add comments and change variable names to be more clear, add back logic where needed, add test coverage for new scenario

* Fix formatting of replaceInVariableRegex comment

* Remove changes from Grafana-data, move logic into explore

* Rename function and property to match similar format

* Move types to type files and consolidate definitions, rename functions, change field definitions to accept arrays of keys/values, move function to parser, hide actions on multi key/value rows

* Add tests to logParser’s new function
2023-03-22 08:01:04 -05:00
Sven Grossmann
6f83a45e1b
Logs: Fix variant of Download logs button (#64962)
fix button variant
2023-03-17 16:31:32 +02:00