Subscribe to
Ruby Magic
Magicians never share their secrets. But we do. Sign up for our Ruby Magic email series and receive deep insights about garbage collection, memory allocation, concurrency and much more.
We just released AppSignal for Ruby gem version 2.2 which adds support for custom namespaces, Ruby 2.4 and contains a lot of other improvements.
In this gem release we’ve added support for custom namespaces. Namespaces are a way to group error incidents, performance incidents, and host metrics in your app.
By default AppSignal has always supported the “web” and “background” namespaces for HTTP requests and backgrounds jobs. Now we will support a lot more of them with custom namespaces.
The advantage of custom namespaces is the ability to group together errors and performance incidents from separate parts of the same application. Think of an administration panel, public homepage versus private back-end, etc.
It’s also possible to configure your app’s notification settings per namespace in “App settings” under the “Notifications” tab. When we detect new namespace it will be listed with its own notification settings.
The internals of the Ruby Integer
and Fixnum
class were updated in Ruby 2.4; the Fixnum
and Bignum
classes were deprecated. To avoid outputting all kinds of deprecation warnings we’ve updated the way we use the unified Integer
type in our Ruby gem.
To combat a known DNS libmusl issue introduced in gem version 2.1 we’ve previously hardcoded public DNS servers in our Rust agent. This has now been reverted as it caused some other issues for users. If you’re running into connection timeouts after upgrading please see our documentation about this issue.
Our Padrino integration got a small update about how the action names are built. The gem will now use the new Padrino API calls to get action names.
Note that this change will report errors and performance incidents under new, more descriptive, action names as new incidents for more recent Padrino apps.
Thanks Liam Noone for pointing this out to us!
Some of our front-end beta users ran into issues when the payload sent to the endpoint wasn’t valid JSON or when sending data to it when the feature wasn’t enabled.
We now handle invalid JSON better and return a 400 response while enabling the endpoint but ignoring the request when the feature isn’t enabled.
Thanks Boris Kuznetsov for bringing this to our attention!
We’ve recently improved the documentation of our Ruby gem on the code level. In this release the instrumentation helpers have been documented in greater detail.
We’ll continue to improve the documentation of our instrumentation helpers in the Ruby gem itself and in our documentation.
Please see the changelog for more details about these improvements, deprecations and more. And as always: get in touch if you encounter problems after upgrading. We’re happy to help!