Release v0.54.0

Welcome in the v0.54.0 release !

First of all this release includes several security fixes that patches some breach in the permission system included in Perses, so we strongly recommend to upgrade to this version as soon as possible.

Then, you will be happy to know that this release includes new plugins: Jaeger, GreptimeDB, Splunk, LogExplorer, AlertManager and OpenSearch.

As adding more plugins is increasing the size of the container image, likely we will remove some of them in future release. It does not mean we will remove the support for these plugins, it is just we won't include them into the default image. You will have to add them manually. The drop will occur once we are able to provide a good way to add plugins to an existing installation without having to rebuild the image. In the meantime, if you don't want to use these plugins, you can choose to enable or disable them by configuration.

We are also happy to announce it includes the long awaited sub-folder system to better organize your dashboards and improve the accessibility by adding keyboard shortcuts.

This release is also the last release for the package @perses-dev/core that is now deprecated. For that we are introducing two new packages @perses-dev/spec and @perses-dev/client.

  • @perses-dev/spec contains the dashboard and datasource specifications.
  • @perses-dev/client contains the client to interact with the Perses API.

The code from @perses-dev/core has been dispatched in these these two packages and in others (like @perses-dev/plugin-system and @perses-dev/components) to better separate the concerns and make it easier to maintain.

Finally, thank you to all the contributors who made this release possible, you are more and more, and we are really happy to see the community growing and contributing to make Perses better and better!

As usual, this blog post does not cover all the changes and improvements included in this release. We are only talking about the changes that should interest you the most. If you want to have a complete list of all the changes, please refer to the changelog

Release v0.53.0

Welcome to Perses v0.53.0! In this release, on top of many improvements and bug fixes, we have introduced several changes that break the compatibility with previous versions.

These changes have been thinking carefully to improve the overall user experience and maintainability of Perses. We hope even if it will make the upgrade process a bit more complex, you will stay with us and enjoy the benefits of these improvements.

While you can read this blog post to have details about the changes and how to upgrade, we are also providing a migration guide that is more condensed and focused on the steps required to upgrade from previous versions to v0.53.0.

On a different topic, we are happy to being able to list Logz.io as a new officially company using Perses in production. Welcome to the Perses community!

If you are a company using Perses or contributing to it and want to be listed as an adopter, please follow the guideline. It is always great to see more and more companies trusting Perses for their monitoring needs. And it will help us to grow the community and make Perses even better.

As usual, this blog post does not cover all the changes and improvements included in this release. We are only talking about the changes that should interest you the most. If you want to have a complete list of all the changes, please refer to the changelog

Release v0.52.0

The release of Perses v0.52.0 introduces significant new features and improvements.

This update expands Perses' observability capabilities by introducing support for logging and continuous profiling, along with new plugins for Pyroscope, Flame Chart, Loki, and log visualization.

Additional enhancements include a heatmap panel for Prometheus histograms, a quick query viewer, panel group variable repeat, usability improvements, and upgraded CLI commands to streamline plugin development and schema testing.

Introducing the Perses MCP Server

We're thrilled to introduce the Perses MCP Server, now available in public beta. This new tool empowers you to interact with your Perses instances using natural language, opening up a world of possibilities for monitoring and visualization.

With the Perses MCP Server, users can use AI Agents to understand, query and interact with Perses APIs in a standardized and secure manner.

Imagine being able to prompt your favorite AI Agent with questions like:

  • "How many dashboards are created in the last 5 days in project 'Test Project'?"
  • "What is the default datasource for project 'Test Project'?"
    • "Is this datasource in proxy mode? and what is the URL?"
  • "Analyze this dashboard 'Dashboard A' in project 'Test Project'"
    • Suggest me some improvements to panels and PromQL queries in this dashboard

As you can see, the possibilities are endless. The Perses MCP Server allows you to interact with Perses in ways that were previously not possible.

Composable Dashboards - Lessons from building Perses Community Dashboards

Why we keep rewriting the same dashboards

Every CNCF User/Developer/Contributor has, at some point, to endure the frustration of trying to salvage an outdated dashboard, or adapting upstream YAML, only to get to the point of wondering why it doesn't work on their setup. This leads to a recurring pattern: everyone ends up rebuilding the same dashboards, over and over again, each slightly different.

The Mixins Dashboards helped bring about a sense of relief, as users now could use dashboards and alerts packaged together with the code they are deployed with. In theory, this promised consistency and easier integration. In practical terms, as the concept of mixins relies on Jsonnet, and even though it’s a suitable language for configuration management, it leads to a few issues:

  • Jsonnet has a steep learning curve. It’s not a conventional Turing-complete programming language, and often makes it hard for downstream users of mixins to be able to do any sort of customization on their dashboards;

  • Mixin Jsonnet is completely detached from the actual application code. It was introduced as a way to maintain dashboarding config for code that you are deploying side by side, to ensure it never goes out of sync. However, many mixins are rarely updated, even when the code is - sometimes these are maintained out of the tree. And Jsonnet cannot use Go structs, so there is no automatic validation during code changes. Thus keeping mixins accurate and reliable demands a lot of effort.;

  • Adoption has also been uneven. A good example of this is kube-prometheus stack, built with Jsonnet, where many users bypass it entirely and only fetch the rendered YAML from that repository, then doing any sort of changes with tools like Kustomize instead. This undermines the original goal of reuse and standardization.

The end result is, that despite the promise of reusable dashboards, the reality is there’s still not a widely used solution for automatic dashboards creation.

Release v0.51.0

We are excited to announce the release of Perses v0.51.0!

This release brings several new features, improvements, and bug fixes to enhance your experience with Perses.

It is a significant step forward in the evolution of Perses, and we are thrilled to share it with you. We have been working hard to bring you a more powerful and flexible platform for your observability needs.

This release includes a new plugin architecture, new panel, new variable, a new repository perses/plugins containing all default plugins supported by Perses.

We have also made significant improvements to the documentation, highlighting features that were implemented some time ago but not well advertised, such as datasource discovery and ephemeral dashboards.

Release v0.50.0

We are excited to announce the release of Perses v0.50.0! This release brings significant improvements to the migration process from Grafana to Perses, including a major fix for a memory leak issue. Additionally, it introduces a new Status History Panel and various enhancements to the Table Panel, UI, and CLI. Read on to learn more about the new features and improvements in this release.

See the complete release note for more details: v0.50.0