elmah.io changelog

New

Broken Links Checker for Azure DevOps

We have open-sourced and published our Broken Links Checker for Azure DevOps. With this extension, you can automatically scan your code for links during a build and have Azure DevOps test all of those links. Get it on the Azure DevOps Marketplace here: https://marketplace.visualstudio.com/items?itemName=elmahio.broken-links-checker.

Here’s a quick example of YAML for running the checker:

steps:
- task: BrokenLinksChecker@0
  inputs:
    includeGlobs: |
      **/*.html
      **/*.cshtml
    excludeFileGlobs: |
      **/node_modules/**
    ignoreUrlPatterns: |
      example.com/*
    failOnBroken: true
    concurrency: 16
    timeoutMs: 10000
    allowedStatus: 200-299,301,302

Blogged: How .NET Garbage Collector works (and when you should care)

https://blog.elmah.io/how-net-garbage-collector-works-and-when-you-should-care/

How .NET Garbage Collector works (and when you should care)

Learn how the .NET Garbage Collector works, manages memory automatically, and how to optimize your app's performance with GC best practices.

Improvement

Improved 2FA implementation

We’ve updated the two-factor authentication (2FA) implementation on elmah.io to improve both security and usability. The new version includes:

To take advantage of the new implementation, we recommend disabling and then re-enabling 2FA on your account. When doing so, create a new account entry in your authenticator app, as previously stored entries will no longer work.

New

Warning on users in an organization not marked as private

We now show a warning on the Profile page when your user is part of an organization but not marked as private. We recommend that everyone mark their user as private once it has been added to an organization. Users not marked as private will appear in the search results when adding users to an organization.

Warning on users in an organization not marked as private

Blogged: Hidden Costs of Boxing in C#: How to Detect and Avoid Them

https://blog.elmah.io/hidden-costs-of-boxing-in-c-how-to-detect-and-avoid-them/

Hidden Costs of Boxing in C#: How to Detect and Avoid Them

Learn how boxing and unboxing in C# impact performance through hidden heap allocations. See benchmarks and best practices to avoid overhead.

New

Serilog.Sinks.ElmahIo 5.3.54

We released a new version (5.3.54) of the Serilog.Sinks.ElmahIo package. The new version includes the following changes:

New

Elmah.Io.Umbraco 5.3.43

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

New

Elmah.Io.NLog 5.4.63

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

New

Elmah.Io.Log4Net 5.3.44

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

New

Elmah.Io.Heartbeats.Hangfire 5.3.35

We released a new version (5.3.35) of the Elmah.Io.Heartbeats.Hangfire package. The new version includes the following changes:

New

Elmah.Io.Functions.Isolated 5.3.32

We released a new version (5.3.32) of the Elmah.Io.Functions.Isolated package. The new version includes the following changes:

New

Elmah.Io.Functions 5.4.45

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

New

Elmah.Io.Extensions.Logging 5.3.67

We released a new version (5.3.67) of the Elmah.Io.Extensions.Logging package. The new version includes the following changes:

New

Elmah.Io.Client.Extensions.SourceCode 5.3.52

We released a new version (5.3.52) of the Elmah.Io.Client.Extensions.SourceCode package. The new version includes the following changes:

New

Elmah.Io.Client.Extensions.Correlation 5.3.18

We released a new version (5.3.18) of the Elmah.Io.Client.Extensions.Correlation package. The new version includes the following changes:

New

Elmah.Io.Client 5.3.131

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

Unless security issues are identified, this will be the last version of Elmah.Io.Client v5. The upcoming v6 will contain several improvements and run on a new major version of the elmah.io API.

New

Elmah.Io.AspNetCore 5.3.88

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

New

Elmah.Io 5.3.60

We released a new version (5.3.60) of the Elmah.Io, Elmah.Io.AspNet, Elmah.Io.Mvc, and Elmah.Io.WebApi packages. The new version includes the following changes:

New

New Hide these messages bulk action

A new bulk action is now available that hides all messages in a search result. While adding this, we also renamed the existing actions to make it clearer that actions are done on the current search result.

iNew Hide these messages bulk action

Blogged: Expression Trees in C#: Building Dynamic LINQ Queries at Runtime

https://blog.elmah.io/expression-trees-in-c-building-dynamic-linq-queries-at-runtime/

Expression Trees in C#: Building Dynamic LINQ Queries at Runtime

Learn how to use C# expression trees to build dynamic LINQ queries at runtime with practical examples, use cases, and performance tips.