Quantcast
Channel: Nicholas Blumhardt
Browsing index pages (112 articles)
↧

Image may be NSFW.
Clik here to view.

Trace sampling in SerilogTracing

Sampling in SerilogTracing is taking shape. If you haven’t heard of SerilogTracing, that’s not surprising - it’s a brand new project launched in January 2024. But, we’ve reached 250k downloads of the...

View Article


.NET's ActivityListener sampling API

Distributed tracing can generate a lot of data, and sampling is the most established method to keep data volumes manageable. In .NET, the System.Diagnostics.ActivityListener class exposes two...

View Article


Visualizing the Serilog 4.1 batch retry algorithm

This is a quick post exploring how Serilog 4.1 (currently in preview) schedules retries when logging fails.Logs tucked away in a file on a remote server aren’t very useful, so sending log events across...

View Article

Serilog fallback sinks

Currently in preview, Serilog 4.1 adds support for falling back to a second sink when the first sink fails. This scenario shows up in a few variations, usually revolving around a network-based log...

View Article

Image may be NSFW.
Clik here to view.

Serilog and .NET 8.0 minimal APIs

ASP.NET Core keeps evolving, and it’s been a while since I wrote one of these, so read on below for my take on an optimal Serilog configuration for ASP.NET Core 8 and the “minimal API” application...

View Article


Image may be NSFW.
Clik here to view.

From SerilogTimings to SerilogTracing

SerilogTimings is a handy little library that wraps blocks of code in...

View Article

The case for an application-level tracing API in .NET

If you want to record a log event from your application in .NET, you can do that today without a lot of noise or ceremony using Microsoft.Extensions.Logging:_log.LogInformation("Completing order...

View Article

Image may be NSFW.
Clik here to view.

SerilogTracing

TL:DR: Check out SerilogTracing, a simple, minimal extension for Serilog that integrates with System.Diagnostics.Activity to provide hierarchical, distributed traces and compatibility with the Serilog...

View Article


Serilog project update, May 2023

👋 Howdy! I hope you’re enjoying the, frankly, pretty fantastic state of structured logging in .NET these days. If you’re using Serilog then I hope you’ve also been enjoying the long period of stability...

View Article


Hot-reload any Serilog sink

Hi! 👋Chances are you’ve found your way here because Serilog.Settings.Configuration’s runtime reconfiguration logic only supports minimum levels, and not any other sink parameters. This stems from a...

View Article

Serilog 2.0 adventures with sub-loggers

The WriteTo.Logger() method pipes events from one Serilog logger into another. While this has been around since Serilog 1.3, some rough edges made it harder to configure correctly than it should have...

View Article

Serilog 2.0 short level names

Serilog renders plain text logs in a simple format with each event’s timestamp, level and message:2016-07-18 08:53:53.691 +10:00 [Information] Starting up at 07/18/2016 08:53:53 2016-07-18 08:54:23.716...

View Article

Event types – structured logging concepts in .NET (4)

Structured logging is awesome, but the top reason for me is easily overlooked:There are orders of magnitude more events in a log than there are logging statements that generated them.Have you ever...

View Article


Serilog 2.0 JSON improvements

Serilog 2.0 is out! There’s an Upgrade Guide and Release Notes already posted on the Serilog site, and a good number of first- and third-party packages have already been updated to work with the new...

View Article

Image may be NSFW.
Clik here to view.

Message templates and properties – structured logging concepts in .NET (3)

This post is the third in a series; start here.Trojan eventingA long time ago I encountered a library called Bamboo.Prevalence, by the amazing Rodrigo “Bamboo” de Oliveira. Following Java’s Prevayler,...

View Article


Image may be NSFW.
Clik here to view.

Events and levels - structured logging concepts in .NET (2)

Introductions are tough, I’m glad that’s out of the way. This post is going to dig straight into events and levels. If concepts like events, timestamps and logging levels are old news for you, this...

View Article

Structured logging concepts in .NET Series (1)

Between now and the Serilog 2.0 release that’s due sometime in July, I’ve decided to go back to basics and write some posts on the fundamentals of modern structured logging in .NET.In the complex,...

View Article


Serilog 2.0 Release Plans

.NET Core and ASP.NET Core are expected to release-to-web by the end of June 2016. There have been a few related announcments recently, surrounding the split of the runtime release (end of June) from...

View Article

Image may be NSFW.
Clik here to view.

Which logging abstraction should I use?

If you’re writing .NET apps or libraries for your own use, well, you can choose and use whatever logging facility you like.If you want to write packages for others to consume, your best bet is to avoid...

View Article

Image may be NSFW.
Clik here to view.

Serilog Timings

TL;DR: I’ve just kicked off development of Serilog Timings, a tiny package that adds streamlined operation timings on top of Serilog.Though there are a million ways to collect timing data from...

View Article
Browsing index pages (112 articles)


Latest Images