Announcing SmartInspect 3.3

We are happy to announce the release of SmartInspect 3.3, a new version of our logging tool for .NET, Java and Delphi applications. The new version introduces support for .NET 4.0 and Visual Studio 2010 and also comes with various other improvements.

.NET 4.0 and Visual Studio 2010 support

Microsoft released Visual Studio 2010 and .NET 4.0 earlier this week. SmartInspect 3.3 now introduces official support for this new version of .NET. To use SmartInspect in .NET 4.0 projects, just add a reference to our updated .NET 2.0 assembly (this assembly is compatible with all .NET versions from 2.0 onwards). We also updated the SmartInspect setup to integrate with the new Visual Studio release. All SmartInspect .NET sample projects also include Visual Studio 2010 project files now.

Display opened log file names

This enhancement has been requested by various SmartInspect users, so we are happy to finally display the opened log file name(s) in the SmartInspect Console. This feature looks easy to implement from the outside, but is a bit tricky as there can be multiple opened log files at once and there is no single way to ‘close’ a log file. SmartInspect will show the currently opened log file in the window’s title bar. If you open multiple log files, the Console will try to display as many log file names as space permits.

New Log Entry ID column

We added a new separate Log Entry ID column to the SmartInspect Console. This column shows a unique serial ID for each log entry, making it easy to find the same log entry in different views. It also comes in handy if you need to point other SmartInspect users to specific log entries in a log file.

TrackMethod & LogEnumerable (.NET only)

We are also introducing a new way to trace methods with SmartInspect’s .NET logging library. While our Delphi logging library had a similar functionality for some time now, TrackMethod now allows you to trace a method with just a single line of code. We use .NET’s dispose mechanism to automatically call LeaveMethod when a method exists. To use TrackMethod, just wrap it into a using statement like this:

[sourcecode language=”csharp”]
class OrderProcessor
{
public void Process()
{
using (SiAuto.Main.TrackMethod(this, "Process"))
{
SiAuto.Main.LogMessage("Some message");
}
}
}
[/sourcecode]

Using TrackMethod has the same behavior as if you would wrap your methods with try..finally, ensuring that LeaveMethod is called even if an exception is raised.

Additionally, the new LogEnumerable in the SmartInspect .NET logging library makes it easy to log IEnumerable variables.

Getting the new version

Existing customers can download the new SmartInspect release from our customer portal. An updated trial version is available on our website. As usual, you can simply install the new version over your existing installation (there is no need to uninstall the previous version first). For a complete list of changes, please see the online help or our announcement forum.