VictoriaMetrics v1.41.0 Release Notes

Release Date: 2020-09-11 // almost 2 years ago
  • 🔄 Changes since v1.40.1

    • FEATURE: reuse timestamp blocks for adjancent metric blocks with identical timestamps. This reduces disk space usage when scraping targets containing metrics with identical names such as node_cpu_seconds_total, histograms, quantiles, etc. Important : this changes on-disk data format. This makes impossible downgrading to releases below v1.41.0. These releases may panic with the following error after downgrading:

         cannot read next block: invalid TimestampsBlockOffset at block header at offset ...
      
    • 🔋 FEATURE: initial implementation of Graphite Metrics API - see these docs.

    • FEATURE: vmagent: add endpointslices discovery type to kubernetes_sd_config. This is similar to prometheus/prometheus#6838 , which has been added in Prometheus v2.21. See https://github.com/prometheus/prometheus/releases/tag/v2.21.0

    • FEATURE: vmagent: add __meta_dns_srv_record_target and __ meta_dns_srv_record_port labels to dns_sd_config. This syncs dns service discovery with Prometheus 2.21 - see https://github.com/prometheus/prometheus/releases/tag/v2.21.0 and prometheus/prometheus#7678

    • 🔋 FEATURE: vmagent: allow setting multiple identical -remoteWrite.url values. This may be useful when each url is authenticated via different -remoteWrite.basicAuth.username. See #755

    • 🔋 FEATURE: vmalert: update groups on config reload only if changes detected. This should speed up config reload for big number of groups when only a small part of these groups are updated. See #691

    • 🔋 FEATURE: vmalert: add Group name as label to generated alerts and timeseries. See #611

    • 🔋 FEATURE: support composite durations like Prometheus 2.21 does. The following durations are supported now: 1h5m35s or 1s543ms. See https://github.com/prometheus/prometheus/releases/tag/v2.21.0 and prometheus/prometheus#7713

    • FEATURE: add a jitter to -http.connTimeout in order to protect from Thundering herd problem when many connections are re-established at the same time.

    • 🔋 FEATURE: allow passing timestamp via timestamp query arg when ingesting data at /api/v1/import/prometheus. See these docs. See #750

    • 🔋 FEATURE: update Go builder from v1.15.1 to v1.15.2. This fixes the following issues in Go runtime: https://github.com/golang/go/issues?q=milestone%3AGo1.15.2+label%3ACherryPickApproved

    • 🛠 BUGFIX: vmagent: do not reset the remaining rows when pushing a part of data to remote storage during big scrapes. See #753

    • 🛠 BUGFIX: vmbackup, vmrestore: do not set AWS config profile to default by default, since it may break default AWS auth mechanism. See #726

    • 🛠 BUGFIX: do not store inf values, since they may lead to significant precision loss for previously stored values. See #752

    • 🛠 BUGFIX: skip infinite values when calculating smooth_exponential() function from MetricsQL. This should help with missing results in ttf() function. See #757

    • 🛠 BUGFIX: adjust integrate() calculations to be more similar to calculations from InfluxDB. See #701

    How to run VictoriaMetrics

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

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

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