Disabling Recording of an Activity (span) in .NET OpenTelemetry Instrumentation
I’ve recently been building some hobby code to dogfood the various observability tooling we develop at Elastic. Additionally, I’ve been interested in identifying the pain points of using our products...
View ArticleReceiving GitHub Webhooks When Using the ASP.NET Core Developer Certificate
SERIES: A Guide to Developing GitHub Apps on .NET For the last couple of weeks, I have been experimenting with creating a GitHub App using .NET. I’ve been pursuing this because I have an idea for an...
View ArticleAn Efficient Dictionary for IPAddress Tracking using .NET 9 with...
In this post, I will introduce and demonstrate enhancements to collections in .NET 9 and C# 13 for low-allocation code paths. Specifically, I will demonstrate using a custom IAlternateEqualityComparer...
View ArticleImplementing ASP.NET Core Automatic Span (Activity) Linking for Internal...
Today, I’ll continue a current theme for my content based on my experiences implementing OpenTelemetry instrumentation in practice for .NET applications. In this post, I want to focus on a minor...
View ArticleA Brief Introduction to the .NET Muxer (aka dotnet.exe)
This post marks the start of what I expect will be a long-term effort to explore the inner workings of .NET, expose the “magic” behind the scenes, and explain the mechanisms and underlying components...
View ArticleHow dotnet.exe resolves and loads the hostfxr library – Exploring the .NET muxer
In this post, we will continue our journey into the functionality and implementation of dotnet.exe, specifically focusing on how the hostfxr library is resolved and loaded. This post follows part one...
View ArticleEncrypting Properties with System.Text.Json and a TypeInfoResolver Modifier...
In this multi-part blog series, we’ll build a reasonably full-featured code base for automatically encrypting/decrypting specific properties on types that are being serialised and deserialised using...
View ArticleTalk: Application Performance Optimisation in Practice (60 mins)
Abstract Application performance always matters. Sometimes critically, sometimes subtly, but it’s never irrelevant. While many developers rightly caution that “premature optimisation is the root of...
View ArticleThe Grand Mystery of the Missing 18 Bytes
In this brief blog post, I will share the tale of the mystery surrounding the missing 18 bytes. While preparing a new conference session on practical application performance optimisation, I reviewed...
View ArticleEncrypting Properties with System.Text.Json and a TypeInfoResolver Modifier...
In the previous post, we discussed the foundations for automatic data encryption of properties during serialisation using System.Text.Json. In this post, we’ll continue our journey, moving toward...
View Article