This is the first part of a series showing some of the major new features and improvements of the upcoming SmartInspect 3.0 release. Yep, that’s right; SmartInspect 3.0 is coming very soon now! As with the previous major release, it will contain quite a few new features that are directly based on customer feedback. We are really grateful for all the feature requests, bug reports and ideas for improvements that we received over the years. Without them, SmartInspect wouldn’t be near as good or complete as it is today.
The first improvement I would like to write about is actually not a new feature. It’s more like a set of several enhancements to the existing SmartInspect session concept. Back then in 2003 and 2004 when we first planned which features SmartInspect 1.0 should shave, we quickly agreed that we should provide users with a way to group and categorize related log messages. We have chosen the session concept because it’s a) easy to understand and b) maps very well to existing related concepts such as user sessions in web applications.
In retrospect we are happy that we went with sessions for two reasons. First, sessions turned out to be one the key features of SmartInspect. Although sessions are a somewhat advanced feature that new users often ignore (which they easily can, because they don’t have to care about it when they are learning SmartInspect). But once they are getting used to it and are using SmartInspect in more complex applications, they quickly see the advantages of sessions over other logging concepts.
The second point is a bit more technical. Since the entire library design relies on sessions, it would have been difficult to integrate sessions at a later point without breaking existing customer code. And because you should be very careful to not break existing customer code with a new version of a dev tool, we are glad that we got the basic library design mostly right in the first attempt.
Although we got most of the design right, there were a few missing features. The first new feature in SmartInspect 3.0 regarding sessions is the new log level support. This is probably the most often requested session related feature that we incorporated into the new version. Log level support for sessions means that you are now able to configure log levels on a per-session basis. This allows you, for example, to only log errors and warnings in your application, except for your database module where you want SmartInspect to generate a very detailed log (e.g., for debugging or auditing purposes).

Another improvement in SmartInspect 3.0 is the new ability to configure sessions via SmartInspect configuration files. This allows you to enable, disable or configure specific sessions without recompiling your application. This can come in very handy if you have to dynamically enable or disable logging for certain application modules on production systems or at customer sites.
The last new session enhancement is the support for so-called session defaults. Session defaults let you specify default values for session attributes like the Active status or the background color of log entries in the Console. This is very useful in situations where you are working with many sessions and need a way to change the base settings of all instances.
We will introduce other new features and improvements of SmartInspect 3.0 in the next few days here on our blog.




One Trackback
[...] remember the session configuration support in yesterday’s posting? By combining this with the configuration file monitoring, [...]