VictoriaMetrics/app/vmselect
Roman Khavronenko cbe39bbb8d
vmselect: limit end param max value by 2d in future (#2729)
* vmselect: limit `end` param max value by 2d in future

The change is applied only to service handlers like `/labels` or `/series`
and limits the `end` param by max value <= now() + 2 days. The same limit
is applied for the ingested data, so no reason to allow to request data
in future far than that.

The change is also needed for corner cases like https://github.com/VictoriaMetrics/VictoriaMetrics/issues/2669
where too high `end` value triggers inefficient global index search.

Signed-off-by: hagen1778 <roman@victoriametrics.com>

* docs/CHANGELOG.md: document the bugfix

Co-authored-by: Aliaksandr Valialkin <valyala@victoriametrics.com>
2022-06-16 20:51:40 +03:00
..
bufferedwriter app/vmselect/bufferedwriter: suppress trivial network errors, which can be generated by remote side 2022-03-18 19:27:33 +02:00
deployment Rootless docker images by default (#358) 2020-03-27 21:18:32 +02:00
graphite app/vmselect: optimize /api/v1/labels and /api/v1/label/.../values handlers when match[] query arg is passed to them 2022-06-12 14:06:24 +03:00
graphiteql Graphite vmalert wip (#112) 2021-02-01 15:28:30 +02:00
multiarch deployment/docker: embed tzdata into prod Go app instead of installing it into base docker image 2021-02-12 04:56:27 +02:00
netstorage app/{vmselect,vmstorage}: properly pass seriesCountByLabelName and seriesCountByFocusLabelValue entries from vmstorage to vmselect 2022-06-16 10:44:29 +03:00
prometheus vmselect: limit end param max value by 2d in future (#2729) 2022-06-16 20:51:40 +03:00
promql lib/querytracer: make it easier to use by passing trace context message to New and NewChild 2022-06-08 21:16:12 +03:00
querystats app/vmselect: do not track queries with less than 1ms execution time at /api/v1/status/top_queries 2021-07-15 16:53:35 +03:00
searchutils app/vmselect: add optional limit query arg to /api/v1/labels and /api/v1/label_values endpoints 2022-06-10 10:24:07 +03:00
vmui lib/storage: show top labels with the highest number of series in cardinality explorer 2022-06-14 16:34:13 +03:00
main.go app/vmselect: optimize /api/v1/labels and /api/v1/label/.../values handlers when match[] query arg is passed to them 2022-06-12 14:06:24 +03:00
Makefile app/{vminsert,vmselect}: automatically add missing port in -storageNode lists passed to vminsert and vmselect 2021-09-15 18:04:30 +03:00
README.md app/vmselect: expose vmui at /vmselect/<accountID>/vmui/ instead of /vmselect/<accountID>/prometheus/vmui/ 2021-07-10 12:32:21 +03:00

vmselect performs the following tasks:

  • Splits incoming selects to tasks for vmstorage nodes and issues these tasks to all the vmstorage nodes in the cluster.

  • Merges responses from all the vmstorage nodes and returns a single response.

The vmui directory contains static contents built from app/vmui package with make vmui-update command. The vmui page is available at http://<vmselect>:8481/select/<accountID>/vmui/.