Aliaksandr Valialkin
1c33b5937e
app/vmselect/promql: prevent from count_values
explosion of timeseries, which could result in OOM
2019-06-11 01:03:13 +03:00
Aliaksandr Valialkin
8bb6bc986d
app/vmselect/promql: skip superflouos timestamps copying in count_values
2019-06-11 00:44:01 +03:00
Aliaksandr Valialkin
d2be567482
app/vmselect/promql: remove superflouos timeseries copy in histogram_quantile
func
2019-06-11 00:39:41 +03:00
Aliaksandr Valialkin
7e7d4d5275
app/vmselect/promql: remove superflouos timeseries copy in union
func
2019-06-11 00:35:20 +03:00
Aliaksandr Valialkin
bf9782eaf6
app/vmselect/promql: skip NaN values in count_values
func
2019-06-10 22:42:32 +03:00
Aliaksandr Valialkin
cbe692f0e2
app/vmselect: add /api/v1/labels/count
handler for quick detection of labels with the maximum number of distinct values
2019-06-10 19:55:38 +03:00
Aliaksandr Valialkin
7b6623558f
lib/storage: skip adaptive searching for tag filter matching the minimum number of metrics if the identical previous search didn't found such filter
...
This should improve speed for searching metrics among high number of time series
with high churn rate like in big Kubernetes clusters with frequent deployments.
2019-06-10 14:07:39 +03:00
Aliaksandr Valialkin
a1351bbaee
lib/storage: factor out getTagFilterWithMinMetricIDsCountAdaptive from updateMetricIDsForTagFilters
2019-06-10 13:26:44 +03:00
Aliaksandr Valialkin
b4d707d9bb
lib/storage: give clearer names to more functions
2019-06-10 13:01:23 +03:00
Aliaksandr Valialkin
bee7298f81
lib/storage: give more clear names to functions
2019-06-10 12:50:44 +03:00
Aliaksandr Valialkin
dbd217b8f0
lib/storage: test GetSeriesCount
2019-06-10 12:43:34 +03:00
Aliaksandr Valialkin
4d936b1524
lib/storage: make getSeriesCount func indexSearch method
2019-06-10 12:29:11 +03:00
Aliaksandr Valialkin
7354090aad
app/vmstorage: add missing _total
suffixes to newly added metrics
2019-06-09 22:11:36 +03:00
Aliaksandr Valialkin
d37924900b
lib/storage: optimize time series lookup for recent hours when the db contains many millions of time series with high churn rate (aka frequent deployments in Kubernetes)
2019-06-09 19:13:56 +03:00
Aliaksandr Valialkin
c0baa977cf
app/vminsert/concurrencylimiter: typo fix in the error message
2019-06-08 22:43:33 +03:00
Aliaksandr Valialkin
f4252f87e6
app/vminsert: really fix #60
...
ReadLinesBlock may accept dstBuf with non-zero length. In this case the last line without trailing newline isn't read.
Fix this by comparing len(dstBuf) to 0 instead of its original length.
2019-06-07 23:37:03 +03:00
Aliaksandr Valialkin
0b78d228d2
app/vminsert: properly read trailing line without newline in the end
...
This fixes https://github.com/VictoriaMetrics/VictoriaMetrics/issues/60
2019-06-07 23:17:59 +03:00
Aliaksandr Valialkin
0371c216a7
deployment/docker: move victoriametrics single-node docker image from valyala/victoria-metrics
to victoriametrics/victoria-metrics
docker hub path
2019-06-07 11:52:53 +03:00
Aliaksandr Valialkin
c1f18ee48d
app/vmselect/promql: properly handle {__name__ op "string"}
queries
...
This has been broken in 7294ef333ad26f4f6578b783e97649e58b1f8945 .
2019-06-07 02:02:04 +03:00
Roman Khavronenko
fbd7044b2b
Dashboard update ( #57 )
...
* split "pending datapoints" by storage and index pending entities
* update provisioned dVM dashboard
2019-06-07 01:31:45 +03:00
Roman Khavronenko
2afe511d80
Setup Grafana provisioning for docker-compose setup ( #50 )
...
* setup Grafana provisioning for docker-compose setup
* review fixes
2019-06-06 23:37:44 +03:00
Seua Polyakov
f4e63cd070
Add SIGINT as stopsignal to docker file ( #54 )
...
Add sigint as stopsignal to docker file. You can find more here: https://docs.docker.com/engine/reference/builder/#usage
With this change, the main process inside the container will receive SIGINT, and after a grace period, SIGKILL.
2019-06-06 22:36:21 +03:00
Aliaksandr Valialkin
667115a5c7
app/vmselect/prometheus: report about incorrect time or duration instead of silently using the default value
...
This should prevent from incorrect usage of the querying API.
Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/52
2019-06-06 22:18:18 +03:00
Aliaksandr Valialkin
1458450dba
app/vmselect/promql: return the correct time series from quantile
...
Previously arbitrary time series could be returned from `quantile`
depending on sort order for the last data point in the selected range.
Fix this by returning the calculated time series.
Fixes https://github.com/VictoriaMetrics/VictoriaMetrics/issues/55
2019-06-06 17:07:31 +03:00
Aliaksandr Valialkin
5a5ba749f2
README.md: add an example on how Influx line protocol is converted into Prometheus data points
2019-06-06 16:08:29 +03:00
Aliaksandr Valialkin
a3e26de45e
lib/procutil: typo fix in comment to WaitForSigterm
2019-06-04 17:31:47 +03:00
Aliaksandr Valialkin
53ea90865d
app/vmselect/promql: add -search.disableCache
flag for disabling response caching
...
This may be useful for data back-filling, when the response caching
could interfere badly with newly added data points with timestamps
in the past.
2019-06-04 17:30:45 +03:00
Aliaksandr Valialkin
17f0a53068
app/vminsert: explain that /query request emulation is required for TSBS benchmark
2019-06-03 18:40:27 +03:00
Anton Patsev
b03bdb32ff
Prettify Table of contents ( #47 )
2019-06-03 17:31:15 +03:00
Aliaksandr Valialkin
15f59c6df9
deployment/docker: remove trailing whitespace
2019-06-03 14:53:08 +03:00
Artem Navoiev
da45a20491
docker compose for VM
2019-06-03 09:57:33 +02:00
Roman Khavronenko
5859bb9556
Add grafana dashboard for VM ( #46 )
2019-06-03 00:25:07 +03:00
Aliaksandr Valialkin
28f6c36ab4
lib/storage: tune updating a map with today`s metric ids
...
- Increase update iterval from 1s to 10s. This should reduce CPU usage
for large amounts of metric ids with constant churn.
- Reduce pendingTodayMetricIDsLock lock duration during the update.
2019-06-02 21:58:16 +03:00
Aliaksandr Valialkin
4794f894a4
lib/storage: speed up checking metricID existence in the list for the current date
2019-06-02 18:34:08 +03:00
Aliaksandr Valialkin
c7280ba61a
vendor: update deps with make vendor-update
2019-06-01 23:39:58 +03:00
Aliaksandr Valialkin
fbd8b03f15
README.md: fixed the link to yum repository source codes
2019-06-01 13:55:44 +03:00
Aliaksandr Valialkin
d17a47e3e0
README.md: add setting up service
chapter
2019-05-31 23:34:09 +03:00
Aliaksandr Valialkin
d6862a2d97
README.md: mention that VictoriaMetrics works with time series data from Kubernetes
2019-05-31 22:53:35 +03:00
Aliaksandr Valialkin
f2cf5d8e36
app/vmselect/promql: allow escaping identifiers with \
and \xXX
...
Fixes https://github.com/VictoriaMetrics/VictoriaMetrics/issues/42
2019-05-31 17:35:17 +03:00
Aliaksandr Valialkin
27f0d098bd
app/victoria-metrics: add make victoria-metrics-arm64
rule for building GOARCH=arm64 binary
2019-05-29 23:07:14 +03:00
Aliaksandr Valialkin
a51ff2c6cb
README.md: add LICENSE shield
2019-05-29 14:09:36 +03:00
Aliaksandr Valialkin
56b952c456
app/vminsert: add -maxConcurrentInserts
command-line flag for limiting the number of concurrent inserts
2019-05-29 12:41:23 +03:00
Aliaksandr Valialkin
61bad1e07e
Makefile: run go vet
with -mod=vendor
in order to disable downloading vendored deps
2019-05-29 01:38:13 +03:00
Artem Navoiev
be97f764f5
[ci-ci] enable CI ( #39 )
2019-05-29 01:32:49 +03:00
Artem Navoiev
a576d1f5d3
README.md: add links to slack and telegrams ( #40 )
2019-05-29 01:30:37 +03:00
Aliaksandr Valialkin
968d094524
app/vminsert: reduce memory usage for Influx, Graphite and OpenTSDB protocols
...
Do not buffer per-connection data and just store it as it arrives
2019-05-28 18:47:23 +03:00
Aliaksandr Valialkin
e307a4d92c
lib/timerpool: use timer pool in concurrency limiters
...
This should reduce the number of memory allocations in highly loaded system
2019-05-28 17:20:10 +03:00
Aliaksandr Valialkin
0eae39daa7
app/vminsert: properly reset InsertCtx.mrs - they must be empty after Reset call
2019-05-28 16:08:01 +03:00
Aliaksandr Valialkin
437e0b2300
README.md: typo fix
2019-05-27 21:37:48 +03:00
Aliaksandr Valialkin
4b3af728ea
README.md: add steps for restoring from a snapshot
2019-05-27 20:36:51 +03:00