Serge Zaitsev
f8ec35e643
Chore: Fix goimports grouping ( #62427 )
...
* fix goimports order
* fix goimports order
2023-01-30 09:38:51 +01:00
Kyle Brandt
5bb38293d2
SSE/Prom: Undo empty frame change that triggers 500s in SSE ( #61871 )
...
added in https://github.com/grafana/grafana/pull/61643
2023-01-20 17:32:14 +00:00
ismail simsek
29c8ce12a0
Prometheus: Fix handling errors in streaming client ( #61643 )
...
* Return errors from data parsing
* Better error handling
* Fix the tests
* When there is no frame add empty frame to get metadata attached to it
* Fix tests
* Update testdata
2023-01-18 22:30:15 +01:00
Christian Simon
a1f2d0e205
Prometheus: Reduce allocations parsing exemplars ( #58959 )
...
* Prometheus: Reduce allocations parsing exemplars
This reduces allocations for parsing exemplars.
name old time/op new time/op delta
ExemplarJson-8 24.7ms ±15% 17.6ms ± 2% -28.72% (p=0.008 n=5+5)
name old alloc/op new alloc/op delta
ExemplarJson-8 4.70MB ± 0% 3.58MB ± 0% -23.79% (p=0.008 n=5+5)
name old allocs/op new allocs/op delta
ExemplarJson-8 72.6k ± 0% 69.1k ± 0% -4.81% (p=0.008 n=5+5)
* Ensure pairs is reset
2023-01-18 16:42:22 +01:00
KonH
4421b31b66
Loki/Prometheus: Change signature - return non-reference from ReadPrometheusStyleResult ( #57209 )
...
* Change signature - return non-reference from ReadPrometheusStyleResult
Related to https://github.com/grafana/grafana/issues/52430
* Fix invalid reference usage
* Potential fix for test data
* Remove additional ref usage
* Revert "Potential fix for test data"
This reverts commit 94ed588ab3 .
* Commit changed test data
* Revert unwanted conflict resolution
* Add additional condition to track empty responses
* Setup valid empty response
* Re-introduce changes reverted by merge
2023-01-13 09:00:39 +01:00
Todd Treece
19ca93d5ce
Prometheus: Fix concurrency issue with exemplar sampler initialization ( #61281 )
2023-01-11 08:27:47 -05:00
Todd Treece
73d5aa4878
Prometheus: Refactor exemplar sampler ( #60278 )
2022-12-30 13:04:35 -05:00
Marcus Efraimsson
c35c689a96
Plugins: Automatically forward plugin request HTTP headers in outgoing HTTP requests ( #60417 )
...
Automatically forward core plugin request HTTP headers in outgoing HTTP requests.
Core datasource plugin authors don't have to specifically handle forwarding of HTTP
headers, e.g. do not have to "hardcode" the header-names in the datasource plugin,
if not having custom needs.
Fixes #57065
2022-12-21 13:25:58 +01:00
Ludovic Viaud
f67b8fe0dc
Prometheus: Create feature flag to disable exemplar sampling ( #60105 )
...
:Fix rebase
2022-12-19 16:00:15 +01:00
Giuseppe Guerra
92c01e416e
Prometheus: Fix X-Id-Token and X-ID-Token sent to Prometheus in query requests ( #60342 )
...
* Prometheus: Use Set rather than map assignment in sdkHeaderToHttpHeader
Fixes #59940
* Prometheus: Add TestPrometheusCanonicalHeaders
2022-12-15 17:18:38 +01:00
Denis Limarev
4d8287b319
Performance: add preallocation for some slice/map ( #57860 )
...
This change preallocates slices and maps where the size of the data is known before the object is created.
Co-authored-by: Joe Blubaugh <joe.blubaugh@grafana.com>
2022-11-22 20:24:36 +08:00
ismail simsek
1c5039085b
Prometheus: Make Prometheus streaming parser as default client ( #58365 )
...
* Introduce a new feature flag for prometheus buffered client
* Use querydata client as default and put buffered client behind the feature flag
* Remove prometheusStreamingJSONParser feature flag as it is not needed anymore
* Update tests
* Fix unit tests
* Update feature flag description
2022-11-11 17:53:12 +01:00
ismail simsek
0367f61bb3
Share azureauth between prometheus clients ( #58122 )
...
* Move azureauth to upper package
* Refactor http transport options
2022-11-03 19:44:37 +01:00
Kyle Brandt
6126f56ef0
Prometheus: Do not drop errors in streaming parser ( #57698 )
...
- Fixes #57692
- and also takes care of #42776 when using the streaming parser, not an ideal fix for #42776 but makes explore work better I think. https://github.com/grafana/grafana/issues/57365 might be a better longer term solution
2022-10-28 10:11:06 -04:00
Kyle Brandt
2cd9cbd359
Prometheus: Chore - Remove incorrect FrameType from exemplar frame ( #57695 )
2022-10-28 09:15:01 -04:00
Yuriy Tseretyan
facf2b1ee8
Chore: Update prometheus, loki, graphite and influx plugins to support contextual logs. ( #57708 )
2022-10-27 12:05:06 -04:00
Todd Treece
152c7f149a
Prometheus: Add Exemplar sampling for streaming parser ( #56049 )
2022-10-04 08:40:01 -04:00
Todd Treece
1c61c81dde
Prometheus: Various buffered and streaming parsing fixes ( #55941 )
2022-10-03 10:26:54 -04:00
Emil Tullstedt
b287047052
Chore: Upgrade Go to 1.19.1 ( #54902 )
...
* WIP
* Set public_suffix to a pre Ruby 2.6 version
* we don't need to install python
* Stretch->Buster
* Bump versions in lib.star
* Manually update linter
Sort of messy, but the .mod-file need to contain all dependencies that
use 1.16+ features, otherwise they're assumed to be compiled with
-lang=go1.16 and cannot access generics et al.
Bingo doesn't seem to understand that, but it's possible to manually
update things to get Bingo happy.
* undo reformatting
* Various lint improvements
* More from the linter
* goimports -w ./pkg/
* Disable gocritic
* Add/modify linter exceptions
* lint + flatten nested list
Go 1.19 doesn't support nested lists, and there wasn't an obvious workaround.
https://go.dev/doc/comment#lists
2022-09-12 12:03:49 +02:00
Andres Martinez Gotor
a31d96d20a
Prometheus: Promote Azure auth flag to configuration ( #53447 )
2022-08-11 16:12:57 +02:00
Jo
062d255124
Handle ioutil deprecations ( #53526 )
...
* replace ioutil.ReadFile -> os.ReadFile
* replace ioutil.ReadAll -> io.ReadAll
* replace ioutil.TempFile -> os.CreateTemp
* replace ioutil.NopCloser -> io.NopCloser
* replace ioutil.WriteFile -> os.WriteFile
* replace ioutil.TempDir -> os.MkdirTemp
* replace ioutil.Discard -> io.Discard
2022-08-10 15:37:51 +02:00
Andrej Ocenas
3df34fe064
Prometheus: Remove cache, pass headers in request, simplify client creation for resource calls and custom client ( #51436 )
...
* Remove cache, pass headers in request, simplify client creation
* Add test for http options creation
2022-07-04 11:18:45 +02:00
Serge Zaitsev
ae9491c3a7
Chore: Make test tracer noop and return no errors ( #50797 )
2022-06-15 12:40:41 +02:00
Todd Treece
64d93498de
Chore: Update grafana-plugin-sdk-go to v0.136.0 ( #50127 )
2022-06-03 08:25:52 -04:00
Todd Treece
33d4850c90
Prometheus: Fix sort issue in wide frames ( #49660 )
2022-05-25 23:32:55 -04:00
Todd Treece
94b9c524a8
Prometheus: Streaming JSON parser performance improvements ( #48792 )
2022-05-24 16:17:11 -04:00
Todd Treece
87e8521591
Prometheus: Implement Streaming JSON Parser ( #48477 )
...
use `prometheusStreamingJSONParser` feature toggle to enable
2022-05-13 20:28:54 +02:00