Review: Gurock SmartInspect

About a year ago, I was blogging at CodeBetter and I was given a product in hopes that I would review it. In fact I had won a copy of this product in the past. I promised and promised that I would take a look at it, but I never got around to it.

Mainly because I didn’t have a use (or thought I didn’t have a use) for a logging product at the time. Logging isn’t really all that "sexy" and I was trying to dive deep into all kinds of things.

Well, with my day job we ran into a some problems that after I analyzed the errors I realized that I was missing an important piece of the puzzle... So I started thinking about what I might need. Enter that product that I hadn’t had a chance to review...

Logging isn’t "sexy" or is it?

It’s only "sexy" when you NEED it. And when you need it you need something good. SmartInspect is really, really cool, and IMO after finally taking a day with it, I can say it’s also "sexy." It really brings your logging to life.

I’m an ASP.NET guy, so what I need is to be able to track a user through a site and see there path up to the error. SmartInspect allows you to create "sessions" of logs that follow a user via their session. You can also use a default session (if you are using something more single-processed/threaded).

You can colorize different things in the log and can even see the properties of an object that you throw into the log (you simply tell it to log the full object passing just the variable).

The best part for me was it was pretty simple. I did a fairly advanced thing with it in relatively short order (Sessions, logging our SQL calls), and it really wasn’t that much work. The code that you have to inject into your app (yes, you have to inject code into your app) is pretty trivial.

Remote Logging viewing

What I really liked was that the SmartInspect log console feels like VS and is a TCP/IP server which means that you can point an app at a machine to log via TCP/IP. The version that I was given even included source for the logging library (and I think everything else). Yes, you can log to a file and other more traditional log destinations... but the TCP/IP server is so "sexy."

Sold

Anyway, my workplace will be purchasing a copy of it... and it’s a tool you’ll probably need at some point. Here’s the web site (go check it out for yourself) - http://www.gurock.com/products/smartinspect/

BTW, it’s for Delphi, and Java, too.

Print | posted on Tuesday, August 12, 2008 10:10 AM

Feedback

# re: Review: Gurock SmartInspect

left by David R. Longnecker at 8/12/2008 2:04 PM Gravatar
>>The code that you have to inject into your app (yes, you have to inject code into your app) is pretty trivial.

Looks sweet. Currently I log exceptions and a few things to specialized EventViewer logs; however, that console would be ideal during heavy traffic times for our internal apps. The idea of being able to lookup a session based on AD user name or something is slick.

Question: did you hit any (measurable) performance anxiety with the counters? e.g. Is this something to run in test/dev but maybe not in production?

Thanks^^;

-dl

# re: Review: Gurock SmartInspect

left by Jay Kimble at 8/12/2008 2:09 PM Gravatar
Honestly, that is the question we are having right now... it doesn't appear to be too big of a performance hit (and you can very easily turn it on and off and can even target specific sessions if you want...

so turn the logging on for users named "fred" or whose name ends in "_test" and leave it off for everyone else...

# re: Review: Gurock SmartInspect

left by David R. Longnecker at 8/12/2008 4:03 PM Gravatar
>>so turn the logging on for users named "fred" or whose name ends in "_test" and leave it off for everyone else...

Yeah, I considered that... but changing "fred" would require changing code. I suppose one could have a data source outside the application (SQL, XML, heck, even a CSV) of user names and check to see if name is in the table ? log : skip. Bit of overhead there, but if it was well cached, maybe not so much.

As with most tools, that fine line between logging too much and too little is always fun to find.

Hmm. Something new to dink with--thanks for the review. :)
Title  
Name
Email (never displayed)
Url
Comments   
Please add 4 and 8 and type the answer here: