mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2026-07-09 18:36:52 +03:00
Compare commits
1 Commits
RequestErr
...
VMSelectCo
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f6f2b8b025 |
@@ -18,7 +18,7 @@ groups:
|
|||||||
concurrency: 2
|
concurrency: 2
|
||||||
rules:
|
rules:
|
||||||
- alert: RequestErrorsToAPI
|
- alert: RequestErrorsToAPI
|
||||||
expr: increase(vm_http_request_errors_total{path=~".+"}[5m]) > 0
|
expr: increase(vm_http_request_errors_total[5m]) > 0
|
||||||
for: 15m
|
for: 15m
|
||||||
labels:
|
labels:
|
||||||
severity: warning
|
severity: warning
|
||||||
|
|||||||
@@ -1687,6 +1687,10 @@ func assertInstantValues(tss []*timeseries) {
|
|||||||
|
|
||||||
var memoryIntensiveQueries = metrics.NewCounter(`vm_memory_intensive_queries_total`)
|
var memoryIntensiveQueries = metrics.NewCounter(`vm_memory_intensive_queries_total`)
|
||||||
|
|
||||||
|
var _ = metrics.NewGauge(`vm_max_memory_per_query`, func() float64 {
|
||||||
|
return float64(maxMemoryPerQuery.N)
|
||||||
|
})
|
||||||
|
|
||||||
func evalRollupFuncWithMetricExpr(qt *querytracer.Tracer, ec *EvalConfig, funcName string, rf rollupFunc,
|
func evalRollupFuncWithMetricExpr(qt *querytracer.Tracer, ec *EvalConfig, funcName string, rf rollupFunc,
|
||||||
expr metricsql.Expr, me *metricsql.MetricExpr, iafc *incrementalAggrFuncContext, windowExpr *metricsql.DurationExpr,
|
expr metricsql.Expr, me *metricsql.MetricExpr, iafc *incrementalAggrFuncContext, windowExpr *metricsql.DurationExpr,
|
||||||
) ([]*timeseries, error) {
|
) ([]*timeseries, error) {
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ groups:
|
|||||||
Consider to limit the ingestion rate, decrease retention or scale the disk space if possible."
|
Consider to limit the ingestion rate, decrease retention or scale the disk space if possible."
|
||||||
|
|
||||||
- alert: RequestErrorsToAPI
|
- alert: RequestErrorsToAPI
|
||||||
expr: increase(vm_http_request_errors_total{path=~".+"}[5m]) > 0
|
expr: increase(vm_http_request_errors_total[5m]) > 0
|
||||||
for: 15m
|
for: 15m
|
||||||
labels:
|
labels:
|
||||||
severity: warning
|
severity: warning
|
||||||
@@ -224,3 +224,15 @@ groups:
|
|||||||
If this happens after unclean shutdown of VictoriaMetrics process (via \"kill -9\", OOM or power off),
|
If this happens after unclean shutdown of VictoriaMetrics process (via \"kill -9\", OOM or power off),
|
||||||
then this is OK - the alert must go away in a few minutes after the restart.
|
then this is OK - the alert must go away in a few minutes after the restart.
|
||||||
Otherwise this may point to the corruption of index data.
|
Otherwise this may point to the corruption of index data.
|
||||||
|
|
||||||
|
- alert: VMSelectConcurrentQueriesExceedMemoryLimit
|
||||||
|
expr: (vm_max_memory_per_query * on(job, instance) vm_concurrent_select_capacity) > on(job, instance) vm_available_memory_bytes
|
||||||
|
for: 5m
|
||||||
|
labels:
|
||||||
|
severity: warning
|
||||||
|
annotations:
|
||||||
|
summary: "vmselect ({{ $labels.instance }}) concurrent query memory may exceed pod limit"
|
||||||
|
description: "Current concurrent queries ({{ $value | humanize1024 }} combined max memory) exceed
|
||||||
|
the available memory on instance {{ $labels.instance }}.
|
||||||
|
This may result in OOM kills. Consider reducing -maxConcurrentRequests,
|
||||||
|
lowering -maxMemoryPerQuery, or scaling up pod memory limits."
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ groups:
|
|||||||
Consider to limit the ingestion rate, decrease retention or scale the disk space if possible."
|
Consider to limit the ingestion rate, decrease retention or scale the disk space if possible."
|
||||||
|
|
||||||
- alert: RequestErrorsToAPI
|
- alert: RequestErrorsToAPI
|
||||||
expr: increase(vm_http_request_errors_total{path=~".+"}[5m]) > 0
|
expr: increase(vm_http_request_errors_total[5m]) > 0
|
||||||
for: 15m
|
for: 15m
|
||||||
labels:
|
labels:
|
||||||
severity: warning
|
severity: warning
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ See also [LTS releases](https://docs.victoriametrics.com/victoriametrics/lts-rel
|
|||||||
|
|
||||||
* SECURITY: upgrade base docker image (Alpine) from 3.23.4 to 3.24.1. See [Alpine 3.24.1 release notes](https://www.alpinelinux.org/posts/Alpine-3.24.1-released.html).
|
* SECURITY: upgrade base docker image (Alpine) from 3.23.4 to 3.24.1. See [Alpine 3.24.1 release notes](https://www.alpinelinux.org/posts/Alpine-3.24.1-released.html).
|
||||||
|
|
||||||
|
* FEATURE: `vmselect` in [VictoriaMetrics cluster](https://docs.victoriametrics.com/victoriametrics/cluster-victoriametrics/): expose `vm_max_memory_per_query` metric reflecting the `-search.maxMemoryPerQuery` limit. Create `VMSelectConcurrentQueriesExceedMemoryLimit` alert to warn when OOMs are possible due to misconfiguration of `-search.maxMemoryPerQuery` and max concurrent queries.
|
||||||
|
|
||||||
* FEATURE: [vmauth](https://docs.victoriametrics.com/victoriametrics/vmauth/): add `default_vm_access_claim` field into `jwt` section of auth config. It could be used at [JWT claim placeholders](https://docs.victoriametrics.com/victoriametrics/vmauth/#jwt-claim-based-request-templating), if `JWT` token doesn't have `vm_access` claim. See [#11054](https://github.com/VictoriaMetrics/VictoriaMetrics/issues/11054).
|
* FEATURE: [vmauth](https://docs.victoriametrics.com/victoriametrics/vmauth/): add `default_vm_access_claim` field into `jwt` section of auth config. It could be used at [JWT claim placeholders](https://docs.victoriametrics.com/victoriametrics/vmauth/#jwt-claim-based-request-templating), if `JWT` token doesn't have `vm_access` claim. See [#11054](https://github.com/VictoriaMetrics/VictoriaMetrics/issues/11054).
|
||||||
* FEATURE: [vmagent](https://docs.victoriametrics.com/victoriametrics/vmagent/): reduces CPU usage by 10% at [sharding among remote storages](https://docs.victoriametrics.com/victoriametrics/vmagent/#sharding-among-remote-storages). See [#11113](https://github.com/VictoriaMetrics/VictoriaMetrics/pull/11113). Thanks to @bennf for contribution.
|
* FEATURE: [vmagent](https://docs.victoriametrics.com/victoriametrics/vmagent/): reduces CPU usage by 10% at [sharding among remote storages](https://docs.victoriametrics.com/victoriametrics/vmagent/#sharding-among-remote-storages). See [#11113](https://github.com/VictoriaMetrics/VictoriaMetrics/pull/11113). Thanks to @bennf for contribution.
|
||||||
* FEATURE: [vmsingle](https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/) and `vmselect` in [VictoriaMetrics cluster](https://docs.victoriametrics.com/victoriametrics/cluster-victoriametrics/): add `optimize_repeated_binary_op_subexprs=1` query arg to [/api/v1/query_range](https://docs.victoriametrics.com/victoriametrics/keyconcepts/#range-query) for executing binary operator sides sequentially when they share the same optimized aggregate rollup result expression. This allows the second side to reuse rollup result cache populated by the first side. See [#10575](https://github.com/VictoriaMetrics/VictoriaMetrics/issues/10575).
|
* FEATURE: [vmsingle](https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/) and `vmselect` in [VictoriaMetrics cluster](https://docs.victoriametrics.com/victoriametrics/cluster-victoriametrics/): add `optimize_repeated_binary_op_subexprs=1` query arg to [/api/v1/query_range](https://docs.victoriametrics.com/victoriametrics/keyconcepts/#range-query) for executing binary operator sides sequentially when they share the same optimized aggregate rollup result expression. This allows the second side to reuse rollup result cache populated by the first side. See [#10575](https://github.com/VictoriaMetrics/VictoriaMetrics/issues/10575).
|
||||||
|
|||||||
Reference in New Issue
Block a user