VictoriaMetrics/app/vmselect
f41gh7 ed9ab2ea73
refactoring: changed prompb to prompbmarshal everythere where internal series transformations are happening (#7409)
doing similar changes for both vmagent and vminsert (like one in
https://github.com/VictoriaMetrics/VictoriaMetrics/pull/7399) ends up
with almost same implementations for each of packages instead of having
this shared code in one place. one of the reasons is the same Timeseries
and Labels structure from different prompb and prompbmarshal packages.
My proposal is to use structures from prompb package only to
marshal/unmarshal sent/received data, but for internal transformations
use only structures from prompbmarshal package

Another example, where it already can help to simplify code is streaming
aggregation pipeline for vmsingle (now it first marshals
prompb.Timeseries to storage.MetricRow and then if streaming aggregation
or deduplication is enabled it unmarshals all the series back but to
prompbmarshal.Timeseries)

The following checks are **mandatory**:

- [ ] My change adheres [VictoriaMetrics contributing
guidelines](https://docs.victoriametrics.com/contributing/).
2024-11-26 19:02:06 +01:00
..
clusternative all: fix golangci-lint(revive) warnings after 0c0ed61ce7 2024-04-03 03:00:45 +03:00
deployment all: suppress InvalidDefaultArgInFrom warning emitted by docker build when building Docker packages via make package-* command 2024-09-03 14:05:43 +02:00
graphite refactoring: changed prompb to prompbmarshal everythere where internal series transformations are happening (#7409) 2024-11-26 19:02:06 +01:00
graphiteql app/vmselect: use strings.EqualFold instead of strings.ToLower where appropriate 2024-05-12 10:21:24 +02:00
multiarch app/*/multiarch: return back empty value for TARGETARCH 2024-09-06 18:15:22 +02:00
netstorage app/vmselect: fixes multitenant cache init 2024-11-25 11:49:34 +01:00
prometheus vmstorage: auto calculate maxUniqueTimeseries based on resources (#6961) 2024-10-18 13:41:43 +02:00
promql app/vmselect: fix panic/incorrect tenant in key 2024-11-25 11:47:24 +01:00
querystats vmselect: add support of multi-tenant queries (#6346) 2024-10-01 16:37:18 +02:00
searchutils docs: clarify flags -search.maxxxDuration can only be overridden to… (#7227) 2024-10-27 20:25:17 +01:00
static/css app/vmselect: properly serve static css for /select/.../metric-relabel-debug page 2022-12-10 03:04:43 -08:00
vmui make vmui-update 2024-11-15 19:22:00 +01:00
main.go vmselect: add support of multi-tenant queries (#6346) 2024-10-01 16:37:18 +02:00
Makefile make: add darwin builds for cluster (#7195) 2024-10-08 10:19:04 +02: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
vmui.go app/vmselect: add missing whitespace into the description for -vmui.defaultTimezone command-line flag 2024-02-01 14:49:48 +02: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/.