Aliaksandr Valialkin
6611417732
vendor: make vendor-update
2022-09-26 15:47:35 +03:00
Aliaksandr Valialkin
1271010727
vendor: make vendor-update
2022-09-21 12:03:10 +03:00
Dmytro Kozlov
ed842e7d3a
app/{vmctl,vmalert}: update progress bar library (make vendor-update) ( #3138 )
...
* app/{vmctl,vmalert}: update progress bar library (make vendor-update)
* app/{vmctl,vmalert}: make vendor-update
2022-09-21 11:11:40 +03:00
Aliaksandr Valialkin
7437d3c48f
vendor: make vendor-update
2022-09-19 15:14:01 +03:00
Aliaksandr Valialkin
34db3fdd3f
app/vmagent/remotewrite: add benchmarks for comparing the performance of standard Snappy encoder with github.com/klauspost/compress/s2 encoder
...
The standard Snappy encoder from github.com/golang/snappy shows quite good performance number
for compressing the Prometheus remote_write proto messages according to the added benchmarks,
so there is no need in switching to github.com/klauspost/compress/s2 yet.
2022-09-19 14:27:56 +03:00
Dmytro Kozlov
36ea8537d9
vmselect/promql: add alphanumeric sort by label (sort_by_label_numeric) ( #2982 )
...
* vmselect/promql: add alphanumeric sort by label (sort_by_label_numeric)
* vmselect/promql: fix tests, add documentation
* vmselect/promql: update test
* vmselect/promql: update for alphanumeric sorting, fix tests
* vmselect/promql: remove comments
* vmselect/promql: cleanup
* vmselect/promql: avoid memory allocations, update functions descriptions
* vmselect/promql: make linter happy (remove ineffectual assigment)
* vmselect/promql: add test case, fix behavior when strings are equal
* vendor: update github.com/VictoriaMetrics/metricsql from v0.44.1 to v0.45.0
this adds support for sort_by_label_numeric and sort_by_label_numeric_desc functions
* wip
* lib/promscrape: read response body into memory in stream parsing mode before parsing it
This reduces scrape duration for targets returning big responses.
The response body was already read into memory in stream parsing mode before this change,
so this commit shouldn't increase memory usage.
* wip
Co-authored-by: Aliaksandr Valialkin <valyala@victoriametrics.com>
2022-09-14 17:42:07 +03:00
Aliaksandr Valialkin
fea576e061
vendor: make vendor-update
2022-09-13 16:45:00 +03:00
Aliaksandr Valialkin
7ffd3ae1ff
vendor: make vendor-update
2022-09-08 18:57:19 +03:00
Aliaksandr Valialkin
6837400c5a
vendor: make vendor-update
2022-09-02 21:43:12 +03:00
Aliaksandr Valialkin
b26c18a7c5
vendor: make vendor-update
2022-08-30 09:45:58 +03:00
Aliaksandr Valialkin
1509fab1b2
vendor: make vendor-update
2022-08-21 19:08:20 +03:00
Aliaksandr Valialkin
2de9d42dcc
go.mod: update github.com/VictoriaMetrics/metrics from v1.22.1 to v1.22.2
2022-08-17 21:27:24 +03:00
Aliaksandr Valialkin
40c2fae617
vendor: make vendor-update
2022-08-15 00:54:50 +03:00
Aliaksandr Valialkin
e0865f4174
vendor: update github.com/VictoriaMetrics/metrics from v1.21.0 to v1.22.1
2022-08-08 17:19:16 +03:00
Aliaksandr Valialkin
6b49958e04
vendor: make vendor-update
2022-08-07 22:38:32 +03:00
Aliaksandr Valialkin
568e4aac5e
vendor: update github.com/VictoriaMetrics/metrics from v1.20.1 to v1.21.0
...
This adds the following push-related metrics when -pushmetrics.url is set:
- metrics_push_interval_seconds
- metrics_push_total
- metrics_push_errors_total
- metrics_push_bytes_pushed_total
- metrics_push_duration_seconds
- metrics_push_block_size_bytes
Updates https://github.com/VictoriaMetrics/metrics/issues/35
2022-08-04 18:34:38 +03:00
Aliaksandr Valialkin
7adc5a461b
vendor: make vendor-update
2022-08-02 09:20:03 +03:00
Aliaksandr Valialkin
27c4c5a530
vendor: make vendor-update
2022-07-25 10:54:54 +03:00
Aliaksandr Valialkin
bf797ba4d9
all: push metrics to -pusmetrics.url in gzip-compressed form in order to reduce the needed network bandwidth
2022-07-25 10:54:54 +03:00
Aliaksandr Valialkin
301a27b9f8
vendor: make vendor-update
2022-07-21 21:11:58 +03:00
Aliaksandr Valialkin
f00a6bf837
all: add ability to push internal metrics to remote storage system specified via -pushmetrics.url
2022-07-21 20:15:29 +03:00
Aliaksandr Valialkin
059e769674
vendor: make vendor-update
2022-07-18 12:00:45 +03:00
Aliaksandr Valialkin
8d33eee7d6
vendor: make vendor-update
2022-07-13 17:10:57 +03:00
Aliaksandr Valialkin
9a06353091
vendor: make vendor-update
2022-07-11 18:15:37 +03:00
Aliaksandr Valialkin
b5a272ae5d
vendor: make vendor-update
2022-07-07 20:49:36 +03:00
Aliaksandr Valialkin
757f4fd9f9
vendor: make vendor-update
2022-07-04 12:01:34 +03:00
Aliaksandr Valialkin
ffd88d0b76
vendor: update github.com/VictoriaMetrics/metricsql from v0.44.0 to v0.44.1
2022-06-30 17:37:57 +03:00
Aliaksandr Valialkin
69bbdf7304
vendor: make vendor-update
2022-06-28 14:55:41 +03:00
Aliaksandr Valialkin
94b81165d0
all: limit the maximum memory usage for regexp cache, which stores parsed regular expressions in MetricsQL queries
...
Previously the cache could store 10K unique regexps. When every regexp is huge (e.g. hundreds of kilobytes),
then the total cache size could grow to multiples of gigabytes. Now the cache size is limited by the total length
of all cached regexps. So huge regexps won't result in high memory usage for the cache.
2022-06-24 17:58:47 +03:00
Aliaksandr Valialkin
032d4fdf7d
vendor: make vendor-update
2022-06-20 14:31:57 +03:00
Aliaksandr Valialkin
e1fc4db109
vendor: make vendor-update
2022-06-13 10:07:19 +03:00
Aliaksandr Valialkin
38342f959a
vendor: make vendor-update
2022-06-06 13:25:11 +03:00
Aliaksandr Valialkin
af4daede2e
vendor: make vendor-update
2022-05-31 12:58:28 +03:00
Aliaksandr Valialkin
5924511960
vendor: make vendor-update
2022-05-25 21:52:54 +03:00
Aliaksandr Valialkin
e0bd035467
vendor: make vendor-update
2022-05-20 14:48:23 +03:00
dependabot[bot]
f3f04c0c8b
build(deps): bump github.com/influxdata/influxdb from 1.9.6 to 1.9.7 ( #2589 )
...
Bumps [github.com/influxdata/influxdb](https://github.com/influxdata/influxdb ) from 1.9.6 to 1.9.7.
- [Release notes](https://github.com/influxdata/influxdb/releases )
- [Changelog](https://github.com/influxdata/influxdb/blob/master/CHANGELOG_OLD.md )
- [Commits](https://github.com/influxdata/influxdb/commits )
---
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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-20 13:55:21 +03:00
Dmytro Kozlov
1a8a24bcb3
vmctl: fix build for solaris os ( #2555 )
...
* vmctl: fix build for solaris os
* vmctl: updated dependency (using Syscall instead of Syscall6)
* vmctl: updated dependency
* vmctl: updated dependency
2022-05-11 14:30:45 +03:00
Aliaksandr Valialkin
e736de8e5c
vendor: make vendor-update
2022-05-07 01:49:22 +03:00
Aliaksandr Valialkin
adf29d048c
vendor: make vendor-update
2022-05-04 23:56:45 +03:00
Aliaksandr Valialkin
b06b02c7e3
vendor: make vendor-update
2022-05-02 16:01:06 +03:00
Dmytro Kozlov
25e54d2b50
vmctl/vm: added datapoints collection bar ( #2486 )
...
add progress bars to the VM importer
The new progress bars supposed to display the processing speed per each
VM importer worker. This info should help to identify if there is a bottleneck
on the VM side during the import process, without waiting for its finish.
The new progress bars can be disabled by passing `vm-disable-progress-bar` flag.
Plotting multiple progress bars requires using experimental progress bar pool
from github.com/cheggaaa/pb/v3. Switch to progress bar pool required changes
in all import modes.
The openTSDB mode wasn't changed due to its implementation, which implies individual progress
bars per each series. Because of this, using the pool wasn't possible.
Signed-off-by: dmitryk-dk <kozlovdmitriyy@gmail.com>
Co-authored-by: hagen1778 <roman@victoriametrics.com>
2022-05-02 10:58:06 +03:00
Aliaksandr Valialkin
f1d31b66b9
vendor: update github.com/valyala/gozstd from v1.16.0 to v1.17.0
2022-04-29 19:35:07 +03:00
Aliaksandr Valialkin
6eb1580158
app/vmselect/promql: add tlast_change_over_time(m[d])
function, which returns the timestamp for the last change of m
on the given lookbehind window d
2022-04-27 10:58:40 +03:00
Aliaksandr Valialkin
155cd5d6e1
vendor: make vendor-update
2022-04-26 15:27:40 +03:00
Aliaksandr Valialkin
2c7f7799eb
vendor: make vendor-update
2022-04-21 16:01:19 +03:00
Aliaksandr Valialkin
a5cfe5d13e
app/vmselect/promql: add drop_common_labels()
function
2022-04-21 14:20:36 +03:00
Aliaksandr Valialkin
7a622a71ea
vendor: make vendor-update
2022-04-19 11:43:02 +03:00
Aliaksandr Valialkin
b9e133678f
vendor: make vendor-update
2022-04-12 12:56:50 +03:00
Aliaksandr Valialkin
b3a3e9990f
vendor: update github.com/VictoriaMetrics/metricsql from v0.40.0 to v0.41.0
...
This allows using built-in function names as with template names
2022-04-11 18:32:18 +03:00
Aliaksandr Valialkin
f1c01a6fcc
vendor: make vendor-update
2022-04-07 15:28:44 +03:00
Aliaksandr Valialkin
89c550fa5d
vendor: update github.com/VictoriaMetrics/fastcache from v1.9.0 to v1.10.0
2022-04-05 20:39:43 +03:00
Aliaksandr Valialkin
a8337c7170
vendor: make vendor-update
2022-04-04 13:08:07 +03:00
Aliaksandr Valialkin
20cecf32c0
vendor: make vendor-update
2022-03-26 13:08:29 +02:00
Aliaksandr Valialkin
3ed2f67876
vendor: make vendor-update
2022-03-21 17:02:42 +02:00
Aliaksandr Valialkin
f31f097de0
vendor: make vendor-update
2022-03-16 13:55:25 +02:00
Aliaksandr Valialkin
e2eaf2a681
vendor: make vendor-update
2022-03-03 18:15:12 +02:00
Aliaksandr Valialkin
d51c838904
vendor: make vendor-update
2022-02-22 20:56:33 +02:00
Aliaksandr Valialkin
28edbd9abb
vendor: make vendor-update
2022-02-21 13:59:20 +02:00
Aliaksandr Valialkin
916989479e
vendor: make vendor-update
2022-02-12 01:14:06 +02:00
Aliaksandr Valialkin
178178bdd4
vendor: update github.com/VictoriaMetrics/fastcache from v1.8.0 to v1.9.0
2022-02-08 01:18:27 +02:00
Aliaksandr Valialkin
75c5c33694
vendor: update github.com/valyala/gozstd from v1.15.1 to v1.16.0
2022-02-07 18:31:13 +02:00
Aliaksandr Valialkin
b4b40774ec
vendor: make vendor-update
2022-02-07 15:07:43 +02:00
Aliaksandr Valialkin
021ee53ba8
app/vminsert: improve re-routing logic in order to spread rows more evenly among the available storage nodes
2022-02-06 20:20:02 +02:00
Aliaksandr Valialkin
2cc5f2940f
vendor: update github.com/VictoriaMetrics/metricsql from v0.39.0 to v0.40.0
2022-02-01 17:43:09 +02:00
Aliaksandr Valialkin
04d6596298
app/vmselect/promql: optimize queries, which join on _info
metrics.
...
Automatically add common filters from one side of binary operation
to the other side before sending the query to storage subsystem.
See https://grafana.com/blog/2021/08/04/how-to-use-promql-joins-for-more-effective-queries-of-prometheus-metrics-at-scale/
and https://www.robustperception.io/exposing-the-software-version-to-prometheus
2022-01-31 20:25:15 +02:00
Aliaksandr Valialkin
f3250307b1
vendor: make vendor-update
2022-01-31 12:46:44 +02:00
Aliaksandr Valialkin
0ac2a51682
vendor: update github.com/VictoriaMetrics/metricsql from v0.37.0 to v0.38.0
...
This adds more optimization cases for https://utcc.utoronto.ca/~cks/space/blog/sysadmin/PrometheusLabelNonOptimization
For example:
* Multi-level transform functions. For example, abs(round(foo{a="b"})) + bar{x="y"}
is now optimized to abs(round(foo{a="b",x="y"})) + bar{a="b",x="y"}
* Binary operations with `on()`, `without()`, `group_left()` and `group_right()` modifiers.
For example, foo{a="b"} on (a) + bar is now optimized to foo{a="b"} on (a) + bar{a="b"}
* Multi-level binary operations. For example, foo{a="b"} + bar{x="y"} + baz{z="q"}
is now optimized to foo{a="b",x="y",z="q"} + bar{a="b",x="y",z="q"} + baz{a="b",x="y",z="q"}
* Aggregate functions. For example, sum(foo{a="b"}) by (c) + bar{c="d"}
is now optimized to sum(foo{a="b",c="d"}) by (c) + bar{c="d"}
2022-01-27 19:04:45 +02:00
Aliaksandr Valialkin
dcf20c7aa1
vendor: make vendor-update
2022-01-27 13:22:23 +02:00
Aliaksandr Valialkin
53440226d6
vendor: make vendor-update
2022-01-23 13:15:37 +02:00
Aliaksandr Valialkin
e8706ce417
vendor: make vendor-update
2022-01-17 15:45:47 +02:00
Aliaksandr Valialkin
5a1e4a140f
app/vmselect/promql: implement keep_metric_names
modifier for transform and rollup functions
...
Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/949
2022-01-14 04:15:35 +02:00
Aliaksandr Valialkin
53c9a81f2b
app/vmselect/promql: add stale_samples_over_time()
function
2022-01-14 01:49:24 +02:00
Aliaksandr Valialkin
653055b924
vendor: update github.com/valyala/gozstd from v1.15.0 to v1.15.1
2022-01-13 23:44:18 +02:00
Aliaksandr Valialkin
0580a58feb
app/vmselect/promql: add support for @
modifier
...
Add support for `@` modifier in MetricsQL according to https://prometheus.io/docs/prometheus/latest/querying/basics/#modifier
Extend the support with the following features:
* Allow using `@` modifier everywhere in the query. For example, `sum(foo) @ end()`
* Allow using arbitrary expression as `@` modifier. For example, `foo @ (end() - 1h)`
returns `foo` value at `end - 1 hour` timestamp on the selected time range `[start ... end]`
Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1348
2022-01-13 22:15:19 +02:00
Aliaksandr Valialkin
972587e6f7
vendor: update github.com/valyala/gozstd from v1.14.2 to v1.15.0
2022-01-12 13:25:50 +02:00
Aliaksandr Valialkin
ad0c21ff26
vendor: make vendor-update
2022-01-11 10:16:01 +02:00
Aliaksandr Valialkin
f10b54a665
vendor: make vendor-update
2022-01-07 12:42:14 +02:00
Aliaksandr Valialkin
fcab2fc716
vendor: make vendor-update
2021-12-22 12:39:24 +02:00
Aliaksandr Valialkin
c018f47e81
go.mod: update minimum Go version from Go 1.16 to Go 1.17
...
VictoriaMetrics code uses features from Go 1.17, so the minimum Go version must be increased from Go 1.16 to Go 1.17
See https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1987
2021-12-22 12:39:22 +02:00
Aliaksandr Valialkin
3396f08874
app/vmselect/promql: follow-up after 177e345d8a
...
* Document changes_prometheus(), increase_prometheus() and delta_prometheus() functions.
* Simplify their implementation
* Mention these functions in docs/CHANGELOG.md
2021-12-20 13:15:06 +02:00
Aliaksandr Valialkin
dfbd4ca2ab
vendor: make vendor-update
2021-12-20 12:12:14 +02:00
Aliaksandr Valialkin
c170841951
app/vmselect/promql: add timestamp_with_name(m[d])
function
...
This function works the same as `timestamp()`, but doesn't remove source time series names.
See https://github.com/VictoriaMetrics/VictoriaMetrics/issues/949#issuecomment-995222388
2021-12-15 23:38:09 +02:00
Aliaksandr Valialkin
aa61a74c31
vendor: make vendor-update
2021-12-12 18:10:34 +02:00
Aliaksandr Valialkin
addae7fc6a
app/vmselect/promql: preserve the order of time series passed to limit_offset()
function
...
Previously time series passed to `limit_offset()` were shuffled according to hash for their labels.
This was unexpected behaviour for most users.
See https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1920 and https://github.com/VictoriaMetrics/VictoriaMetrics/issues/951
2021-12-12 18:07:15 +02:00
Aliaksandr Valialkin
6af4c0ca95
vendor: make vendor-update
2021-12-06 09:59:06 +02:00
Aliaksandr Valialkin
246417601c
vendor: make vendor-update
2021-12-02 12:38:38 +02:00
Aliaksandr Valialkin
ab4be24397
app/vmstorage: export vm_cache_size_max_bytes metrics for determining capacity of various caches
...
The vm_cache_size_max_bytes metric can be used for determining caches which reach their capacity via the following query:
vm_cache_size_bytes / vm_cache_size_max_bytes > 0.9
2021-12-02 10:30:01 +02:00
Aliaksandr Valialkin
3d20d229d0
vendor: make vendor-update
2021-11-29 12:36:56 +02:00
Aliaksandr Valialkin
aa6d11a33f
app/vmselect/promql: add now()
function, which returns the current timestamp as a floating-point value in seconds
2021-11-17 16:42:11 +02:00
Aliaksandr Valialkin
ee64a88ba3
vendor: make vendor-update
2021-11-17 13:40:36 +02:00
Aliaksandr Valialkin
c6fa2eaa3b
vendor: make vendor-update
2021-11-14 14:05:11 +02:00
Aliaksandr Valialkin
1eb756fd11
app/vmselect/promql: arrange function names in the code in alphabetical order
...
This should simplify code maintenance in the future
2021-11-14 13:54:43 +02:00
Aliaksandr Valialkin
3a1ac218ba
app/vmselect/promql: add duration_over_time(m[d], max_interval)
function
...
This function calculates the actual lifetime of the time series on the given lookbehdind window `d`
Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1780
2021-11-08 13:14:57 +02:00
Aliaksandr Valialkin
d59acb06c1
vendor: make vendor-update
2021-11-08 12:41:20 +02:00
Denys Holius
2d1b24217a
bumped golangci-lint to the latest 1.43 ( #1781 )
2021-11-04 12:16:55 +02:00
Aliaksandr Valialkin
a102fca4ac
app/vmselect/promql: add limit_offset(limit, offset, q)
function, which can be used for paging over big number of time series
...
Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1778
2021-11-03 16:03:10 +02:00
Aliaksandr Valialkin
43bf0333eb
app/vmselect/promql: add label_graphite_group()
function for extracting groups from Graphite metric names
2021-11-03 13:20:34 +02:00
Aliaksandr Valialkin
54f3f08874
vendor: make vendor-update
2021-11-01 16:08:01 +02:00
Aliaksandr Valialkin
d2b0c9556c
vendor: update github.com/VictoriaMetrics/metrics from v1.18.0 to v1.18.1
2021-11-01 16:08:00 +02:00
Aliaksandr Valialkin
99784b21c1
all: fix build issues and tests for Apple M1
...
Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1653
2021-10-27 15:07:19 +03:00