Loupe for the Web: Log Details Drill Down

Sometimes when you are triaging bugs, finding the solution is simple and other times it’s complex, luckily Loupe has both scenarios covered, and everything in between as well!

On a good day, looking at the event will give you a clear idea of what the error is and you can go ahead and create an issue and have a developer fix it…

Loupe - New Session Events

Other days the debugging God’s are not on your side. When that happens it’s not immediately obvious what the problem is from the exception. Here we can see that a “Network Exception” was thrown, but we have no real clue as to what caused it:

Non helpful session event

On those occasions, drilling into the exception and clicking on “Other Session Events” will show you what happened in the same session as your exception, and that can provide you with the solution you seek:

Other session events

In this case we can see that the “Network Exception” was probably caused by an over-worked Active Directory server called AD1. Knowing this we can pass it on to our DevOps guys to have a look at.

If we’ve really upset the debugging Gods, they may decide to smite us completely. When that happens, not only do we get no helpful information from the exception:

New session event

But drilling down into the “Other Session Events” doesn’t help us much either!

Packager warning

Here we can see that there is a warning about a packager version mismatch, but no clue as to how that relates to our NullReferenceException! In these circumstances, it’s time to pull out the big guns! By drilling into the event on the “Recent Events” page, we can then click on the “Open Session” button:

Open Sesson

This will open the full log in Desktop Loupe:

Log messages in Desktop Loupe

From here we can see sever log entries regarding instances being unpacked from some kind of file, for many of them this process was successfully completed and they have no bearing on our exception. However, one of them (highlighted) was packaged using an obsolete version of the packager. This resulted in a packager warning being generated, the errant object not being instantiated and, thus, a NullReferenceException being thrown.

Drilling into that log message in Desktop Loupe, we can even see which line of what file the problem occurred, leading to a speedy fix for this troublesome exception.

Log message drill in

This post has shown you the power behind the fine grained logging offered by Loupe and how it can be used to hunt down even the most tricky of exceptions.

That’s all for this post, ‘til next time, happy coding! Smile

Rock solid centralized logging

Unlimited applications, unlimited errors, scalable from solo startup to enterprise.