Skip to content

@valyala valyala released this Sep 23, 2021

Changes

  • FEATURE: vmagent: add vm_promscrape_max_scrape_size_exceeded_errors_total metric for counting of the failed scrapes due to the exceeded response size (the response size limit can be configured via -promscrape.maxScrapeSize command-line flag). See this issue.

  • BUGFIX: vmalert: properly reload rule groups if only the interval config option is changed. See this issue.

  • BUGFIX: properly handle {__name__=~"prefix(suffix1|suffix2)",other_label="..."} queries. They may return unexpected empty responses since v1.66.0. See this issue.

See full changelog.

How to run VictoriaMetrics

Unpack the victoria-metrics-*.tar.gz archive and read these docs.

vmutils-*.tag.gz archive contains the following tools:

vmutils-*-enterprise.tar.gz archive contains the following additional enterprise tools:

The corresponding docker images are available here.
Cluster version is available here.

Assets 38
Sep 23, 2021
docs/CHANGELOG.md: cut v1.66.2
Sep 23, 2021
Merge branch 'public-single-node' into pmm-6401-read-prometheus-data-…
…files

@valyala valyala released this Sep 21, 2021

Changes

  • FEATURE: add -cluster and/or -enterprise suffixes to short_version label at vm_app_version metric exposed at /metrics page of every VictoriaMetrics component. See this issue.

  • BUGFIX: vmselect: fix accessing Graphite APIs. The access has been broken in v1.66.0, because /graphite/* path prefix accidentally clashed with /graph* path prefix used for VictoriaMetrics UI (aka vmui).

  • BUGFIX: fix parsing regex: <bool_or_number> in relabeling rules (for example, regex: true or regex: 123). The bug has been introduced in v1.66.0.

See full changelog.

How to run VictoriaMetrics

Unpack the victoria-metrics-*.tar.gz archive and read these docs.

vmutils-*.tag.gz archive contains the following tools:

vmutils-*-enterprise.tar.gz archive contains the following additional enterprise tools:

The corresponding docker images are available here.
Cluster version is available here.

Assets 38
Sep 21, 2021
docs/CHANGELOG.md: cut v1.66.1
Sep 21, 2021
Merge branch 'public-single-node' into pmm-6401-read-prometheus-data-…
…files

@valyala valyala released this Sep 20, 2021

Changes

  • FEATURE: vmalert: add web UI with the list of alerting groups, alerts and alert statuses. See this pull request.

  • FEATURE: vmalert: add -rule.maxResolveDuration command-line flag, which could be used for limiting the auto-resolve duration for the alerting rule. By default it is limited to 3x evaluation interval. This could be too high for big evaluation intervals. See this issue.

  • FEATURE: vmalert: add support for Bearer token authorization for -datasource.url, -remoteRead.url and -remoteWrite.url. See this issue.

  • FEATURE: vmagent: send stale markers for disappeared metrics like Prometheus does. Previously stale markers were sent only when the scrape target disappears or when it becomes temporarily unavailable. See these docs for details.

  • FEATURE: vmagent: add ability to set series_limit option for a particular scrape target via __series_limit__ label. This allows setting the limit on the number of time series on a per-target basis. See these docs for details.

  • FEATURE: vmagent: add ability to set stream_parse option for a particular scrape target via __stream_parse__ label. This allows managing the stream parsing mode on a per-target basis. See these docs for details.

  • FEATURE: vmagent: add ability to set scrape_interval and scrape_timeout options for a particular target via __scrape_interval__ and __scrape_timeout__ labels in the same way as Prometheus 2.30 does. See this pull request.

  • FEATURE: vmagent: generate scrape_timeout_seconds metric per each scrape target, so the target saturation could be calculated with scrape_duration_seconds / scrape_timeout_seconds. See the corresponding pull request from Prometheus 2.30.

  • FEATURE: vmagent: reduce CPU usage when calculating the number of newly added series per scrape (this number is sent to remote storage in scrape_series_added metric).

  • FEATURE: vmagent: reduce CPU usage when applying series_limit to scrape targets with constant set of metrics. See more information about series_limit here.

  • FEATURE: vminsert: disable rerouting by default when a few of vmstorage nodes start accepting data at lower speed than the rest of vmstorage nodes. This should improve VictoriaMetrics cluster stability during rolling restarts and during spikes in time series churn rate. The rerouting can be enabled by passing -disableRerouting=false command-line flag to vminsert.

  • FEATURE: vmauth: do not put invalid auth tokens into log by default due to security reasons. The logging can be returned back by passing -logInvalidAuthTokens command-line flag to vmauth. Requests with invalid auth tokens are counted at vmagent_http_request_errors_total{reason="invalid_auth_token"} metric exposed by vmauth at /metrics page.

  • FEATURE: add new relabeling actions: keep_metrics and drop_metrics. This simplifies metrics filtering by metric names. See these docs for more details.

  • FEATURE: allow splitting long regex in relabeling filters into an array of shorter regexps, which can be put into multiple lines for better readability and maintainability. See these docs for more details.

  • FEATURE: optimize performance for queries with regexp filters on metric name like {__name__=~"metric1|...|metricN"}. See this pull request from @faceair.

  • FEATURE: vmui: use Prometheus-compatible query args, so vmui could be accessed from graph editor in Grafana. See this pull request. Thanks to @Loori-R.

  • FEATURE: vmselect: automatically add missing port to -storageNode hostnames. For example, -storageNode=vmstorage1,vmstorage2 is automatically translated to -storageNode=vmstorage1:8401,vmstorage2:8401. This simplifies manual setup of VictoriaMetrics cluster.

  • FEATURE: vminsert: automatically add missing port to -storageNode hostnames. For example, -storageNode=vmstorage1,vmstorage2 is automatically translated to -storageNode=vmstorage1:8400,vmstorage2:8400. This simplifies manual setup of VictoriaMetrics cluster.

  • FEATURE: add mad(q) function to MetricsQL. It calculates Median absolute deviation for groups of points with identical timestamps across multiple time series.

  • FEATURE: add outliers_mad(tolerance, q) function to MetricsQL. It returns time series with peaks outside the Median absolute deviation multiplied by tolerance.

  • FEATURE: add histogram_quantiles("phiLabel", phi1, ..., phiN, buckets) function to MetricsQL. It calculates the given phi*-quantiles over the given buckets and returns time series per each quantile with the corresponding {phiLabel="phi*"} label.

  • FEATURE: add quantiles_over_time("phiLabel", phi1, ..., phiN, series_selector[d]) function to MetricsQL. It calculates the given phi*-quantiles over raw samples selected by series_selector on the given lookbehind window d. It returns time series per each quantile with the corresponding {phiLabel="phi*"} label.

  • FEATURE: enterprise: do not ask for -eula flag if -version flag is passed to enteprise app. See this issue.

  • BUGFIX: properly handle queries with multiple filters matching empty labels such as metric{label1=~"foo|",label2="bar|"}. This filter must match the following series: metric, metric{label1="foo"}, metric{label2="bar"} and metric{label1="foo",label2="bar"}. Previously it was matching only metric{label1="foo",label2="bar"}. See this issue.

  • BUGFIX: vmselect: reset connection timeouts after each request to vmstorage. This should prevent from cannot read data in 0.000 seconds: unexpected EOF warning in logs. See this issue. Thanks to @mxlxm .

  • BUGFIX: keep metric name for time series returned from rollup_candlestick function, since the returned series don't change the meaning of the original series. See this issue.

  • BUGFIX: use Prometheus-compatible label value formatting for count_values function. Previously big values could be improperly formatted, which could break query results, which rely on label value such as ... on(label) count_values("label", ...).

  • BUGFIX: vmagent: properly use https scheme for wildcard TLS certificates for role: ingress targets in Kubernetes service discovery. See this issue.

  • BUGFIX: vmagent: support host networking mode for docker_sd_config. See this issue.

  • BUGFIX: fix non-repeatable results from quantile_over_time() function when the number of input samples exceeds 1000. See this issue.

  • BUGFIX: vmagent: fix EC2 zone discovery when filters are specified in ec2_sc_config. See this issue.

See full changelog.

How to run VictoriaMetrics

Unpack the victoria-metrics-*.tar.gz archive and read these docs.

vmutils-*.tag.gz archive contains the following tools:

vmutils-*-enterprise.tar.gz archive contains the following additional enterprise tools:

The corresponding docker images are available here.
Cluster version is available here.

Contributors
mxlxm, faceair, and Loori-R
Assets 38
Sep 20, 2021
docs/CHANGELOG.md: cut v1.66.0
Sep 20, 2021
Merge branch 'public-single-node' into pmm-6401-read-prometheus-data-…
…files

@valyala valyala released this Sep 1, 2021

Changes

  • FEATURE: vmagent: add ability to read scrape configs from multiple files specified in scrape_config_files section. See this issue.

  • FEATURE: vmagent: reduce memory usage and CPU usage when Prometheus staleness tracking is enabled for metrics exported from the deleted or disappeared scrape targets.

  • FEATURE: vmagent: add the ability to limit the number of unique time series scraped per each target. This can be done either globally via -promscrape.seriesLimitPerTarget command-line option or on per-target basis via series_limit option at scrape_config section. See the updated docs on cardinality limiter and this issue.

  • FEATURE: vmagent: discover role: ingress and role: endpointslice in kubernetes_sd_config via v1 API instead of v1beta1 API if Kubernetes supports it. This fixes service discovery in Kubernetes v1.22 and newer versions. See these docs.

  • FEATURE: take into account failed queries in vm_request_duration_seconds summary at /metrics. Previously only successful queries were taken into account. This could result in skewed summary. See this pull request.

  • FEATURE: vmalert: add an official dashboard for vmalert. See these docs.

  • FEATURE: vmalert: add ability to set additional labels per group via labels config section. See this issue.

  • FEATURE: vmalert: add -disableAlertgroupLabel command-line flag for disabling the label with alert group name. This may be needed for proper deduplication in Alertmanager. See this issue.

  • FEATURE: update Go builder from v1.16.7 to v1.17.0. This improves data ingestion and query performance by up to 5% according to benchmarks. See the release post for Go1.17.

  • FEATURE: vmagent: expose promscrape_discovery_http_errors_total metric, which can be used for monitoring the number of failed discovery attempts per each http_sd config.

  • FEATURE: do not reset response cache when a sample with old timestamp is ingested into VictoriaMetrics if -search.disableAutoCacheReset command-line option is set. See this feature request.

  • FEATURE: add quantiles("quantileLabel", phi1, ..., phiN, q) aggregate function to MetricsQL, which calculates the given phi* quantiles over time series returned by q. See this feature request.

  • BUGFIX: rename sign function to sgn in order to be consistent with PromQL. See this pull request from Prometheus.

  • BUGFIX: vmagent: add role: endpointslice in kubernetes_sd_config in order to be consistent with Prometheus. Previously this role was supported with incorrect name: role: endpointslices. Now both endpointslice and endpointslices are supported. See the corresponding code in Prometheus.

  • BUGFIX: improve the detection of the needed free space for background merge operation. This should prevent from possible out of disk space crashes during big merges. See this issue.

  • BUGFIX: vmauth: remove trailing slash from the full url before requesting it from the backend. See this pull request.

  • BUGFIX: vmbackupmanager: fix timeout error when snapshot takes longer than 10 seconds. See this issue.

  • BUGFIX: properly parse OpenTSDB put messages with multiple spaces between message elements. See this issue. Thanks to @envzhu for the fix.

See full changelog.

How to run VictoriaMetrics

Unpack the victoria-metrics-*.tar.gz archive and read these docs.

vmutils-*.tag.gz archive contains the following tools:

vmutils-*-enterprise.tar.gz archive contains the following additional enterprise tools:

The corresponding docker images are available here.
Cluster version is available here.

Contributors
envzhu
Assets 38