Quantcast
Channel: Nicholas Blumhardt
Browsing all 102 articles
Browse latest View live

Image may be NSFW.
Clik here to view.

Detecting never-before-seen event types

Perhaps the most useful, but seldom-noticed benefit of a structured log is having the first-class notion of an event type. When analyzing a traditional text-based log, there’s no concrete relationship...

View Article


Using attributes to control destructuring in Serilog

Serilog’s often used to log out objects as structured data. For example: log.Information("Executing {@Command}...", cmd); will attach a structured Command property to the event that can later be...

View Article


Seq update – monthly subscriptions, updated tiers, full-featured single-user...

TL;DR: Seq 1.4 is out, and with it we’re fine tuning the licensing options. Building a software product is a continual exercise in listening, learning and adapting. Since releasing v1.0 of Seq nearly...

View Article

Image may be NSFW.
Clik here to view.

Seq and Serilog around the web – August

Things have been quiet on my blog for the last few months, but certainly lively elsewhere around the web. I thought I’d post a few pointers to what’s new in the worlds of Seq and Serilog. Hey— I’ve...

View Article

Image may be NSFW.
Clik here to view.

Seq 1.5 preview

TL;DR: The next point release of Seq is a bit broader in scope than what we’ve shipped in previous point releases. Storage and caching changes in Seq 1.5 bring some noticeable improvements to...

View Article


How (not) to parameterize Serilog events

Writing an event with Serilog is just like formatting a string: Log.Information("The time is {Time}", DateTime.Now); There’s one subtle and important difference though. The first parameter to...

View Article

Image may be NSFW.
Clik here to view.

Querying collection properties in Seq 1.5

Seq implements a filtering syntax that’s loosely based on C#. The following expression matches the events you’d expect it to, if you’re used to working with C# or a similar language: Tag == "seq" Which...

View Article

Dynamically changing the Serilog level

In the Serilog project we’re frequently asked how to adjust the logging level at runtime, and until recently we haven’t had a great answer. Many larger/distributed apps need to run at a fairly...

View Article


Image may be NSFW.
Clik here to view.

Viewing logs from C# mobile apps

I’ve recently been writing some code for Windows Phone, cross-compiled for iOS and Android using the Xamarin tools. The app does quite a lot of background processing, but during development and testing...

View Article


Image may be NSFW.
Clik here to view.

Uncorking the Seq API

The web interface of Seq connects to the server via a simple API using JSON/HTTP. (I’d call it REST, but it’s not fully IEEE 1337.00 REST-1.1 compliant ;-)) Quite a few customers integrate with the...

View Article

Give your instrumentation some love in 2015!

This is the year for better instrumentation. On premises, applications are more integrated, distributed and asynchronous than ever The move to the cloud is driving architectures with fine-grained...

View Article

Image may be NSFW.
Clik here to view.

Using Serilog with F# Discriminated Unions

This week GitHub user vlaci called us out on awful F# support in Serilog. In their issue report they show how a nice clean discriminated union type like “Option” is represented hideously in structured...

View Article

Image may be NSFW.
Clik here to view.

Tagging log events for effective correlation

Correlation, at least when we’re talking diagnostic logs, is the process of finding events that are related to each other in some way. It’s typical to correlate events raised during a transaction, on a...

View Article


C# 6 string interpolation and Serilog

It’s easy to spot the similarity between Serilog message templates: // Serilog var loggedInUserId = "nblumhardt"; Log.Information("Logged in {UserId}", loggedInUserId); and C# 6 interpolated strings:...

View Article

Image may be NSFW.
Clik here to view.

A Monster Serilog Update for April 2015

Serilog is an open-source logging framework for .NET that seamlessly integrates text-based logging and fully-structured events. You can write events to regular text files, or use Serilog in combination...

View Article


Image may be NSFW.
Clik here to view.

serilog-generator.exe and fun with key-value settings

Some things are just fun to build, and without much concern for its general utility I thought I’d share one of them :-) serilog-generator.exe is a handy little app for exercising Serilog sinks and log...

View Article

Image may be NSFW.
Clik here to view.

Seq/2 Update

When I started building Seq nearly two years ago, I expected it would be used occasionally – after all, chasing bugs in production systems isn’t something we set out to do every day :-) The first time...

View Article


Image may be NSFW.
Clik here to view.

Diagnostic logging in DNX/ASP.NET 5

If you’re writing ASP.NET apps with the latest tooling, you will inevitably encounter the Microsoft.Framework.Logging package. It’s a dependency of ASP.NET MVC, WebForms and much of the related...

View Article

Image may be NSFW.
Clik here to view.

Seq/2 Beta

Last month I posted the first sneak peek of what you can expect from the upcoming Seq “v2″ release. Since then, the final pieces of the UI have been put (back!) into place, bugs have been squashed, and...

View Article

Image may be NSFW.
Clik here to view.

Filtering with Signals in Seq 2

Structured logs are designed for easy filtering and correlation. If you monitor apps in multiple environments for example, you’ll pretty quickly turn to structured properties like Environment as a way...

View Article
Browsing all 102 articles
Browse latest View live