What’s new in Prometheus v2.29.0?

by | 15.08.2021 | Changelog

Prometheus v2.29.0 is out with a lot of new features. We can see a lot of enhancements and several bug fixes too. We will look at all of these items in this article. But first, we have to know what Prometheus is?

Prometheus is a Cloud Native Computing Foundation project, and we can define it as a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts when we observe specified conditions.

Let’s start.

Changes

With the release of v2.29.0, the first change we can see is promoting --storage.tsdb.allow-overlapping-blocks flag to stable. Also, we can see the promotion of --storage.tsdb.retention.size flag to stable.

New Features

The new release brings several new features. We can see a new feature like the addition of Kuma service discovery. There is also the addition of another new feature which includes the present_over_time PromQL function. Again, we can see another new feature like configuring exemplar storage via file and making it reloadable. Another unique feature of UI is the allowing of selecting time range with mouse drag. For promtool, we can see new features like the addition of feature flags like the --enable-feature flag and also, there is the addition of file_sd file validation.

Enhancements

The new release brings a lot of new enhancements concerning the previous release. We can see the reduction of the blocking of outgoing remote write requests from series garbage collection. We can also see the improvement of write-ahead-log decoding performance. Also, the new release brings an improvement to append performance in TSDB by reducing mutexes usage. New enhancements allow the configuration of max_samples_per_send for remote write metadata.

There are enhancements like addition to __meta_gce_interface_ipv4_<name> meta label to GCE discovery and addition of __meta_ec2_availability_zone_id meta label to EC2 discovery. Also, we can see the addition of __meta_azure_machine_computer_name meta label to Azure discovery as enhancements. There are additional enhancement of __meta_hetzner_hcloud_labelpresent_<labelname> meta label to Hetzner discovery.

Enhancements for promtool bring compaction efficiency to promtool tsdb analyze reports and allow the configuration of max block duration for backfilling via --max-block-duration flag. For enhancements on the user interface, we can observe the addition of sorting and filtering to the flags page. Again for UI, the new update also improves the alerts page, which will result in rendering performance.

Bug Fixes

With the release of version 2.29.0, we see several bug fixes for Prometheus. Firstly, we can see the logging when the total symbol size exceeds 2^32 bytes, causing compaction to fail and skip compaction. Again, we can see the fixing of incorrect trget_limit reloading of zero value. There is also fixing of head GC and pending readers race condition.

Another essential fix we can see is the fixing of timestamp handling in the OpenMetrics parser. Other fixes such as fixing potential duplicate metrics in /federate endpoint when specifying multiple matchers and fixing server configuration and validation for authentication via client cert came into immediate effect with the new release. The latest version will now allow start and end again as label names in PromQL queries. In the earlier releases, the devs have disallowed them since the introduction of @ timestamp feature.

Conclusion

Throughout the article, we have seen the various changes and enhancements that came through this new release. Also, we have discussed several bug fixes and the introduction of new features of version 2.29.0. I know you guys are also impatient to try out this new Prometheus. For that, you have to download the latest version by clicking here. Read more of our posts here:

Join the Community

The DevOps Awareness Program

Subscribe to the newsletter

Join 100+ cloud native ethusiasts

#wearep3r

Join the community Slack

Discuss all things Kubernetes, DevOps and Cloud Native

More stories from our blog

How to Install Portainer on Remote Server ft. VSCode?

How to Install Portainer on Remote Server ft. VSCode?

Portainer is one of the most popular and trusted GUI for managing Docker, Swarms, ACIs and Kubernetes. The company boasts on its’ website for having 500K users, and there’s no doubt to the number looking at how easy it makes managing the tools. This post goes on the...

What’s new in Python-Tuf v0.18.0?

What’s new in Python-Tuf v0.18.0?

Python-Tuf v0.18.0 recently came, and it is quite a big update with major and minor changes. We will go through all of those changes, additions, fixes and removals in this document. Without further a due, let's start! What is Python-Tuf? The Update Framework (TUF) or...

What’s new in Envoyproxy v1.19.1?

What’s new in Envoyproxy v1.19.1?

Envoyproxy came with its new version a few days ago. Version 1.19.1 comes with very few updates. It provides a few minor behavioural changes and a few bug fixes to make the user experience smoother. In this article, we will cover all of the new changes. Let's start!...

What’s new in Jaeger v1.26.0?

What’s new in Jaeger v1.26.0?

Jaeger v1.26.0 recently came. It has a few changes in its backend. In this article, we will cover all of this in a straightforward way. We will see all of the fixes and the new features that the devs have added. Let's start! What is Jaeger? Jaeger is a graduated CNCF...

Prometheus: As Simple As Possible

Prometheus: As Simple As Possible

Distributed systems help an organisation absorb countless benefits but at the cost of complexity. With the rise of the adoption of container orchestrators like Kubernetes, a need for monitoring and alerting systems came. One such system is Prometheus which is famous...

Bootstrap K3S Data: For Beginners

Bootstrap K3S Data: For Beginners

For Kubernetes users, handling data management tasks and other analysis needs can become difficult with the inclusion of edge based devices. Internet of Things (IoT) as a whole is designed to complement online services for devices commonly used by people such as air...

What’s new in Ingress-Nginx Controller v1.0.0?

What’s new in Ingress-Nginx Controller v1.0.0?

Ingress-Nginx controller for Kubernetes came with its new release almost a month earlier. I know we are pretty late in documenting this but trust me, this update is pretty big. And in this article, we will see all of the new features and essential bug fixes and...

Getting gRPC Right: An Introduction and Review

Getting gRPC Right: An Introduction and Review

The question of APIs and their best implementation through online websites will always remain a tough nut to crack as the web undergoes scaled changes each year. It’s hard to think that the web was once draped by HTML and PHP alone until CSS and Javascript made...

What’s new in TikV v5.0.4?

What’s new in TikV v5.0.4?

TikV came up with its new release this month. It is a small one, but we can see a couple of improvements and some bug fixes along the way. In this article, we will see all of those and view the recent changes. Let's start! What is TikV? TiKV is a graduate project of...

Interested in what we do? Looking for help? Wanna talk about software strategy?