v1.8.0
We're excited to announce the release of Buggregator Server version 1.8.0! Although most of the updates are on the server side, there are also some improvements on the frontend and foundations for new features that will be added to the UI soon.
Let's take a look at what's new in this version.
Server
1. Event Preview Structure Refactoring
First up, we've optimized the list of events displayed on the main page. Previously, the structure contained the entire payload for each event. For example, for a Sentry preview, we only showed the error text and a few files in the stack trace, but the payload had a lot of unnecessary information, sometimes up to !!!1MB!!!. This issue affected not just Sentry but also SMTP, var-dumper, Inspector, and xhprof. If there were many events, the browser would become sluggish and consume a lot of memory. In this release, we've split events into previews (received via WebSocket and displayed in the list) and full views, which contain the entire payload displayed on a specific event's page. This significantly improves the performance of the event list display and reduces memory usage.
In future releases, we will add the ability to open each event on a separate page.
Specifically for var-dumper, which generates an HTML dump of the variable, the more data and nested objects a variable has, the larger the payload. In some cases, one event could take up to !!!1MB!!! in memory. We've added an option to limit the depth of nested data rendering in previews to three levels, which can be adjusted through server settings.
For more details, see our documentation
2. New Webhooks Module
Our new webhooks module allows sending events to remote services when an event is received by the server. For example, when an error occurs in an application and a Sentry event is sent to the Buggregator server, the server can notify an issue tracker or a development team's Slack channel about the issue.
Read more about webhooks in our documentation
3. New Projects Module
This module allows you to separate events by project within a single server. This is useful when developing multiple applications and you want to segregate events for each one. Each application can have its own project, and different teams can view events specific to their projects.
The Projects module is still in development on the UI side, but we are excited about its potential.
4. Added Support for SSO Provider Kinde
We previously added support for the SSO provider Auth0. Now, we've introduced support for Kinde.
Learn more about SSO in our documentation: https://docs.buggregator.dev/config/sso.html
5. Support for External Databases
This release brings two significant changes in database support:
Firstly, we have discontinued support for MongoDB, as it was hindering the project's development and the integration of more complex database structures.
Secondly, we were using a KV store as our internal database, which was also limiting development. We needed a lightweight alternative that didn't require complex installation inside a Docker container and ideally came as a binary file. We've found such a database in doltdb, which is 99% MySQL compatible and comes as a binary file, making it ideal for use in Docker images.
Buggregator now fully supports Postgres and MySQL.
Read more about external databases in our documentation
6. Metrics Module
Buggregator has introduced a new metrics feature that tracks how many events we receive. You can use tools like Prometheus and Grafana to monitor event trends, identify issues, and set up alerts.
More about working with metrics can be found in our documentation
7. SMTP Module Refactoring
We've refactored the SMTP module in this release, adding support for authentication (which will be used to send events to specific projects) and covering the module with tests using a real SMTP client, ensuring stable and reliable operation.
8. Added Support for secrets
You can now enhance your security by setting up a secret key with Sentry and Inspector to prevent unauthorized event submissions.
Learn more in our documentation:
9. Var Dumper Code Highlighting
We've also added an option to enable syntax highlighting for text-only variable dumps. This allows you to view events in Buggregator with highlighted syntax.
Read more in our documentation: https://docs.buggregator.dev/config/var-dumper.html#syntax-highlighting
UI Improvements
In the UI, our main focus has been on restructuring the project. We are close to completing this phase, and once it's done, we'll be able to roll out new features more frequently.
PRs
- Reduce size of var-dumper dump payload. by @butschster in #145
- feat: add ability to set IDE url template by @butschster in #146
- Adds webhook module by @butschster in #144
- Adds projects support by @butschster in #150
- Prometheus metrics support by @butschster in #157
- Adds an ability to send var-dumper dumps with specifying language for code highlighting. by @butschster in #165
- Fixes the problem with dumping int and bool values using ray package by @butschster in #166
- Adds Kinde auth support by @butschster in #167
- Integrate Dolt for Enhanced a MySQL-compatible database in Buggregator by @butschster in #168
- Fixes SMTP auth and improves unit tests for SMTP using real SMTP client by @butschster in #170
- Refactored SMTP Attachments: Introduced a dedicated table and HTTP endpoint by @butschster in #172
- Webhooks refactoring by @butschster in #174
- Adds attachments for HTTP dumps by @butschster in #176
- Fix issue with database connection during application startup by @butschster in #177
New Contributors
- @markinigor made their first contribution in #162
Full Changelog: 1.7.4...1.8.0