Commit Graph

74 Commits

Author SHA1 Message Date
Joey Tawadrous
4076933e66 Traces: extra feature tracking (#61348)
* grafana_traces_service_graph_size

* grafana_traces_trace_view_find_next_prev_clicked

* grafana_traces_trace_view_scroll_to_top_clicked

* grafana_traces_cheatsheet_clicked
2023-01-17 14:43:28 +00:00
Andre Pereira
298576c6a1 Tempo: Fix service graph when tempoApmTable is enabled (#60975)
Fix query variables breaking the generated query for the APM service graph
2023-01-04 16:18:41 +00:00
Andre Pereira
44afad2ce4 Tempo: TraceQL autocomplete feature tracking (#60876)
* Track usages of completion items in TraceQL query editor

* Change back traceID reportInteraction() name to avoid breaking dashboards

* Filter out TAG_VALUE labels from feature tracking to avoid exposing sensitive data
2023-01-03 10:43:11 +00:00
Andre Pereira
950f357175 Tempo: TraceQL editor bug fixes (#60414)
* Set width of common columns between trace and span rows

* Better syntax highlighting for non string constants

* Apply variables to traceql query

* Fix test
2023-01-02 14:23:50 +00:00
Andre Pereira
209b1848b8 Tempo: Merge Trace ID and TraceQL tabs (#60180)
* Remove TraceID tab when TraceQL is enabled. Use TraceQL editor to query for trace IDs by checking whether the content is an hex only string

* Highlight valid trace IDs in traceql editor

* Update trace and span links to use TraceQL tab when feature flag is enabled

* Remove traceqlEditor feature flag.

* Remove traceId query type from Tempo and replace it with traceQl
2022-12-13 08:27:45 -05:00
Andre Pereira
8dbde1b921 Tempo: TraceQL table and editor (#59313)
* Tempo: Add the ability to show/hide the Span column in the table when using TraceQL

* Add optional chaining

* Update tests

* Show subcols in a subtable

* Add more space for the subtable

* Remove unused import

* Better expander icon. Improved the subtable styling. Integrated with real data

* Fix expanding the wrong index when table already has an expanded row

* ⚠️ Hack ⚠️ - Fix table links

* Link to spans

* Tempo: [TraceQL] Don't wrap the autocomplete vals for the status tag in quotes

* TraceQL result table improvements and fixes

* Include span name in the subtable

* Loop through data only if it is not nullish

* Integrate traceql with sub-tables

* Added booleans as keywords. Make query editor multiline

* Make date format consistent between trace and span

* Reset expanded indexes when data or subdata change

* Dynamic attributes by trace

* Fix test. Cleanup and refactor

* Tiny refactor

Co-authored-by: Hamas Shafiq <hamas.shafiq@grafana.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
2022-11-28 16:13:03 +00:00
Ashley Harrison
d33b4918cd Chore: more any/type assertion improvements (#59229)
more any/type assertion improvements
2022-11-23 16:54:57 +00:00
Hamas Shafiq
6d94fa6aa5 Tempo: Send the correct start time when making a TraceQL query (#59128) 2022-11-23 13:45:10 +00:00
Andre Pereira
90ac300d10 Tempo: Make usage of time range for TraceID query optional (#58057)
* Added switch to toggle the TraceID query time shift

* Fix and improve tests
2022-11-03 11:01:22 +00:00
bikashmishra100
98053cfde8 Tempo: Add start time and end time parameters while querying traces (#48068)
* Add start time and end time parameters while querying tempo traces

* Added configurable time shift to query by trace id

* Test that the URL is formatted correctly

* Added test to check for time shift

* Improved label and tooltip of new time shift settings

Co-authored-by: André Pereira <adrapereira@gmail.com>
2022-10-21 15:38:10 +01:00
Hamas Shafiq
84a5ced72a Tempo: Integrate TraceQL API (#56867) 2022-10-20 10:44:59 -04:00
Hamas Shafiq
f50ab457bd Tempo: Fix Node Graph visualization type in dashboard (#56931)
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
2022-10-19 13:11:33 +01:00
Andre Pereira
c776131929 [Tempo] - Random API response and other improvements (#54905)
* Moved the SearchResponse type to types.ts.
Created a mockSearchResponse function to generate search responses.

* Generate spans in mocked response. Extend results table to accomodate spans

* Show the first spanset attributes in the table

* Added a shortcut to run the query in TraceQL editor. Added a label and link to docs above the editor

* Improved autocomplete list sorting. Improved value regex.

* Rename column to "Span"

* Tests are great!
2022-09-09 19:00:35 +01:00
Hamas Shafiq
295c36e4ec Tempo: Move interfaces & TempoQueryType from datasource.ts to types.ts (#54621) 2022-09-05 15:46:10 +01:00
Hamas Shafiq
d79830fdd7 Chore: Replace deprecated toPromise() calls with lastValueFrom (#54234) 2022-09-02 11:17:36 +01:00
Andre Pereira
c8f2148f75 Tempo: Basic PoC of the upcoming TraceQL editor in Explore (#54028)
* First working version of the TraceQL editor with syntax highlighting and autocomplete

* Add feature flag around the new editor option

* Fix tests and cleanup

* Fix misspelling
2022-08-24 17:57:59 +01:00
Hamas Shafiq
afa7e8d8de Tempo: Make TempoQuery.search & SearchQueryParams.tags optional (#54052) 2022-08-23 12:27:19 +01:00
Hamas Shafiq
5f80bf5297 Tempo: Remove unused functions in datasource.ts (#54081) 2022-08-23 12:02:43 +01:00
Joey Tawadrous
dc0ef2913e Tempo: Set APM table default span kind (#52851)
* Add span kind server to query

* Updated test
2022-07-27 15:48:09 +01:00
Joey Tawadrous
cb35729553 Traces: Align APM table names (#52591)
* Order col values according to rate names order

* Tests
2022-07-25 18:59:43 +01:00
Joey Tawadrous
4937105994 Tempo: Add context menu to edges (#52396)
* Edge links

* Update tests

* Update menu title

* Remove title

* Update duration linked query

* Update links

* Added test for getFieldConfig
2022-07-25 10:03:57 +01:00
Joey Tawadrous
6c89bf53f2 Tempo: Tempo/Prometheus links select ds in new tab (cmd + click) (#52319)
* Set tempo/prom ds name when clicking trace links

* Updated tests

* Removed vars
2022-07-18 15:36:16 +01:00
Joey Tawadrous
3617eac5f3 Traces: Add more template variables in Tempo & Zipkin (#52306)
* Add support for more vars in Tempo

* Tests for Tempo vars

* Tempo ds vars

* Tempo ds vars test

* Zipkin template var

* Zipkin tests
2022-07-18 08:08:35 +01:00
Joey Tawadrous
5aacc7cc2a Traces: More feature tracking (#51686)
* Added tracing for json upload, service graph, loki queries

* Tracking for node graph expand/collapse

* Tracking for traceID expand/collapse

* Updated betterer.results

* Update tests

* Updated betterer.results

* Fixed?

* Fix for test

* Update report interaction key for loki expr

* Change grafana_traces_search_queried limit to resultLimit as limit is reserved keyword
2022-07-11 10:21:24 +01:00
Joey Tawadrous
01130f22b7 Traces: Span bar label (#50931)
* Add SpanBarSettings

* Add SpanBarSettings to Jaeger

* Add SpanBarSettings to Zipkin

* Updated title

* Add dropdown to select identifer and make duration a default option

* Show duration by default

* Add option to hide

* Move identifers into constants

* Add process

* Update text

* Update placeholders

* Text/meta data updates

* Added tests

* Added docs

* Update find

* Merge tag and prcoess options

* Update docs

* Updated tests

* Update betterer results and trace view to match

* Updated docs
2022-07-06 08:14:03 +01:00
Joey Tawadrous
5d65d4ce03 Traces: APM table improvements (#50969)
* Update rate and error rate query link

* Update tests for new rate and error rate links

* Update duration query

* Update tests for new duration query
2022-06-20 09:56:45 +01:00
Connor Lindsey
bd30e85031 Explore: Update service graph metrics and links (#50897) 2022-06-19 19:11:59 -06:00
Ashley Harrison
803473f479 Chore: Enable useUnknownInCatchVariables for stricter type checking in catch blocks (#50591)
* wrap a bunch of errors

* wrap more things!

* fix up some unit tests

* wrap more errors

* tiny bit of tidy up
2022-06-15 08:59:29 +01:00
Joey Tawadrous
4ed7ff2ed1 Traces: APM table (#48654)
* APM table

* Remove unnecessary changes in Explore.tsx

* Enhancements

* Show empty table if filter returns no results for table

* Error checking

* Combine extra filter options

* Convert service map query to apm query for apm requests

* Simplify links

* Better query building

* Extract method and clean up

* Upgrade filter

* Self review

* Export method

* Update test

* Switch area-chart to lcd-gauge

* Remove AreaChartCell

* Colors, units and other UI upgrades

* Remove 2 queries and reuse existing queries

* Nested observables

* rate/error rate/duration links: open new pane with range query and exemplars turned on

* Align error rate values to rate values col according to span_name

* Rearrange code

* Several improvements

* Filter by span_name

* align the table col values to the same row name (rateName) across the table

* On click tempo link filter by span_name

* Filtering updates

* Ensure serviceQuery null is ok

* Update link expr

* Update duration p90 unit

* Tempo links case

* Update tests

* Self review

* Tests

* Empty state

* Remove some code

* Test: should build expr correctly

* Test: should build link expr correctly

* Test: should get rate aligned values correctly

* Test: should make apm request correctly

* Test: should make tempo link correctly

* Move apm table tests to its own describe

* Feature toggle

* Added to docs for APM table

* Add screenshot to APM table section in docs

* Add feature toggle to test

* Split queries and make method names clearer

* Doc changes

* Add back in config import removed by merge

* Update tempo link and tests

* Update filter

* Set field filterable: false

* Updated doc

* Remove @end from queries

* Add back in tempo link
2022-06-09 17:56:15 +01:00
Connor Lindsey
f9ddb8bf86 Explore: Download and upload service graphs for Tempo (#50260)
* Download service graph from inspect data tab

* Upload service graph

* Fix tests
2022-06-07 06:37:19 -06:00
Joey Tawadrous
9d5c0bec0f Tempo: Add link to Tempo Search with node service selected (#49776)
* Node to tempo search with service selected

* Tests

* Update link text

* Update test
2022-06-03 10:38:13 +01:00
Connor Lindsey
3fff17af63 Tempo: Consider tempo search out of beta and remove beta badge and feature flags (#50030)
* Tempo: Remove beta notice and feature flag for search

* remove unused imports
2022-06-01 11:32:10 -06:00
Joey Tawadrous
dcccac6657 Traces: Feature tracking (#49767)
* Feature tracking for traces

* Mock runtime in test

* Update reportInteraction key
2022-06-01 10:28:45 +01:00
Connor Lindsey
ea1001f1f5 Tempo: Trim whitespace from trace id query (#49008) 2022-05-16 10:50:02 -06:00
Joey Tawadrous
09634b518c Traces Panel: Add new Traces Panel visualization (#47534)
* Panel

* Support tempo dash variables

* Support tempo explore variables

* Only show span links for explore

* Cleanup

* Added tests

* apply variables to search

* Tests for search variables

* Handling no data

* Interpolation and tests

* TracesPanel tests

* More tests

* Fix for backend test

* Manager integration test fix

* Traces doc and updated visualizations index doc

* Logs for this span

* Search, scrollToTop, other improvements

* Refactor to extract common code

* Removed TopOfViewRefType optional

* Remove topOfViewRef optional

* Removed another optional and fixed tests

* Test

* Only show search bar if trace

* Support traces panel in add to dashboard

* Self review

* Update betterer

* Linter fixes

* Updated traces doc

* Ahh, moved the for more info too

* Updated betterer.results

* Added new icon

* Updated expectedListResp.json
2022-05-03 17:42:36 +01:00
Josh Hunt
3c6e0e8ef8 Chore: ESlint import order (#44959)
* Add and configure eslint-plugin-import

* Fix the lint:ts npm command

* Autofix + prettier all the files

* Manually fix remaining files

* Move jquery code in jest-setup to external file to safely reorder imports

* Resolve issue caused by circular dependencies within Prometheus

* Update .betterer.results

* Fix missing // @ts-ignore

* ignore iconBundle.ts

* Fix missing // @ts-ignore
2022-04-22 14:33:13 +01:00
Cat Perry
b5f2f3e710 Tempo: Traces to Logs - From viewing Tempo traces to displaying Splunk logs (#46855)
* Add functionality to see splunk logs via tempo trace view
2022-04-04 13:24:33 -07:00
Connor Lindsey
0da40b7f09 Tempo: Separate trace to logs and loki search datasource config (#46655)
* Tempo: Separate trace to logs and loki search datasource config

* Add getLokiSearchDS util and tests
2022-03-17 11:23:15 -06:00
Connor Lindsey
af2d19b02e Tracing: Add option to map tag names to log label names in trace to logs settings (#45178)
* Add mapped tags input to allow renaming tags in trace to logs settings

* Use mappedTags in createSpanLink

* Update traceToLogs docs

* Show 'add kv' button if no tags

* Update docs

* Default mappedTags to tag values
2022-02-22 23:17:45 +01:00
Connor Lindsey
3da0434e64 Tempo: Update service graph linked queries to use rate_interval and group histogram (#45248) 2022-02-11 07:58:10 -07:00
Connor Lindsey
de04f19c47 Tempo: Add request histogram to service graph datalink (#44671) 2022-02-01 10:41:14 -07:00
Connor Lindsey
45a435ad78 Tempo: Auto-clear results when changing query type (#44390)
* Auto-clear results when changing query type

* Move clear results to function
2022-01-28 07:49:43 -07:00
Connor Lindsey
17f7f0dc93 Tempo: Update service graph linked queries from totals to rates (#43866)
* Tempo: Update service graph linked queries from totals to rates

* Interpolate server name and interval
2022-01-13 16:28:20 +01:00
Connor Lindsey
ef12028a68 Tempo: Add time range to tempo search query behind a feature flag (#43811) 2022-01-10 07:38:40 -07:00
Andrej Ocenas
88d17c4998 Tempo: Don't show error when running query without traceId (#43676)
* Check for traceId and return EMPTY observable if no value

* Make sure we change status on complete

* Add tests

* Fix test
2022-01-05 19:34:09 +01:00
Connor Lindsey
f1101efcec Tempo: Update tempo search to use tags query param (#42849)
* Update tempo search to use tags query param

* Remove unnecessary test
2021-12-14 07:41:46 -07:00
Andrej Ocenas
5cc9ff8b28 Tempo: Add filtering for service graph query (#41162)
* Add filter based on AdHocFilter element

* Add tests

* Cancel layout in case we have have new data or we unmount node graph

* Fix typing

* Fix test
2021-11-11 14:27:59 +01:00
Andrej Ocenas
5f27959a5e Tempo: Add links to nodes in Service Graph pointing to Prometheus metrics (#41135) 2021-11-03 15:56:39 +01:00
Andrej Ocenas
73e66d97a5 Tempo: Add error metric to service graph (#40774)
* Add typings

* Query error metric for service graph
2021-10-22 16:37:41 +02:00
Connor Lindsey
2b2b70503e Explore: Rename Service Map to Service Graph and improve error handling (#40407)
* Handle error response from linked datasource

* Update response format

* Rename to service graph in the UI and docs
2021-10-13 14:41:42 -06:00