At work i’m currently working on generating reports from logfiles by a third-party application. This application has it’s fair share of flaws and minor issues, and it’s crappy design on logging is one of them. Let me explain. The application shows images, flash-files and movies on a screen, reports this for later use in a logfile. It’s logfile looks somewhat like this:
Screen 1: Showing Image <file>
Screen1: Showing Flash <file>
Screen 1 not showing image: file not found: <file>
Screen1:Flash file not found: <file>
Very nice and all, but why are these lines all using a different format (spaces and colons) while they are clearly alike. Another nice one in the logging of this application is that all loglines have a message-code, from which you can identify a message, even if you would be running it in a different language-settings (since then the text-part will be in another language). However, there are various messages that share message-codes… how are we to know what message a code refers to ?
The message-code ‘2293825558’ can match any of the following messages: ‘Monitor: Standby changing failed’, ‘Monitor: Power on’ or ‘Monitor: Power off’. If you’re gonna use 32-bit numers as message-id’s… is it too hard to actually increment it when making a new message.
To add insult to injury, the application will only display the message’s timestamp, without a date in the logfile (since the logfile’s name contains the date… how convenient), and will only log to a local file, of which the location can not be configured. So forget about syslogging it to another server for processing (and yeah… it’s a windows application). Logfiles are updated only every 5 minutes, so no instant response to critial log-messages.
This is going to be a very long week…
Update 2006/05/09: So… I got a response to my issues already… at appears they all will be fixed in the next release (accept for the date in the logfile, since this wouldn’t be backwards compatible for current users). So… If these problems could be found in 5 minutes, this software is already up to version 4.6, how come these points weren’t brought up before, either from internal testing, or from one of the many larger clients using it now.
The question that remains now is, when can I expect the next version…. I’ve been promised a lot more before, and so far, not much of those promises has been delivered. But I can wait… only 2 more months to go on this project, then it’s new horizons and greener pastures.