Wednesday, December 24, 2008

Flexible Management Scripts in Groovy & JMX

It is commonplace to assert that application monitoring and management are important issues. It is less obvious though to implement such functionalities effectively. Management tasks usually require a good dose of flexibility since they deal frequently with urgent and unpredicted situations. Whereas popular implementation choices include GUIs such as web applications; or JMX with JConsole (or any other compatible client for the matter), the need for flexibility implies an implementation strategy that allows a reasonable degree of adaptation to unexpected situations and reusability. Moreover, the strategy we choose should minimize changes to the management interfaces as new requirements show up, in order to minimize the associated development and operational costs.