Abend Log Summarizer

The program has two functions. One is to gather the data from all abend.log files on on NetWare servers in a given tree, and the other is to rename the log files in a cycle as abend.1, abend.2 etc to keep the file size down. The program uses various Novell API calls to extract server and tree names, and requires a recent version of Novell Client 32 on the Workststation. The user needs to be logged into the tree with sufficient rights to at least read all sys:system folders, and of course it will not be useful with OES/Linux or OES/Windows servers.

Running the program should be straightforward and obvious to an experienced Novell administrator. Gathering the log data is not a destructive process, but repeated running of the rename log function will eventually cause log files to be lost (only the last 25 are kept). The program outputs the abend date and time in both the text format in the log file, and also in the MS serial format, based on 1900. This is useful if you are trying to spot patterns for events occurring across multiple servers. The fields in the log are:-

- Server Name - and if it was different at the time of the abend
- Date - text format
- Date - serial format
- Abend type, number and processor
- OS Version
- Abend Message
- Running Process
- Interrupted Process
- "Created By" - not always recorded

I should note that I needed to get this running again (its an update of some very old code) in something of a hurry to help deal with a significant problem we are trying to fix at the time of writing. It has been worked over no more than was necessary to get the data with NW65 log format and to push the code into a vaguely publishable state. Bugs may well exist, although if you stick to the data retrieval its read only so strictly non destructive.

Both binary and source code are included in the distribution. The source adds so little to the file size that there seems no point in including it. You will need a copy of MS Visual Basic 6 to compile the source, but I imagine it is fairly readily portable to later versions. Large chunks of the source code are from Novell libraries and example codes, and other parts are from Microsoft API libraries. This code is not subject to the Open Source License, but is available unrestricted from those suppliers.

I'll freely admit this isn't the greatest VB code ever written, and the libraries based on third party code are pretty minimally commented. The main routine is reasonably commented so it should be easy to change it to suit individual requirements. In particular there is no kind of internationalisation, and I imagine it would be necessary to change and recompile the code if the server is not running English Language. It shouldn't be too hard though, depending on how different the abend log is in other languages.

Oh, and why am I still using MS VB6? Well it works, this is an update of old code, there's probably not much point in a major rewrite for however many years of life pure NetWare has left, and there are things I'd rather do learn .net when I only create WIndows Applications about once every nine months.



Comment List