All Versions
86
Latest Version
Avg Release Cycle
5 days
Latest Release
1231 days ago

Changelog History
Page 1

  • v1.49.0 Changes

    December 05, 2020

    ๐Ÿ”„ Changes since v1.48.0

    ๐Ÿ”‹ FEATURE: optimize Consul service discovery speed when discovering big number of services. See #574

    FEATURE: add label_uppercase(q, label1, ... labelN) and label_lowercase(q, label1, ... labelN) function to MetricsQL for uppercasing and lowercasing values for the given labels. See #936

    FEATURE: add count_eq_over_time(m[d], N) and count_ne_over_time(m[d], N) for counting the number of samples for m over d that (equal / not equal) to N.

    ๐Ÿ”‹ FEATURE: do not print usage info for all the command-line flags when incorrect command-line flag is passed. Previously it could be hard reading the error message about incorrect command-line flag because of too big usage info for all the flags.

    ๐Ÿ”‹ FEATURE: upgrade Go builder from v1.15.5 to v1.15.6 . This fixes issues found in Go since v1.15.5.

    ๐Ÿ›  BUGFIX: properly parse timestamps in OpenMetrics format - they are exposed as floating-point number in seconds instead of integer milliseconds unlike in Prometheus exposition format. See the docs.

    ๐Ÿ›  BUGFIX: return nan for a >bool b query when a equals to nan like Prometheus does. Previously 0 was returned in this case. This applies to any comparison operation with bool modifier. See these docs for details.

    ๐Ÿ›  BUGFIX: properly parse hex numbers in MetricsQL. Previously hex numbers with non-decimal digits such as 0x3b couldn't be parsed.

    BUGFIX: handle time() cmp_op metric like Prometheus does - i.e. return metric value if cmp_op comparison is true. Previously time() value was returned.

    BUGFIX: return nan for minute(m) query when m equals to nan like Prometheus does. This applies to all the time-related functions such as day_of_month, day_of_week, days_in_month, hour, month and year.

    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.

    ๐Ÿš€ vmctl releases are available here.

  • v1.49.0-cluster

    December 05, 2020
  • v1.48.0 Changes

    November 26, 2020

    ๐Ÿ”„ Changes since v1.47.0

    ๐Ÿ”‹ FEATURE: added Snap package for single-node VictoriaMetrics. This simplifies installation under Ubuntu to a single command:

    snap install victoriametrics
    

    ๐Ÿ”‹ FEATURE: vmselect: add -replicationFactor command-line flag for reducing query duration when replication is enabled and a part of vmstorage nodes are temporarily slow and/or temporarily unavailable. See #711

    FEATURE: vminsert: export vm_rpc_vmstorage_is_reachable metric, which can be used for monitoring reachability of vmstorage nodes from vminsert nodes.

    FEATURE: vmagent: add Netflix Eureka service discovery (aka eureka_sd_config). See #851

    FEATURE: add filters option to dockerswarm_sd_config like Prometheus did in v2.23.0 - see prometheus/prometheus#8074

    FEATURE: expose __meta_ec2_ipv6_addresses label for ec2_sd_config like Prometheus will do in the next release.

    ๐Ÿ”‹ FEATURE: add -loggerWarnsPerSecondLimit command-line flag for rate limiting of WARN messages in logs. See #905

    ๐Ÿ”‹ FEATURE: apply loggerErrorsPerSecondLimit and -loggerWarnsPerSecondLimit rate limit per caller. I.e. log messages are suppressed if the same caller logs the same message at the rate exceeding the given limit. See #905 (comment)

    ๐Ÿ”‹ FEATURE: add remoteAddr to slow query log in order to simplify identifying the client that sends slow queries to VictoriaMetrics. Slow query logging is controlled with -search.logSlowQueryDuration command-line flag.

    ๐Ÿ”‹ FEATURE: add /tags/delSeries handler from Graphite Tags API. See https://victoriametrics.github.io/#graphite-tags-api-usage

    ๐Ÿ”‹ FEATURE: log metric name plus all its labels when the metric timestamp is out of the configured retention. This should simplify detecting the source of metrics with unexpected timestamps.

    ๐Ÿ”‹ FEATURE: add -dryRun command-line flag to single-node VictoriaMetrics in order to check config file pointed by -promscrape.config.

    ๐Ÿ›  BUGFIX: properly parse Prometheus metrics with exemplars such as foo 123 # {bar="baz"} 1.

    ๐Ÿ›  BUGFIX: properly parse "infinity" values in OpenMetrics format. See #924

    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.

    ๐Ÿš€ vmctl releases are available here.

  • v1.48.0-cluster

    November 26, 2020
  • v1.47.0 Changes

    November 16, 2020

    ๐Ÿ”„ Changes since v1.46.0

    ๐Ÿ”‹ FEATURE: vmselect: return the original error from vmstorage node in query response if -search.denyPartialResponse is set. See #891

    ๐Ÿ”‹ FEATURE: vmselect: add "isPartial":{true|false} field in JSON output for /api/v1/* functions from Prometheus querying API. "isPartial":true is set if the response contains partial data because of a part of vmstorage nodes were unavailable during query processing.

    ๐Ÿ”‹ FEATURE: improve performance for /api/v1/series, /api/v1/labels and /api/v1/label/<labelName>/values on time ranges exceeding one day.

    ๐Ÿ”‹ FEATURE: vmagent: reduce memory usage when service discovery detects big number of scrape targets and the set of discovered targets changes over time. See #825

    ๐Ÿ”‹ FEATURE: vmagent: add -promscrape.dropOriginalLabels command-line option, which can be used for reducing memory usage when scraping big number of targets. See #825 (comment) for details.

    ๐Ÿ”‹ FEATURE: vmalert: explicitly set extra labels to alert entities. See #870

    ๐Ÿ”‹ FEATURE: add -search.treatDotsAsIsInRegexps command-line flag, which can be used for automatic escaping of dots in regexp label filters used in queries. For example, if -search.treatDotsAsIsInRegexps is set, then the query foo{bar=~"aaa.bb.cc|dd.eee"} is automatically converted to foo{bar=~"aaa\\.bb\\.cc|dd\\.eee"}. This may be useful for querying Graphite metrics.

    ๐Ÿ”‹ FEATURE: consistently return text-based HTTP responses such as plain/text and application/json with charset=utf-8. See #897

    ๐Ÿ”‹ FEATURE: update Go builder from v1.15.4 to v1.15.5. This should fix these issues in Go.

    ๐Ÿ”‹ FEATURE: added /internal/force_flush http handler for flushing recently ingested data from in-memory buffers to persistent storage. See troubleshooting docs for more details.

    ๐Ÿ”‹ FEATURE: added Graphite Tags API support. See these docs for details.

    ๐Ÿ›  BUGFIX: do not return data points in the end of the selected time range for time series ending in the middle of the selected time range. See #887 and #845

    ๐Ÿ›  BUGFIX: remove spikes at the end of time series gaps for increase() or delta() functions. See #894

    ๐Ÿ›  BUGFIX: vminsert: properly return HTTP 503 status code when all the vmstorage nodes are unavailable. See #896

    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.

    ๐Ÿš€ vmctl releases are available here.

  • v1.47.0-cluster

    November 16, 2020
  • v1.46.0 Changes

    November 07, 2020

    ๐Ÿ”„ Changes since v1.45.0

    ๐Ÿ”‹ FEATURE: optimize requests to /api/v1/labels and /api/v1/label/<name>/values when start and end args are set.

    ๐Ÿ”‹ FEATURE: reduce memory usage when query touches big number of time series.

    FEATURE: vmagent: reduce memory usage when kubernetes_sd_config discovers big number of scrape targets (e.g. hundreds of thouthands) and the majority of these targets (99%) are dropped during relabeling. Previously labels for all the dropped targets were displayed at /api/v1/targets page. Now only up to -promscrape.maxDroppedTargets such targets are displayed. See #878 for details.

    ๐Ÿ”‹ FEATURE: vmagent: reduce memory usage when scraping big number of targets with big number of temporary labels starting with __. See #825

    ๐Ÿ”‹ FEATURE: vmagent: add /ready HTTP endpoint, which returns 200 OK status code when all the service discovery has been initialized. This may be useful during rolling upgrades. See #875

    ๐Ÿ›  BUGFIX: vmagent: eliminate data race when -promscrape.streamParse command-line is set. Previously this mode could result in scraped metrics with garbage labels. See #825 (comment) for details.

    BUGFIX: properly calculate topk_* and bottomk_* functions from MetricsQL for time series with gaps. See #883

    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.

    ๐Ÿš€ vmctl releases are available here.

  • v1.46.0-cluster

    November 07, 2020
  • v1.45.0 Changes

    November 02, 2020

    ๐Ÿ”„ Changes since v1.44.0

    ๐Ÿ”‹ FEATURE: allow setting -retentionPeriod smaller than one month. I.e. -retentionPeriod=3d, -retentionPeriod=2w, etc. is supported now. See #173

    ๐Ÿ”‹ FEATURE: optimize more cases according to https://utcc.utoronto.ca/~cks/space/blog/sysadmin/PrometheusLabelNonOptimization . Now the following cases are optimized too:

    • rollup_func(foo{filters}[d]) op bar -> rollup_func(foo{filters}[d]) op bar{filters}
    • transform_func(foo{filters}) op bar -> transform_func(foo{filters}) op bar{filters}

    - num_or_scalar op foo{filters} op bar -> num_or_scalar op foo{filters} op bar{filters}

    ๐Ÿ”‹ FEATURE: improve time series search for queries with multiple label filters. I.e. foo{label1="value", label2=~"regexp"}. See #781

    ๐Ÿ“œ FEATURE: vmagent: add stream parse mode. This mode allows reducing memory usage when individual scrape targets expose tens of millions of metrics. For example, during scraping Prometheus in federation mode. See -promscrape.streamParse command-line option and stream_parse: true config option for scrape_config section in -promscrape.config. See #825 and troubleshooting docs for vmagent.

    ๐Ÿ”‹ FEATURE: vmalert: add -dryRun command-line option for validating the provided config files without the need to start vmalert service.

    FEATURE: accept optional third argument of string type at topk_* and bottomk_* functions. This is label name for additional time series to return with the sum of time series outside top/bottom K. See MetricsQL docs for more details.

    ๐Ÿ”‹ FEATURE: vmagent: expose /api/v1/targets page according to the corresponding Prometheus API. See #643

    ๐Ÿ›  BUGFIX: vmagent: properly handle OpenStack endpoint ending with v3.0 such as https://ostack.example.com:5000/v3.0 in the same way as Prometheus does. See #728 (comment)

    ๐Ÿ›  BUGFIX: drop trailing data points for time series with a single raw sample. See #748

    ๐Ÿ›  BUGFIX: do not drop trailing data points for instant queries to /api/v1/query. See #845

    ๐Ÿ›  BUGFIX: vmbackup: fix panic when -origin isn't specified. See #856

    ๐Ÿ›  BUGFIX: vmalert: skip automatically added labels on alerts restore. Label alertgroup was introduced in this issue and automatically added to generated time series. By mistake, this new label wasn't correctly purged on restore event and affected alert's ID uniqueness. See #870

    ๐Ÿ›  BUGFIX: vmagent: fix panic at scrape error body formating. See #864

    ๐Ÿ›  BUGFIX: vmagent: add leading missing slash to metrics path like Prometheus does. See #835

    ๐Ÿ›  BUGFIX: vmagent: drop packet if remote storage returns 4xx status code. This make the behaviour consistent with Prometheus.
    ๐Ÿ‘€ See #873

    ๐Ÿ›  BUGFIX: vmagent: properly handle 301 redirects. See #869

    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.

    ๐Ÿš€ vmctl releases are available here.

  • v1.45.0-cluster

    November 02, 2020