S h o r t S t o r i e s

// Tales from software development

Logging: The good and the bad.

leave a comment »

The application I’ve been working on for the past few months is now undergoing integration testing at the client’s site. It’s an interface between a strategic data store that we’ll call CLIDAS and our application, Vitality.

There’s some fairly complex processing in the interface and it was obvious from the start of the project that it would have to have comprehensive and detailed logging in order to confirm that it was doing what it should and to understand why it wasn’t if that was the case.

In testing the interface has proved to be robust and reliable. Unfortunately, it’s highlighted a whole load of problems in the CLIDAS system which frequently throws exceptions when the interface is requesting data.

The interface’s log files clearly show what it was doing, what the call to CLIDAS was, the arguments used, the execption that was thrown by CLIDAS, the  exception stack trace, and, of course, the exact date and time the error occurred.

Last week we noticed a problem where a particular call to CLIDAS always resulted in it throwing an exception. So, we emailed the client with all the details: date and time, type of exception, exception message, what the interface was doing at the time, what the call to CLIDAS was, and the arguments used.

The CLIDAS system is maintained and developed by a third party company under a multi-million pound contract. I guess how much money you throw at development doesn’t always mean a good implementation because the guys from the third-party emailed the client back with this:

“We can’t see any problem. Can the guys at Vitality tell us any more about the CLIDAS error ?”

Great! So, the CLIDAS system apparently isn’t logging errors and having given these guys every possible piece of information about the exception from a caller’s perspective, they’re still asking for more. There’s a hint of desperation in their email that implies that what they’re really asking is, can we tell them what’s gone wrong with their application ?!

Logging is a perfect example of how a little bit of time and effort during development pays for itself many times over downstream.

Advertisements

Written by Sea Monkey

December 22, 2009 at 8:00 am

Posted in Development

Tagged with

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: