Ben Kochie
a57c0b1cc8
Merge pull request #13685 from prometheus/dependabot/github_actions/scripts/golangci/golangci-lint-action-4.0.0
...
build(deps): bump golangci/golangci-lint-action from 3.7.0 to 4.0.0 in /scripts
2024-03-04 10:59:25 +01:00
Ben Kochie
50a6b496de
Merge pull request #13688 from prometheus/dependabot/github_actions/actions/upload-artifact-4.3.1
...
build(deps): bump actions/upload-artifact from 4.0.0 to 4.3.1
2024-03-04 10:58:44 +01:00
Ben Kochie
666c7988fe
Merge pull request #13514 from prometheus/dependabot/github_actions/actions/setup-go-5.0.0
...
build(deps): bump actions/setup-go from 4.1.0 to 5.0.0
2024-03-04 10:58:11 +01:00
Ben Kochie
3bce00d6c4
Merge pull request #13074 from prometheus/dependabot/github_actions/bufbuild/buf-lint-action-1.1.0
...
build(deps): bump bufbuild/buf-lint-action from 1.0.3 to 1.1.0
2024-03-04 10:57:34 +01:00
dependabot[bot]
e28ed059af
build(deps): bump github.com/stretchr/testify
...
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify ) from 1.8.4 to 1.9.0.
- [Release notes](https://github.com/stretchr/testify/releases )
- [Commits](https://github.com/stretchr/testify/compare/v1.8.4...v1.9.0 )
---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-04 09:57:19 +00:00
Ben Kochie
eaa2624cdd
Merge pull request #13687 from prometheus/dependabot/go_modules/golang.org/x/oauth2-0.17.0
...
build(deps): bump golang.org/x/oauth2 from 0.16.0 to 0.17.0
2024-03-04 10:56:18 +01:00
Ben Kochie
fe22468157
Merge pull request #13694 from prometheus/dependabot/go_modules/documentation/examples/remote_storage/github.com/influxdata/influxdb-1.11.5
...
build(deps): bump github.com/influxdata/influxdb from 1.11.4 to 1.11.5 in /documentation/examples/remote_storage
2024-03-04 10:55:24 +01:00
Ben Kochie
26a1fb60b8
Merge pull request #13690 from prometheus/dependabot/go_modules/github.com/prometheus/alertmanager-0.27.0
...
build(deps): bump github.com/prometheus/alertmanager from 0.26.0 to 0.27.0
2024-03-04 10:53:55 +01:00
SuperQ
3a5c07c51b
Bump hashicorp/nomand/api
...
Update `github.com/hashicorp/nomad/api` now that we require Go 1.21.
Signed-off-by: SuperQ <superq@gmail.com>
2024-03-04 10:48:27 +01:00
dependabot[bot]
0103ab8daa
build(deps): bump github.com/influxdata/influxdb
...
Bumps [github.com/influxdata/influxdb](https://github.com/influxdata/influxdb ) from 1.11.4 to 1.11.5.
- [Release notes](https://github.com/influxdata/influxdb/releases )
- [Commits](https://github.com/influxdata/influxdb/compare/v1.11.4...v1.11.5 )
---
updated-dependencies:
- dependency-name: github.com/influxdata/influxdb
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 23:48:17 +00:00
dependabot[bot]
3cb6752b34
build(deps): bump github.com/prometheus/alertmanager
...
Bumps [github.com/prometheus/alertmanager](https://github.com/prometheus/alertmanager ) from 0.26.0 to 0.27.0.
- [Release notes](https://github.com/prometheus/alertmanager/releases )
- [Changelog](https://github.com/prometheus/alertmanager/blob/main/CHANGELOG.md )
- [Commits](https://github.com/prometheus/alertmanager/compare/v0.26.0...v0.27.0 )
---
updated-dependencies:
- dependency-name: github.com/prometheus/alertmanager
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 23:44:42 +00:00
dependabot[bot]
091ad1c410
build(deps): bump actions/upload-artifact from 4.0.0 to 4.3.1
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 4.0.0 to 4.3.1.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](c7d193f32e...5d5d22a312
)
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 23:44:24 +00:00
dependabot[bot]
af04032bfa
build(deps): bump golang.org/x/oauth2 from 0.16.0 to 0.17.0
...
Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2 ) from 0.16.0 to 0.17.0.
- [Commits](https://github.com/golang/oauth2/compare/v0.16.0...v0.17.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 23:44:18 +00:00
dependabot[bot]
e70b100ae8
build(deps): bump the go-opentelemetry-io group with 10 updates
...
Bumps the go-opentelemetry-io group with 10 updates:
| Package | From | To |
| --- | --- | --- |
| [go.opentelemetry.io/collector/featuregate](https://github.com/open-telemetry/opentelemetry-collector ) | `1.0.1` | `1.2.0` |
| [go.opentelemetry.io/collector/pdata](https://github.com/open-telemetry/opentelemetry-collector ) | `1.0.1` | `1.2.0` |
| [go.opentelemetry.io/collector/semconv](https://github.com/open-telemetry/opentelemetry-collector ) | `0.93.0` | `0.95.0` |
| [go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp](https://github.com/open-telemetry/opentelemetry-go-contrib ) | `0.47.0` | `0.49.0` |
| [go.opentelemetry.io/otel](https://github.com/open-telemetry/opentelemetry-go ) | `1.22.0` | `1.24.0` |
| [go.opentelemetry.io/otel/exporters/otlp/otlptrace](https://github.com/open-telemetry/opentelemetry-go ) | `1.22.0` | `1.24.0` |
| [go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc](https://github.com/open-telemetry/opentelemetry-go ) | `1.22.0` | `1.24.0` |
| [go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp](https://github.com/open-telemetry/opentelemetry-go ) | `1.22.0` | `1.24.0` |
| [go.opentelemetry.io/otel/sdk](https://github.com/open-telemetry/opentelemetry-go ) | `1.22.0` | `1.24.0` |
| [go.opentelemetry.io/otel/trace](https://github.com/open-telemetry/opentelemetry-go ) | `1.22.0` | `1.24.0` |
Updates `go.opentelemetry.io/collector/featuregate` from 1.0.1 to 1.2.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-collector/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-collector/blob/main/CHANGELOG-API.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-collector/compare/pdata/v1.0.1...pdata/v1.2.0 )
Updates `go.opentelemetry.io/collector/pdata` from 1.0.1 to 1.2.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-collector/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-collector/blob/main/CHANGELOG-API.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-collector/compare/pdata/v1.0.1...pdata/v1.2.0 )
Updates `go.opentelemetry.io/collector/semconv` from 0.93.0 to 0.95.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-collector/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-collector/blob/main/CHANGELOG-API.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-collector/compare/v0.93.0...v0.95.0 )
Updates `go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp` from 0.47.0 to 0.49.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go-contrib/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-go-contrib/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-go-contrib/compare/zpages/v0.47.0...zpages/v0.49.0 )
Updates `go.opentelemetry.io/otel` from 1.22.0 to 1.24.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.22.0...v1.24.0 )
Updates `go.opentelemetry.io/otel/exporters/otlp/otlptrace` from 1.22.0 to 1.24.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.22.0...v1.24.0 )
Updates `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc` from 1.22.0 to 1.24.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.22.0...v1.24.0 )
Updates `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp` from 1.22.0 to 1.24.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.22.0...v1.24.0 )
Updates `go.opentelemetry.io/otel/sdk` from 1.22.0 to 1.24.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.22.0...v1.24.0 )
Updates `go.opentelemetry.io/otel/trace` from 1.22.0 to 1.24.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.22.0...v1.24.0 )
---
updated-dependencies:
- dependency-name: go.opentelemetry.io/collector/featuregate
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/collector/pdata
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/collector/semconv
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/otel
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/otel/exporters/otlp/otlptrace
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/otel/sdk
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
- dependency-name: go.opentelemetry.io/otel/trace
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-opentelemetry-io
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 23:44:11 +00:00
dependabot[bot]
c14419a38b
build(deps): bump golangci/golangci-lint-action in /scripts
...
Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action ) from 3.7.0 to 4.0.0.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases )
- [Commits](3a91952989...3cfe3a4abb
)
---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 23:20:31 +00:00
Yuri Nikolic
d5ab1851dc
SampleRingIterator: add currType field
...
Signed-off-by: Yuri Nikolic <durica.nikolic@grafana.com>
2024-03-01 14:59:19 +01:00
György Krajcsovits
4d4d822c36
Add native histograms to latency/duration metrics
...
Dogfood native histograms.
Allow dependent projects to migrate to native histograms.
I took the defaults from client_golang.
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-03-01 14:44:38 +01:00
beorn7
f48c7a5503
promql: Add histograms to TestQueryStatistics
...
Also, fix the bugs exposed by the tests.
Signed-off-by: beorn7 <beorn@grafana.com>
2024-02-29 19:02:40 +01:00
beorn7
f46dd34982
promql: Add code comment
...
Signed-off-by: beorn7 <beorn@grafana.com>
2024-02-29 19:02:40 +01:00
beorn7
7d364c0451
promql: remove redundant line
...
Signed-off-by: beorn7 <beorn@grafana.com>
2024-02-29 19:02:40 +01:00
Björn Rabenstein
d5f0a240fa
Merge pull request #13674 from prometheus/owilliams/dupeok
...
fix: restore ability to match __name__ multiple times in selector
2024-02-29 17:49:15 +01:00
Björn Rabenstein
9187bcbdd5
Merge pull request #13536 from bboreham/faster-label-replace
...
promql: faster range-query of label_replace and label_join
2024-02-29 17:03:00 +01:00
Owen Williams
e01e7d36e2
fix: restore ability to match __name__ multiple times in selector
...
Add tests to cover this case.
Signed-off-by: Owen Williams <owen.williams@grafana.com>
2024-02-29 10:46:31 -05:00
Ondrej Kokes
2e30f1231b
docs: textparse.Parser return type mismatch
...
The docs suggest the Next method returns a bool, but that's not the case (`Entry` is an int).
```
// Next advances the parser to the next sample. It returns false if no
// more samples were read or an error occurred.
Next() (Entry, error)
```
The docs were first added in d80a3de235
in 2017. Back then the signature was
indeed `func (p *Parser) Next() bool`. But then it got refactored in 76a4a46cb0
and the signature changed with it, yet docs stayed the same - and eventually made their way into the `Parser` interface.
However, the Protobuf parser does have the right wording: 5de2df752f
```
// Next advances the parser to the next "sample" (emulating the behavior of a
// text format parser). It returns (EntryInvalid, io.EOF) if no samples were
// read.
```
Changing all other implementations (and the interface itself) to match this doc.
Signed-off-by: Ondrej Kokes <ondrej.kokes@gmail.com>
2024-02-29 16:45:05 +01:00
Kartikay
8736772053
web/api: add limit param on series, labels, label-values ( #13396 )
...
Support limit parameter in queries to restrict output data to the specified size, on the following endpoints:
/api/v1/series
/api/v1/labels
/api/v1/label/:name:/values
Signed-off-by: Pranshu Srivastava <rexagod@gmail.com>
Signed-off-by: Kartikay <kartikay_2101ce32@iitp.ac.in>
2024-02-29 15:31:13 +00:00
Manik Rana
ab9b770aea
ui (histograms): Add native histogram chart to Table view ( #13658 )
...
* feat: initial add histogram table
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* feat: add x-axis scale toggle
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* refac: adjust histogram summary styles
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* feat: initial add histogram table
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* feat: add x-axis scale toggle
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* refac: adjust histogram summary styles
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* chore: remove unused code
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* tests: test for HistogramChart instead of HistogramString
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* fix: remove histogramChart from a test
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* chore: rename style classes
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* refac: suppress test errors
Signed-off-by: Manik Rana <manikrana54@gmail.com>
---------
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-02-29 14:21:15 +01:00
roger.wang
7e8f03663a
Code optimization: The relabel operation is used very frequently, and strconv.FormatInt() with better performance should be used.
...
Signed-off-by: roger.wang <roger.wang@cloudwise.com>
2024-02-29 09:33:17 +08:00
Robert Fratto
a09465baee
storage/remote: disable resharding during active retry backoffs ( #13562 )
...
* storage/remote: disable resharding during active retry backoffs
Today, remote_write reshards based on pure throughput. This is
problematic if throughput has been diminished because of HTTP 429s;
increasing the number of shards due to backpressure will only exacerbate
the problem.
This commit disables resharding for twice the retry backoff, ensuring
that resharding will never occur during an active backoff, and that
resharding does not become enabled again until enough time has elapsed
to allow any pending requests to be retried.
Signed-off-by: Robert Fratto <robertfratto@gmail.com>
* storage/remote: test that resharding is disabled on retry
Signed-off-by: Robert Fratto <robertfratto@gmail.com>
* storage/remote: address review feedback
Signed-off-by: Robert Fratto <robertfratto@gmail.com>
* storage/remote: track time where resharding initially got disabled
This change introduces a second atomic int64 to roughly track when
resharding got disabled. This int64 is only updated after updating the
disabled timestamp if resharding was previously enabled.
Signed-off-by: Robert Fratto <robertfratto@gmail.com>
---------
Signed-off-by: Robert Fratto <robertfratto@gmail.com>
2024-02-28 14:28:39 -08:00
machine424
0e81ab44a2
discovery(k8s): add a metric to track failed requests, failures will still be logged.
...
Signed-off-by: machine424 <ayoubmrini424@gmail.com>
2024-02-28 19:55:46 +01:00
Bryan Boreham
e79b9ed2ab
Merge pull request #13194 from machine424/open
...
promtool: add a "tsdb dump-openmetrics" to dump in OpemMetrics format.
2024-02-28 17:46:59 +00:00
Bryan Boreham
e9d2e104eb
Merge pull request #13655 from bboreham/earlier-2.51
...
Move v2.51 release date up
2024-02-28 17:03:33 +00:00
machine424
4b71f6ffc2
promtool: add a "tsdb dump-openmetrics" to dump in OpemMetrics format.
...
This closes the loop, as the output can be fed into "tsdb create-blocks-from openmetrics"
Native histograms are not supported.
Signed-off-by: machine424 <ayoubmrini424@gmail.com>
2024-02-28 15:34:18 +01:00
Björn Rabenstein
0824e6e4ca
Merge pull request #13403 from machine424/slices
...
Move from golang.org/x/exp/slices into slices
2024-02-28 15:31:18 +01:00
machine424
f477e0539a
Move from golang.org/x/exp/slices into slices now that we only support Go >= 1.21
...
Prevent adding back golang.org/x/exp/slices.
Signed-off-by: machine424 <ayoubmrini424@gmail.com>
2024-02-28 14:54:53 +01:00
machine424
9c67344a54
chore(ci): Run all tests on the oldest golang version
...
Run test_mixins on the latest golang version
Signed-off-by: machine424 <ayoubmrini424@gmail.com>
2024-02-28 14:22:29 +01:00
György Krajcsovits
5d0a0a7542
Add custom buckets to native histogram model ( #13592 )
...
* add custom buckets to native histogram model
* simple copy for custom bounds
* return errors for unsupported add/sub operations
* add test cases for string and update appendhistogram in scrape to account for new schema
* check fields which are supposed to be unused but may affect results in equals
* allow appending custom buckets histograms regardless of max schema
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2024-02-28 14:06:43 +01:00
Björn Rabenstein
11932cd345
Merge pull request #13637 from bboreham/agg-warning
...
PromQL: improve warning for mixed values in aggregations
2024-02-28 13:52:30 +01:00
Björn Rabenstein
4408f898bc
Merge pull request #13656 from prometheus/owilliams/quotetests
...
tests(utf8): confirm that other quote marks are handled correctly in promql
2024-02-27 23:16:43 +01:00
Owen Williams
ac51a8024c
tests(utf8): confirm that other quote marks are handled correctly in promql
...
Signed-off-by: Owen Williams <owen.williams@grafana.com>
2024-02-27 15:47:47 -05:00
Bryan Boreham
befab52a14
Move v2.51 release date up
...
The previous release was forked on 25th Jan, so we should aim about 6 weeks after that.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-02-27 16:58:56 +00:00
Łukasz Mierzwa
c013a3c1b5
Check of duplicated samples directly in scrapeCache.get()
...
Avoid extra map lookup by hooking check into cache get.
```
goos: linux
goarch: amd64
pkg: github.com/prometheus/prometheus/scrape
cpu: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz
│ main.txt │ new.txt │
│ sec/op │ sec/op vs base │
ScrapeLoopAppend-8 66.72µ ± 0% 66.89µ ± 0% ~ (p=0.879 n=50)
ScrapeLoopAppendOM-8 66.61µ ± 0% 66.89µ ± 1% ~ (p=0.115 n=50)
geomean 66.66µ 66.89µ +0.34%
│ main.txt │ new.txt │
│ B/op │ B/op vs base │
ScrapeLoopAppend-8 20.17Ki ± 1% 20.12Ki ± 1% ~ (p=0.343 n=50)
ScrapeLoopAppendOM-8 20.38Ki ± 10% 17.99Ki ± 2% -11.69% (p=0.017 n=50)
geomean 20.27Ki 19.03Ki -6.14%
│ main.txt │ new.txt │
│ allocs/op │ allocs/op vs base │
ScrapeLoopAppend-8 11.00 ± 0% 11.00 ± 0% ~ (p=1.000 n=50) ¹
ScrapeLoopAppendOM-8 12.00 ± 0% 12.00 ± 0% ~ (p=1.000 n=50) ¹
geomean 11.49 11.49 +0.00%
¹ all samples are equal
```
Signed-off-by: Łukasz Mierzwa <l.mierzwa@gmail.com>
2024-02-27 12:09:37 +00:00
Łukasz Mierzwa
21f8b35f5b
Move staleness tracking out of checkAddError() calls
...
This call bloats checkAddError signature and logic, we can and should call it from the main scrape logic.
Signed-off-by: Łukasz Mierzwa <l.mierzwa@gmail.com>
2024-02-27 11:36:16 +00:00
Łukasz Mierzwa
55dcaab41b
Fix TestScrapeLoopDiscardDuplicateLabels test
...
This test calls Rollback() which is normally called from within append code.
Doing so means that staleness tracking data is outdated and need to by cycled manually.
Signed-off-by: Łukasz Mierzwa <l.mierzwa@gmail.com>
2024-02-27 11:36:16 +00:00
Łukasz Mierzwa
50c81bed86
Check for duplicated series on a scrape
...
When Prometheus scrapes a target and it sees the same time series repeated multiple times it currently silently ignores that.
This change adds a test for that and fixes the scrape loop so that:
- Only first sample for each unique time series is appended
- Duplicated samples increment the prometheus_target_scrapes_sample_duplicate_timestamp_total metric
This allows one to identify such scrape jobs and targets.
Benchmark results:
```
name old time/op new time/op delta
ScrapeLoopAppend-8 64.8µs ± 2% 71.1µs ±20% +9.75% (p=0.000 n=10+10)
ScrapeLoopAppendOM-8 64.2µs ± 1% 68.5µs ± 7% +6.71% (p=0.000 n=9+10)
TargetsFromGroup/1_targets-8 14.2µs ± 1% 14.5µs ± 1% +1.99% (p=0.000 n=10+10)
TargetsFromGroup/10_targets-8 149µs ± 1% 152µs ± 1% +2.05% (p=0.000 n=9+10)
TargetsFromGroup/100_targets-8 1.49ms ± 4% 1.48ms ± 1% ~ (p=0.796 n=10+10)
name old alloc/op new alloc/op delta
ScrapeLoopAppend-8 19.9kB ± 1% 17.8kB ± 3% -10.23% (p=0.000 n=8+10)
ScrapeLoopAppendOM-8 19.9kB ± 1% 18.3kB ±10% -8.14% (p=0.001 n=9+10)
TargetsFromGroup/1_targets-8 2.43kB ± 0% 2.43kB ± 0% -0.15% (p=0.045 n=10+10)
TargetsFromGroup/10_targets-8 24.3kB ± 0% 24.3kB ± 0% ~ (p=0.083 n=10+9)
TargetsFromGroup/100_targets-8 243kB ± 0% 243kB ± 0% ~ (p=0.720 n=9+10)
name old allocs/op new allocs/op delta
ScrapeLoopAppend-8 9.00 ± 0% 9.00 ± 0% ~ (all equal)
ScrapeLoopAppendOM-8 10.0 ± 0% 10.0 ± 0% ~ (all equal)
TargetsFromGroup/1_targets-8 40.0 ± 0% 40.0 ± 0% ~ (all equal)
TargetsFromGroup/10_targets-8 400 ± 0% 400 ± 0% ~ (all equal)
TargetsFromGroup/100_targets-8 4.00k ± 0% 4.00k ± 0% ~ (all equal)
```
Signed-off-by: Łukasz Mierzwa <l.mierzwa@gmail.com>
2024-02-27 11:36:16 +00:00
Łukasz Mierzwa
1a8ea78207
Fix BenchmarkScrapeLoopAppendOM
...
OpenMetrics requires EOF comment at the end of metrics body, but the makeTestMetrics() function doesn't append it.
This means this benchmark tests a response with errors but I don't think that was the intention.
Signed-off-by: Łukasz Mierzwa <l.mierzwa@gmail.com>
2024-02-27 11:36:16 +00:00
Julien
0474b0bc39
Merge pull request #13621 from bboreham/rw-docs
...
Docs: update remote-write defaults
2024-02-27 12:28:16 +01:00
Julien
6ef810f5f8
Merge pull request #13650 from prometheus/dependabot/go_modules/github.com/docker/docker-25.0.3incompatible
...
build(deps): bump github.com/docker/docker from 25.0.0+incompatible to 25.0.3+incompatible
2024-02-27 12:18:17 +01:00
Julien
32a3b2e50d
Merge pull request #13648 from prometheus/dependabot/go_modules/k8s-io-a2ca04ec63
...
build(deps): bump the k8s-io group with 3 updates
2024-02-27 12:18:06 +01:00
Julien
8d1c3f8df5
Merge pull request #13649 from prometheus/dependabot/go_modules/github.com/aws/aws-sdk-go-1.50.25
...
build(deps): bump github.com/aws/aws-sdk-go from 1.50.0 to 1.50.25
2024-02-27 12:17:56 +01:00
Julien
d753fd3fde
Merge pull request #13651 from prometheus/dependabot/go_modules/github.com/linode/linodego-1.29.0
...
build(deps): bump github.com/linode/linodego from 1.27.1 to 1.29.0
2024-02-27 12:17:46 +01:00