Commit Graph

2520 Commits

Author SHA1 Message Date
Chris Chang 16e5d8a6de Cloudwatch: Add missing AWS regions (#106304) 2025-06-24 13:14:15 +00:00
Ivana Huckova f0fab90072 Loki: Remove lokiSendDashboardPanelNames toggle (#106991) 2025-06-20 10:06:15 +02:00
Ivana Huckova aea7bbfec8 Loki: Decouple some of backend dependencies on grafana (#106788)
* Remove backend dependencies on core

* Remove .golangci.yml changes

* make update-workspace
2025-06-19 14:18:23 +02:00
Ivana Huckova 67f50478d9 Loki: Refactor getting of panel/dashboard title headers as part of decoupling (#106829)
* Loki: Refactor getting of panel/dashboard title headers as part of decoupling

* Add headers to be passed to api server

* Address review comments
2025-06-18 17:41:31 +02:00
Andreas Christou 629bd11c07 Azure: Fix legend formatting (#106504)
Fix inconsistent casing in resource URIs
2025-06-18 09:36:20 -05:00
Joey ecf793ea05 Tempo: Fix TraceQL Search escaping regex queries (#106693)
* Fix for TraceQL Search incorrectly escaping regex queries

* Update test

* Keep existing filter values when adding custom
2025-06-18 12:21:45 +01:00
Ryan McKinley d02b62e874 Chore: Update app-sdk to v39 (#106785) 2025-06-16 19:11:30 +02:00
Ivana Huckova 6767adb4a6 Loki: Implement error source (#106766)
* Loki: Implement error source

* Add tests
2025-06-16 15:52:35 +02:00
Ivana Huckova fba0d8ddb0 Loki: Ensure that streaming is behind feature toggle in backend (#106657)
* Loki: Ensure that streaming is behind feature toggle in backend

* Update getLiveStreamKey to include orgId and datasourceUIS
2025-06-13 10:49:55 +02:00
Christian Simon 8fdf86e56f Profiles: Stop passing response headers for Grafana-Pyroscope and parca datasources (#106577)
* Revert "pkgs/tsdb/[grafana-pyroscope-datasource|parca]: Fix use of request headers in responses"

This reverts commit 8bac68e906.

* Profiles: Stop passing request/response headers to the backend
2025-06-11 18:34:21 +01:00
Christian Simon 549511597c Datasource: grafana-pyroscope-datasource/parca: Fix the passing of response headers (#106293)
pkgs/tsdb/[grafana-pyroscope-datasource|parca]: Fix use of request headers in responses

In the parca and the grafana-pyroscope-datasource we were wrongly using the request headers instead of the response
header when communication the results to the backend.

This PR fixes this bug.

Was reported by an user via community slack, who faced issues, with a request header of `content-length: 0` being
inserted by a intermediate proxy.
2025-06-09 09:43:34 +00:00
Christian Simon 30dc3a3ce4 Datasource/grafana-pyroscope: Do healthcheck on a window without data (#106312)
This will makes the healthcheck cheaper to anwser, as we would not expect data at this time window.

Fixes #106311
2025-06-06 08:29:31 +01:00
Andreas Christou e4c9d10bfb Azure: Improved identification of Application Insights resouces (#106281)
Compare namespace to lowercase URL
2025-06-05 11:03:34 +01:00
beejeebus 6a0cf22b53 Revert "Postgres: Switch the datasource plugin from lib/pq to pgx (#103961)" (#106270)
This reverts commit 1e383b0c1e.
2025-06-03 08:45:07 -04:00
maicon 6fb0ed9886 Bump tempo to 20250529124718-87c2dc380cec (#106220)
* Bump tempo to 20250529124718-87c2dc380cec

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Add owners to pkg/build

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* update workspace

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* update pkg/build/go.sum

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* update pkg/build/go.sum

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2025-05-29 23:43:13 -05:00
Kyle Brandt 601676b98e TestData: Adds Frame Type to "Predictable" Scenarios to enable SQL expressions (#106177) 2025-05-29 07:22:51 -04:00
Aleksandar Petrov 0b8252fd7c Pyroscope: Annotation support for series queries (#104130)
* Pyroscope: Add annotations frame to series response

* Adapt to API change, add tests

* Run make lint-go

* Fix conflicts after rebase

* Add annotation via a separate data frame

* Process annotations fully at the datasource

* Add mod owner for go-humanize

* Pyroscope: Annotations in Query Response can be optional

---------

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2025-05-28 10:42:19 +02:00
Ryan McKinley d4c446f42c Chore: Update k8s.io to v0.33.1 (#105307) 2025-05-28 00:13:18 +03:00
Zoltán Bedi 1e383b0c1e Postgres: Switch the datasource plugin from lib/pq to pgx (#103961)
* Create libpqToPGX feature toggle

* Refactor PostgreSQL datasource to support PGX with feature toggle

- Updated `ProvideService` to accept feature toggles for enabling PGX.
- Modified integration tests to use the new PGX connection method.
- Introduced new functions for handling PGX connections and queries.
- Enhanced TLS configuration handling for PostgreSQL connections.
- Updated existing tests to ensure compatibility with PGX and new connection methods.

* Update PostgreSQL datasource to enhance connection pooling and error handling

- Increased `MaxOpenConns` to 10 in integration tests for improved connection management.
- Refactored connection handling in `newPostgresPGX` to return a connection pool instead of a single connection.
- Updated health check error handling to utilize context and feature toggles for better error reporting.
- Adjusted `DisposePGX` method to close the connection pool properly.
- Enhanced query execution to acquire connections from the pool, ensuring efficient resource usage.

* Cleanup

* Revert postgres_test unnecessary changes

* Rename feature toggle from `libpqToPGX` to `postgresDSUsePGX`

* Add null check to dispose method

* Fix lint issues

* Refactor connection string generation

* Address comment in health check file

* Rename p to pool

* Refactor executeQueryPGX and split into multiple functions

* Fix lint issues

* The returning error message from PGX is enough no need to separate the error code.

* Move TLS handling to newPostgresPGX function

* Disable ssl for integration tests

* Use MaxIdleConns option

* Remove old feature toggle

* Rename`generateConnectionConfigPGX` to `generateConnectionStringPGX`

* Add back part of the error messages

* Don't show max idle connections option when PGX enabled

* Address comments from Sriram

* Add back Sriram's changes

* PostgreSQL: Rework tls manager to use temporary files instead (#105330)

* Rework tls manager to use temporary files instead

* Lint and test fixes

* Update pkg/tsdb/grafana-postgresql-datasource/postgres.go

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

* Update betterer

---------

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

---------

Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
2025-05-26 08:54:18 +02:00
Andreas Christou 844c854d75 Azure: Fix Application Insights metadata requests (#105614)
* Fix App insights metadata requests

- Correctly handle error responses

* Fix linting and always log the error message

* More lint
2025-05-22 14:35:41 +01:00
Sriram a8e87fc674 Postgres: Config diagnostics / logging update (#105666)
* config diagnostics update

* update tests

* fix typo
2025-05-22 08:27:36 +01:00
Joey fe704843a9 Tempo: Support alerting and recorded rules in TraceQL metrics (#105094)
* Tempo: Support alerting and recorded rules

* Remove step and hide in options

* Update query type shown in alerting

* Remove labelKeys

* Update test
2025-05-21 07:55:08 +01:00
Andreas Christou 4a7a3f9e2a ElasticSearch: Fallback parse total hits as int (#105615)
* Attempt int parsing

* Update total hits logic

- Do not allow the error to fail the request
- Add some comments

* Mark log as debug
2025-05-19 18:08:38 +01:00
Andreas Christou b886093fe6 Azure Monitor: Support request timeout configuration (#105487)
Support request timeout configuration
2025-05-16 11:53:13 +01:00
Sriram fcb1e9c9e5 Postgres: Improve invalid port specifier error during health check (#105536)
normalize error message in postgres invalid port specifier error
2025-05-16 11:51:12 +01:00
beejeebus 8f79e4882f Replace usage of http.DefaultClient and http.DefaultTransport (#104135)
Remove usage of http.DefaultClient and http.DefaultTransport

Part of grafana/data-sources#484
2025-05-09 13:26:39 -04:00
Gareth Dawson 977e923555 Jaeger: Migrate "search" query type to backend (#103399)
* jaeger backend migration

* move processing to JaegerClient.Search

* fix upload query error source type

* suggestions

* lint

* fix link to traceid query

* fix tests

* fix tests

* use consistent types

* add tests for TransformSearchResponse fn

* test search function

* fix filtering using tags

* suggestion

* remove unnecessary arguments

* use logfmt parser for tags

* test

* test

* use logfmt for query tags

* update

* go fmt

* run backend for all queryTypes

* run make update-workspace

* assign owner to logfmt pkg in go.mod

* apply suggestions

* update tests

* trigger workflows?
2025-05-07 09:34:04 +01:00
jackyin 7a2fc797fb TestData: Fix json unmarshal error in simulation scenario (#104612)
* fix simulation json error

* Trigger build
2025-05-06 07:29:06 +02:00
Ryan McKinley 439df585e0 TestData: Support a steps scenario (#104736) 2025-04-30 16:22:59 +03:00
Florian Verdonck 2c7c2088d9 Logs panel: Add meta field to show total hits; add total hits to ElasticSearch plugin response (#104117)
* feat: Show total amount of hits in Elastic Search query

* Add test with multiple series.
2025-04-28 08:32:28 -05:00
Andreas Christou 66c56cdb83 Graphite: Support backend queries with different time ranges (#103984)
* Refactor to handle queries with various time ranges

* Lint

* Remove comment
2025-04-22 13:14:24 +01:00
Nathan Vērzemnieks af59c4eb3e Chore: bump grafana-plugin-sdk-go from v0.275.0 to v0.277.0 (#103971)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2025-04-17 00:32:25 +03:00
Sam Jewell 3bdcbc5d37 TestData DS: Make Random Walk queries compatible with Data Plane (#103966)
* DataData DS: Add Frame type to Random Walk queries

* Time column should not be nullable

Conversion for the SQL (server-side) expression was failing with:
`failed to convert data frames to long format for sql: missing time field`

Because we weren't seeing a match at:
`if f.Type() == data.FieldTypeTime {`]
here:
https://github.com/grafana/grafana/blob/acb0e6b609fc5b099e9ba6c67000aa3a0029974d/pkg/expr/convert_to_full_long.go#L155

The DataPlane docs (https://grafana.com/developers/dataplane/timeseries)
state that:
> - The Time field(s):
>    - Should have no null values

So making the fix here
2025-04-15 10:25:33 +01:00
Ida Štambuk 27795ff7bf ElasticSearch: Improve index pattern error messaging and docs (#103899) 2025-04-14 15:55:33 +02:00
beejeebus b0ecc90329 InfluxDB: capture more downstream errors (#103978)
This adds more checks on the type of errors returned from InfluxDB
fsql datasource queries. The Grpc error code `Unavailable` is mapped
to a downstream error source.
2025-04-14 09:21:09 -04:00
Ivana Huckova 242ac6bfa7 Jaeger: Run dependency graph queries through backend behind the feature toggle (#103768)
* Start with dependency graph

* Update and add tests

* Fix lint and ordering in test
2025-04-14 10:54:40 +02:00
Mariell Hoversholm 757be6365a CI: Bump golangci-lint to 2.0.2 (#103572) 2025-04-10 14:42:23 +02:00
Kyle Brandt fb763edc32 Google Cloud Montioring: Add Frame type to metric ts queries (#103723)
enables compatability with SQL expressions
2025-04-09 15:09:36 -04:00
Kyle Brandt 5698159ee3 Cloudwatch: Add Frametype to Metrics response (#103617)
This should enable compatability with sql expressions
fixes #103196
2025-04-09 08:20:53 -04:00
Ivana Huckova 59f3ca09ab Jaeger: Run traceID query through backend with feature toggle enabled (#103472)
* Jaeger: Run traceID query through backend with feature toggle enabled

* Reorganize

* Update comments and test

* Fix snapshot test

* Only pass time params if enabled in cofig

* Rename applyVariables to applyTemplateVariables

* Rename transformResponse to transformTraceResponse

* Update comment
2025-04-09 14:13:46 +02:00
Joey 792a2b1e01 Tempo: Add fixes for broken exemplars (#103298)
* Add fix for broken exemplars

* Update fix for frame length

* Remove blank line and fix merge issue?
2025-04-09 11:52:29 +01:00
Isabella Siu 13534a7d98 Cloudwatch: Revert aws sdk go v2 (#103644)
* Revert "CloudWatch: Import new grafana-aws-sdk with PDC fix (#103249)"

This reverts commit f2b5b4e0c0.

* Revert "CloudWatch: Migrate to aws-sdk-go-v2 (#103106)"

This reverts commit a65cc0df93.

* make update-workspace
2025-04-08 15:40:15 -04:00
Piotr Jamróz 4790f28390 Tempo: Temporarily skip new proto fields (#103586) 2025-04-08 12:56:01 +02:00
Joey 9111a2839c Revert "Tempo: fix streaming with TLS without BasicAuth (#100546)" (#103358)
This reverts commit fa8dafec77.
2025-04-03 15:48:26 +03:00
Andreas Christou 47ec51fda7 Influx: Support PDC for Influx SQL (#103032)
* Support PDC for Influx SQL

* Correctly set the gRPC transport creds dial option

* Logging and refactor

* Allow URLs with no scheme

* Use passthrough resolver for socks proxy

* Update comment

* Extract url parsing and add test

* Check err
2025-04-02 16:21:59 +01:00
Alyssa (Bull) Joyner 3b73ebb210 Azure Monitor: Add logs query builder (#99055) 2025-04-02 08:15:25 -06:00
beejeebus 360c57b3d7 InfluxDB: capture more downstream errors (#103274)
This adds more checks on the type of errors returned from InfluxDB fsql
datasource queries. Grpc errors with code `InvalidArgument`, `PermissionDenied`
and `NotFound` are mapped to downstream errors.
2025-04-02 08:47:47 -04:00
Kyle Brandt 9358a557ee Graphite: Add frame type to work with SQL expressions (#103019)
- Add frame type So SQL expressions knows how to convert it
- No FrameType version so how other expressions do not change how they handle it, and continue to catch the special graphite handling in SSE convert
2025-04-01 09:43:36 -04:00
Alex Hunsaker fa8dafec77 Tempo: fix streaming with TLS without BasicAuth (#100546)
Fixes #100545

Streaming queries/metrics do not work if TLS is enabled and basic auth is not.

"Save & test" while adding/editing a tempo datasource throw `e.data is undefined` in the ui.

Gafana server logs report:

> logger=grafana-apiserver t=2025-02-12T17:55:29.131036665Z level=info msg="[core] [Channel #42 SubChannel #43]grpc:
> addrConn.createTransport failed to connect to {Addr: \"tempo:3200\", ServerName: \"tempo:3200\", }. Err: connection
> error: desc = \"error reading server preface: read tcp 127.0.0.1:55432->127.0.0.1:3200: read: connection reset by
> peer\""

> logger=grafana-apiserver t=2025-02-12T17:55:36.835523455Z level=info msg="[core] [Channel #31 SubChannel #32]grpc:
> addrConn.createTransport failed to connect to {Addr: \"tempo:3200\", ServerName: > \"tempo:3200\", }. Err: connection
> error: desc = \"error reading server preface: EOF\""

Fix by using TLS when enabled regardless of basic auth settings.

Co-authored-by: André Pereira <adrapereira@gmail.com>
2025-04-01 13:41:22 +01:00
Joey 4689b7c0cd TraceView: Add scope attributes to span details (#103173)
* Add scope attributes to span details

* Tests
2025-04-01 13:26:16 +01:00