elmah.io changelog

New

New Bugster models: GPT 5.4, GPT 5.4 mini, and Gemini

We have included three new models for Bugster: GPT 5.4, GPT 5.4 mini, and Gemini 3 Flash. That’s right, you can now run Bugster on Gemini as well. When picking Gemini or one of the OpenAI-hosted models, you still need to provide your own API key. Both GPT-5.4 and GPT-5.4 mini are available as elmah.io-hosted for Enterprise users as well.

While adding the new models, we have deprecated all GPT-4.1* models. If you have one of these models configured, please upgrade to a corresponding v5 model. We will remove all support for 4.1 models on Oct 14, 2026 (or before if everyone has moved).

New Bugster models: GPT 5.4, GPT 5.4 mini, and Gemini

If you are curious about Bugster, check out How to configure and use Bugster.

New

Elmah.Io.Cli 5.3.102 with multiple new commands

We released a new version of the elmah.io CLI. The new version contains a general restructure of commands, as well as a range of new commands like:

elmahio messages list-recent
elmahio messages list-frequent
elmahio logs list

And a few more. Be aware that you may now receive a deprecation warning if you are using root commands like elmahio log since many commands have been migrated to sub-commands. The deprecation warning will highlight which command to use instead, and the documentation is fully updated.

Thanks to jasonnissen for doing most of the work in this PR.

Blogged: Mapping database views in EF Core without breaking migrations

https://blog.elmah.io/mapping-database-views-in-ef-core-without-breaking-migrations/

Mapping database views in EF Core without breaking migrations

Learn how to map database views in EF Core without breaking migrations. Follow this guide to handle manual SQL and read-only entities.

New

Warning on bouncing accountant email

Bouncing accountant emails seem to be somewhat of a problem, so we have introduced a warning in the Send invoices to this email dialog, available on the Invoices tab. This should help receive invoices going forward.

image.png

New

New recommendation for JavaScript API keys with too many permissions

There’s a new recommendation on the organization level, used as a warning when an active JavaScript API key has too many permissions. We recommend enabling only the messages_write permission on API keys used from JavaScript.

New recommendation for JavaScript API keys with too many permissions

Blogged: How .NET handles exceptions internally (and why they're expensive)

https://blog.elmah.io/how-net-handles-exceptions-internally-and-why-theyre-expensive/

How .NET handles exceptions internally (and why they're expensive)

Stop using exceptions for control flow in .NET. Learn why they’re slow, how the CLR handles them, and how OneOf can boost your app’s performance.

Blogged: Designing business rules that don't leak into controllers

https://blog.elmah.io/designing-business-rules-that-dont-leak-into-controllers/

Designing business rules that don't leak into controllers

Stop leaking business logic into ASP.NET Core controllers. Learn to refactor fat controllers into clean, testable Service and Domain layers.

New

Last used on API keys

The API Usage column on the API Keys page now shows when an API key was last used. You can use this to revoke unused keys. We started collecting this information a couple of weeks ago, so Unknown can still mean that a key has been used before that.

Last used on API keys

Improvement

New cookie consent dialog

We have replaced our cookie consent dialog with a more streamlined solution designed to improve transparency and reduce configuration overhead. We’ve clarified the descriptions for all active cookies and condensed the required user choices by eliminating non-essential categories. As part of our ongoing effort to minimize the data footprint on elmah.io, we have successfully reduced our requirements to necessary and preference cookies only, completely removing all tracking scripts. You will see the updated dialog upon your next visit to elmah.io or app.elmah.io.

New cookie consent dialog

New

Elmah.Io.AspNetCore.ExtensionsLogging 5.4.75

We released a new version (5.4.75) of the Elmah.Io.AspNetCore.ExtensionsLogging package. The new version includes the following changes:

The documentation has been updated to reflect the latest changes.

Blogged: When NOT to use the repository pattern in EF Core

https://blog.elmah.io/when-not-to-use-the-repository-pattern-in-ef-core/

When NOT to use the repository pattern in EF Core

Stop using the repository pattern as a default. Learn when EF Core’s DbContext is enough and why abstractions can sometimes overengineer apps.

New

JWT decoder tool

We have been using JWT for authentication in various elmah.io services for years. Having access to a good decoder is essential for debugging claims and signature issues, but we often found ourselves hesitant to paste sensitive tokens into random third-party websites.

That’s why we built our own Online JWT Decoder. It’s designed with a “security-first” approach, where all decoding happens locally in your browser. No data ever reaches our servers.

Available for free here: JWT Decoder.

JWT decoder tool

New

Support for GPT-5.2

Support for GPT-5.2 has been added to the Bugster configuration. Both OpenAI and elmah.io-hosted options for the new model are available. GPT-5.2 is running much faster than earlier 5.x models.

Support for GPT-5.2

New

Recommendation for outdated clients

We have added a new recommendation to help keep your integration up to date. This feature uses package and version metadata automatically included with every log message sent to the elmah.io API via the Elmah.Io.* client libraries.

By analyzing this incoming information, elmah.io can now identify when a log message comes from an older version of a package. If we detect a client version with a known update, a recommendation is generated on the log.

Recommendation for outdated clients

New

Elmah.Io.JavaScript 4.2.2

We released a new version (4.2.2) of the Elmah.Io.JavaScript package. The new version includes the following changes:

March newsletter

We published a new issue of the elmah.io Newsletter: https://mailchi.mp/elmah/why-ienumerable-can-kill-performance-16562625

Newsletter

If you want to receive an email every 2-3 months with all of the recent goodies on elmah.io, make sure to subscribe here: http://eepurl.com/dE1hCn

Blogged: Why IEnumerable Can Kill Performance in Hot Paths

https://blog.elmah.io/why-ienumerable-can-kill-performance-in-hot-paths/

Why IEnumerable Can Kill Performance in Hot Paths

Discover why using IEnumerable in C# hot paths can slow performance by 7x. Learn how List and Span optimize memory and speed for high throughput.

Blogged: Polymorphic Relationships in EF Core: Three Approaches

https://blog.elmah.io/polymorphic-relationships-in-ef-core-three-approaches/

Polymorphic Relationships in EF Core: Three Approaches

Master polymorphic relationships in EF Core. Explore TPH, TPT, and TPC inheritance patterns with code examples to optimize your database design.

New

Two new organization recommendations

We released Organization recommendations yesterday, and today we are launching the first two new recommendation types:

Two new organization recommendations

New

Organization recommendations

Recommendations now cover your elmah.io organization. Access the new Recommendations tab by clicking the Overview icon next to the organization name on either the dashboard or the left menu.

This new view focuses on organization-wide insights rather than individual logs. This will include recommendations regarding the general state of your organization, security or configuration issues, and aggregated data analysis across multiple logs. We will continue to expand these insights to identify trends and potential problems that span your entire account.

While the list is currently empty, we are deploying the first two organization recommendation types within the next 24 hours. To stay updated, click the Subscribe button in the top-right corner of the view to receive email notifications when new organization-level recommendations are generated.

Organization recommendations