I hope someone here can help me think through a design decision. I am
creating an agent (implemented in C++) that will monitor about four
different types of similar resources. There will be between 4 and 16
total resources to be monitored. Each of these resources is a client
application that the agent will "ping" through a Talarian SmartSockets
middleware interface.

The resources differ only in the format of the ping transmissions and
responses (and the way that the responses are analyzed to determine
whether they are online or offline).

My preferred approach is to develop one agent executable that would
handle the four different "classes" of resources. The agent would be
able to tell the "ping protocol" via an argument in the ArgsList for a

A different approach would be to create four separate agent executables,
each tailored to the specific protocol.

One thing that springs to mind is that the Cluster Explorer tree pane
will look different: instead having a single agent for a service group
with all of the resources under it I would have one, two, three, or four
different agents with the various resources grouped under them. My
thought is that this would provide the viewer of the Explorer with a
little more information they need to do their job and, from their
perspective might be a little confusing.

Also, I think there might be minor deployment issues (four types of
agents vs. one to configure, etc.).

I would appreciate any thoughts you may have about this.


Ken Savela, Principal Consultant
Diamante Consulting
email: ksavela@diamanteconsulting.com
web: http://www.diamanteconsulting.com