-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add blog post about the release v0.50.0
Signed-off-by: Augustin Husson <husson.augustin@gmail.com>
- Loading branch information
Showing
5 changed files
with
67 additions
and
0 deletions.
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
--- | ||
date: 2025-01-15 | ||
categories: | ||
- release | ||
--- | ||
|
||
# Release v0.50.0 | ||
|
||
## Migration | ||
|
||
One of the greatest content of this release is the migration that has been drastically improved. | ||
|
||
Since the beginning of the project, we have been willing to provide an easy way to migrate dashboards from Grafana to | ||
Perses. As a reminder you can migrate a Grafana dashboard using the HTTP endpoint `/api/migrate` or the UI or the CLI | ||
that consumes this endpoint. | ||
|
||
The big issue with this feature was the memory leak that was hidden and not that easy to trigger. | ||
(See [issue #2039](https://github.com/perses/perses/issues/2039)) | ||
|
||
This was a big blocker for the migration and one of the main reasons why Amadeus was not able to migrate to Perses. | ||
Amadeus has a huge amount of dashboards, and the memory leak was too important to be ignored. | ||
To give you an idea, the memory leak was about **40GB** after migrating **3000 dashboards**. (~ 3MB per dashboard) | ||
|
||
As you may know, we are using Cuelang for the Perses plugin validation, and at first we implemented a complete way to | ||
migrate using Cuelang only. | ||
The idea behind was to append every migration script (one for each panel, variable, queries) to the main one. | ||
Then the Grafana JSON was converted to a Cuelang value, and we were applying the migration script to this value. | ||
|
||
With the v0.50.0, we are changing deeply and only internally the way it's working. It doesn't change anything for the | ||
user, but it's a huge improvement for the maintainability and the performance of the migration. | ||
|
||
We have entirely rewritten the migration process. It is now using a hybrid system partially written in Golang and the | ||
rest in Cuelang when the plugins are involved. Thanks to this new system, the Cuelang files written to migrate the | ||
panels, the variables and the queries can be validated and tested before the migration is applied. | ||
|
||
Thanks to this change, we are happy to announce the memory leak has been fixed and the migration is now working | ||
perfectly. We perform some benchmarks through the Amadeus infrastructure, now we are able to migrate their 3000 | ||
dashboards **without exceeding 1.5GB of memory** | ||
|
||
// TODO add a screenshot showing the memory consumption | ||
|
||
Finally, we’ve also addressed numerous updates to the migration process itself, incorporating fixes and enhancements to | ||
better cover use cases raised by the community - thank you for your contributions! | ||
|
||
## Status History panel | ||
|
||
Thanks to [Alexander Belyakin](https://github.com/abelyakin) from the community, Perses is supporting a new Panel: the | ||
Status History Panel. | ||
|
||
The Status History panel provides a visual representation of the status of various metrics over time. | ||
It allows users to track changes in the status of different metrics, making it easier to identify patterns, trends, and | ||
anomalies. | ||
This panel is particularly useful for monitoring the health and performance of systems, as it can display status changes | ||
in a clear and concise manner. | ||
The panel can be customized to show different statuses, such as up, down, warning, or any other user-defined states, and | ||
it supports various visualization options to enhance the readability of the data. | ||
|
||
And of course, this panel is fully compatible with the migration process. | ||
|
||
 | ||
|
||
## Table Panel improvements | ||
|
||
 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters