One of the features of Impact that lends itself to customization, is the Maintenance Window Management tool (MWM).
This tool provides a mechanism whereby Impact can cause events to be flagged as being in maintenance by changing the value of the OMNIbus field SuppressEscl to 6 in the alerts.status table at pre-configured times. By doing this, when something in the network is undergoing maintenance, or for some other reason is deliberately off-line, unavailable or operating at reduced capacity, events about it can be ignored.
The functionality that is provided includes a table in the ImpactDB where maintenance windows can be defined - these can be one-time windows or recurring windows – to match events as required. There is a GUI, implemented as an Operator View to allow the creation and display of maintenance windows. And there is also the MWM policy itself, which runs regularly to check for events that match the currently active maintenance windows.
Each of these area of functionality can be customized to provide extra features or just to make it more suited your needs, but there are some things that must be considered, if you decide to do this:
- Supportability. If you implement a custom MWM solution, it cannot be supported by IBM as part of the normal Netcool Impact product support process. So, if your MWM implementation shows a problem that cannot be replicated in the delivered solution, you will need to resolve it yourself. IBM may be able to offer help, advice and guidance, but would not be able to produce a fix for you.
- Also, if IBM were to ship any elements of the MWM solution in a fixpack, when you install the fixpack your customized features may get over-written.
- Furthermore, if IBM were to fix issues with the MWM features in a fixpack, or provide enhancements in a new release, you may not get the benefit of these fixes/enhancements.
- Added to this, you have to be certain to maintain the skills and knowledge about your custom solution within your organization to be able to deal with any problems you encounter.
So, taking all the above into account, if you decide to go ahead and customize the MWM solution, here are some recommendations that will help to save you some potential headaches down the line:
- When you design and implement your customization, be sure to accurately and completely document the changes you have made and why you made them. This will allow you to review the changes and decide whether you still need them and it will allow anyone new to understand what was done.
- Implement the changes in a manner that will allow you to easily, re-implement them at a new fix level. So, for example, script the changes such that if new policies are shipped in an Impact fixpack, you can install the fixpack, then quickly and easily re-implement your customization on top. Then you will benefit from any other fixes in the fixpack for problems you have not yet encountered.
- Create enhancement requests in the IBM RFE system to cover the customizations you have implemented. This way, the features you want could be made available in the base product and remove the need for your custom solution.
- Regularly review your customizations to make sure they are still required and remove any elements you no longer need.
I hope this guidance has helped to highlight the pitfalls in producing a customized solution and provided guidance on how to do so with the minimum of pain, if you decide to go ahead.