Commit Graph

410 Commits

Author SHA1 Message Date
Fabrizio
e8a708c16e Tempo: Highlight errors in TraceQL query (#74697)
* Highlight errors

* Chores

* Refactor

* Address PR comments

* Refactoring

* Fix

* Handle another case

* Handle more use cases
2023-10-03 15:07:42 +01:00
Andre Pereira
1ce603b9e9 Tempo: TraceQL results as a spans list (#75660)
* Format tempo search results as spans

* Thank you test
2023-09-29 20:34:39 +03:00
Fabrizio
5fae64ccbe Properly manage trigger chars with open editor box (#75461) 2023-09-28 15:48:18 +02:00
Fabrizio
b1bc379a5c Tempo: Use timezone of selected range for timestamps (#75438)
* Use timezone of selected range for timestamps

* Fix tests
2023-09-28 14:05:47 +01:00
Joey
d57aef2eda Tempo: Normalize static filter queries (#72794)
* Only show static filter if tag is defined

* Update previosuly left out test

* Add test

* Add warning if tag is missing
2023-09-27 09:03:37 +01:00
Fabrizio
d1296f7213 Use const assertion instead of type assertion (#75165) 2023-09-20 17:31:09 +03:00
Fabrizio
9113c6d959 Tempo: Improve autocompletion for TraceQL editor (#74790) 2023-09-19 09:23:35 +02:00
Torkel Ödegaard
1105b93104 AdhocFilters: Improve typing and signature of getTagKeys and getTagValues and behaviors (#74962)
* Add adhocFilters to DataQueryRequest

* More changes

* Progress

* Working

* added baseFilters to picker

* Remove unused code

* minor fix
2023-09-19 08:24:45 +02:00
Andrej Ocenas
f6f47678a4 QueryRunners: Bind the query function where it is passed on (#73399) 2023-09-18 17:00:43 +02:00
Andre Pereira
fa2f0333f6 Tempo: Added not regex operator (#74907)
Added not regex operator
2023-09-14 16:18:05 +01:00
Andre Pereira
a046c043d7 Tempo: Fix traceID converted to infinity (∞) (#74913)
Fixes the traceid to be sent as the infinity symbol for span links
2023-09-14 15:12:39 +01:00
Andre Pereira
dc44ac7b78 Tempo: Added spss config - spans per span set (#74832)
* Added spss config - spans per span set

* Set default spss when calling Tempo
2023-09-14 10:49:18 +01:00
Joey
a8a8c9849d Tempo: Metrics summary update sorting no values (#74818)
* Update sorting when there is no value

* Update test
2023-09-13 14:23:17 +01:00
Joey
a12c224cc0 Tempo: Metrics summary no value (#74582)
Metrics summary no value
2023-09-13 10:22:22 +01:00
Javier Ruiz
3bae1c564d Tempo Service Map: Fix context menu links in service map when namespace is present (#74186)
* Add necessary fields to edges

* Add information about name and namespace to edge when available

* Use new fields to build search taking into account namespace

* Remove new fields from NodeGraphDataFrameFieldNames, define them locally
2023-09-13 10:17:31 +02:00
Ashley Harrison
0c44a6f9bb Chore: Improve typings 🧹 (#74599)
* various type fixes

* candlestick panel type fixes

* few more fixes

* some fixes

* more :)

* moar!

* undo change to SilencesFilter

* undo change to configureStore
2023-09-13 09:17:07 +01:00
Joey
16bdd55696 Tempo: Fix metricSummary sorting in spanCount and errorPercentage (#74542)
* Fix sorting in spanCount and errorPercentage

* Update types

* Spelling

* Update errorPercentage
2023-09-13 08:48:58 +01:00
Fabrizio
a939dfadf2 Improve check on Tempo version (#74547) 2023-09-11 14:34:05 +02:00
Fabrizio
3bb4e24458 Dashboards: Escape tags (#74437) 2023-09-09 14:11:36 +02:00
Fabrizio
d19f75d499 Fix regex for Tempo version (#74541) 2023-09-07 16:53:33 +03:00
Fabrizio
96facbdfa2 Tempo: Improve autocompletion and syntax highlighting for TraceQL tab (#73707) 2023-09-07 12:36:23 +02:00
Fabrizio
79b421e8c8 Retrieve and use Tempo version (#72747) 2023-09-06 09:40:37 +02:00
Joey
7f2841aeca Tempo: Update default editor to TraceQL tab (#74153)
Update default editor to TraceQL tab
2023-09-04 15:53:03 +01:00
Fabrizio
5038137662 Dashboard: Add support for Tempo query variables (#72745) 2023-08-30 13:45:39 +02:00
Joey
dc26cdf6c9 Tempo: Reset metrics summary tag when scope changes (#74028)
Reset tag when scope changes
2023-08-30 11:26:09 +01:00
Joey
61fd34ca2b Tempo Config editor updates (#73992)
Config editor updates
2023-08-30 08:53:13 +01:00
Joey
e8aa74aba2 Rename Group By Metrics to Aggregate by (#73980)
* Rename Group By Metrics to Aggregate by

* Update test
2023-08-29 09:28:55 +01:00
Joey
59e4c257bb Tempo: Metrics summary (#73201)
* Metrics summary

* Update query

* Remove colors

* Update states

* Add group by into its own component

* Add group by to search and traceql tabs

* Add spacing for group by

* Update span kind values

* Update span status code values

* Update query based on target + group by

* Cleanup

* Only add targetQuery if not empty

* Add kind=server to table

* Update groupBy query logic

* Add feature toggle

* Use feature toggle

* Self review

* Update target query

* Make gen-cue

* Tweak query

* Update states

* useRef for onChange

* Fix for steaming in search tab

* Add loading state tests

* metricsSummary tests

* Datasource tests

* Review updates

* Update aria-label

* Update test

* Simplify response state

* More manual testing and feedback from sync call

* Prettier and fix test

* Remove group by component from traceql tab

* Cleanup, tests, error messages

* Add feature tracking
2023-08-28 15:02:12 +01:00
Fabrizio
d293b08e52 Tempo: Replace template variables in TraceQL tab when streaming is enabled (#73259) 2023-08-24 14:10:14 +02:00
Fabrizio
ed8ca02e0f Dashboard: Support template variables in Search tab for Tempo (#72867) 2023-08-24 13:06:46 +02:00
Joey
ab94c9d730 Tempo: Only add option to values dropdown if there is a value (#72524)
Only add option to list if there is a values
2023-08-18 08:17:56 +01:00
Joey
e6c96e7308 Tracing: Split name column in search results (#72449)
* Split name column

* Add tests

* Update test
2023-08-14 13:26:08 +01:00
Andre Pereira
039ed7a5bd Tempo: Integrate context aware autocomplete API (#67845)
* Send query in search tag values call

* Make sure to send the full query when using the code editor

* Fix merge conflicts

* Remove unused params
2023-08-11 10:31:09 +01:00
Joey
8c2f439cd7 Table: Support display of multiple sub tables (#71953)
* Add nested option to DataFrame. Refactor Table to use nested dataframes for sub-tables

* Use nested frames for TraceQL response

* debugging

* Fix cell text and table position

* Update getItemSize

* noHeader size

* Update sub table renderer

* Update table container height

* Cleanup and fix RawPrometheusContainer height

* Update resultTransformer and docker script

* Updates to TableContainer, resultTransformer after merge

* Fixes for table pagination in dashboards

* Cell height and show footer enhancement/fix

* Sub table links

* Update RawPrometheusContainer

* Remove console log

* Update tests

* Update storybook

* Remove Tempo demo

* Store nested data in single field via its values

* Move nested prop into custom

* Tempo demo

* Add field type & update incorrect logic

* Update docker compose image for Tempo

* Update packages/grafana-data/src/field/fieldOverrides.ts

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

* Simplify logic for getting nestedFrames and rendering sub tables

* Update docs for table

* Update nested table bg color

* Lighten nested table bg color

* Renames

* Migrate frames using parentRowIndex and add deprecation notice

* Update title

* Align expander icon size between Table and interactive table

* Table: Refactor out the expanded rows bits

* fix spacing

* Add line along left side for expanded rows

* Disable hover row background when expanded

---------

Co-authored-by: André Pereira <adrapereira@gmail.com>
Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-08-10 12:33:46 +01:00
Joey
b4c55765fe Tempo: Only get span_names when they are in the response (#72663)
* Only get span names when they are in the response

* Find span_name field/labels
2023-08-03 07:55:32 +01:00
Ashley Harrison
e0587dfb30 Chore: Replace deprecated usage of shape.borderRadius() (#72672)
* properly mark borderRadius() as deprecated, replace borderRadius() with default

* undo a couple of changes

* use radius.pill in FilterPill
2023-08-01 14:46:07 +01:00
Andre Pereira
5c14a07ec3 Tempo: Integrate TraceQL grammar (#72516)
* Replacing the regex based approach and integrating the lezer-traceql grammar in the editor

* Added some tests

* Added path to capture error in filter root

* Tests are great and help fix issues 👍

* Fix autocomplete tests
2023-08-01 14:15:05 +01:00
Joey
7612f3d955 Tempo: If no search tag then do not query API for tag values (#72522)
* If no tag then do not query api for tag values

* Update test
2023-08-01 08:44:13 +01:00
Ivan Ortega Alba
8415dd40d7 DSPicker: Use new DS picker everywhere in Grafana (#70609) 2023-07-26 18:40:51 +02:00
Andre Pereira
89092a1e69 Tempo: Use feature toggle to control TraceQL streaming (#72288)
Rename traceql streaming feature toggle. Remove the manual toggle from Options component and use the feature toggle
2023-07-26 13:33:16 +00:00
Joey
e4f419b84f Tempo: Use new configuration editor components (#71288)
* Use new config components in Tempo

* Update Grafana experimental version
2023-07-25 12:50:12 +01:00
Andre Pereira
bd59a27b99 Tempo: Remove traceqlSearch feature toggle (#72029)
* Remove feature flag from registry.go

* Remove usages of toggle

* Refactor and cleanup Tempo's query field components

* Added deprecation alert

* Mark nativeSearch fields as deprecated

* Also show deprecated search tab if queryType is nativeSearch

* Update deprecation message to list grafana version

* Fix merge conflict

* Remove mention of toggle from docs
2023-07-24 16:26:10 +01:00
Selene
f75a3d04cf Chore: Remove pfs.GrafanaPlugin from schemas (#71884)
Remove pfs.GrafanaPlugin from schemas
2023-07-19 03:46:13 -04:00
Domas
1347d85b50 Tempo Service Map: Optionally group nodes also by service.namespace (#70803)
* tempo service map: optionally handle namespace

* undo escape attempt

* regen cue
2023-07-18 13:11:12 +03:00
Andre Pereira
72118e372c Tempo: TraceQL streaming improvements (#71736)
* Remove unneeded log

* Add elapsed time to streaming progress table

* Use disableTraceQLStreaming toggle to determine default status of streaming
2023-07-18 12:45:35 +03:00
Andre Pereira
c1709c9301 Tempo: TraceQL query response streaming (#69212)
* Refactor Tempo datasource backend to support multiple queryData types.
Added traceId query type that is set when performing the request but doesn't map to a tab.

* WIP data is reaching the frontend

* WIP

* Use channels and goroutines

* Some fixes

* Simplify backend code.
Return traces, metrics, state and error in a dataframe.
Shared state type between FE and BE.
Use getStream() instead of getQueryData()

* Handle errors in frontend

* Update Tempo and use same URL for RPC and HTTP

* Cleanup backend code

* Merge main

* Create grpc client only with host and authenticate

* Create grpc client only with host and authenticate

* Cleanup

* Add streaming to TraceQL Search tab

* Fix merge conflicts

* Added tests for processStream

* make gen-cue

* make gen-cue

* goimports

* lint

* Cleanup go.mod

* Comments

* Addressing PR comments

* Fix streaming for tracel search tab

* Added streaming kill switch as the disableTraceQLStreaming feature toggle

* Small comment

* Fix conflicts

* Correctly capture and send all errors as a DF to client

* Fix infinite error loop

* Fix merge conflicts

* Fix test

* Update deprecated import

* Fix feature toggles gen

* Fix merge conflicts
2023-07-14 15:10:46 +01:00
Andre Pereira
340c536d0e Tempo: TraceQL editor - Match type of new values with values in dropdown (#69468)
Tempo: TraceQL editor - set type of added values to match the type of the other values in the dropdown
2023-07-05 15:34:22 +01:00
Joey
f1338cee60 Tracing: Add inline validation to time shift configuration fields (#70879)
* Inline validation

* Update invalidTimeShiftError after self review

* Renames and moved err msg

* Update validation

* Remove local state
2023-07-04 10:49:21 +01:00
Joey
0668fcdf95 Tempo: Update error messages (#70448)
Update error messages
2023-06-28 10:34:11 +01:00
Selene
b0893c29a7 Chore: Generate plugin version and remove lineage version (#69781)
* Generate plugin version and remove lineage version

* Generate version for each major

* Remove pluginVersion from core plugins

* Remove code version generation

* Generate cue files

* Move grafana version into jenny

* fix go import
2023-06-27 12:47:14 +03:00