|
|
 |
The XMOJO Project - FAQ
List of topics:
Installation
- What are the supported OS of XMOJO JMX implementation? [ANS]
- What are the supported JDK of XMOJO JMX implementation? [ANS]
- What are the third-party jars used in XMOJO? [ANS]
General
- What is JMX? [ANS]
- What is an MBean? [ANS]
- What are the different types of MBeans? [ANS]
- When should I go for Standard MBeans? [ANS]
- When should I go for Dynamic MBeans? [ANS]
- When should I go for Model MBeans etc.? [ANS]
- How do third-party applications exposed as manageable applications?
[ANS]
- How do I make my MBean to send notifications to interested parties?
[ANS]
- What is the purpose of NotificationFilter? [ANS]
- What is the purpose of handback object? [ANS]
Advanced Dynamic Loading
- What is an MLet service? [ANS]
- Is a Web server required to use the MLet service? [ANS]
Adaptors and Connectors
- How do managers communicate with MBeanServer and manage the applications?
[ANS]
- What are adaptors? [ANS]
- What are connectors? [ANS]
- What is the difference between adaptors and connectors? [ANS]
- What is HTML adaptor and how can I use it? [ANS]
- What is RMI adaptor and how can I use it? [ANS]
- What I have to do to make the HTML adaptor work with some other web-servers,
say Tomcat, Resin etc.? [ANS]
Deployment
- What jars are needed from XMOJO for deploying application instrumented
with JMX? [ANS]
Installation
ü What are the supported OS of XMOJO JMX implementation
?
As XMOJO JMX implementation is based on Java, all Operating Systems that
support JVM (Java Virtual Machine) can be used. Here, we have officially
tested with Windows, Linux, and Solaris.
ü What are the supported JDKs of XMOJO JMX implementation
?
For using the XMOJO JMX implementation, JDK1.2 or later is required. For
using the tools, JDK1.3 or later is required.
ü What are the third-party jars used in XMOJO?
The following third-party software packages are used in XMOJO JMX implementation:
- XML Parsers (version 1.1) -- xalan.jar, crimson.jar, and jaxp.jar
- Jetty Web Server (version 2.4.0) -- org.mortbay.jetty.jar
General
ü What is JMX?
The Java Management Extensions (also called the JMX specification) defines
an architecture, the design patterns, the APIs, and the
services for application and network management in the Java programming language.
ü What is an MBean?
Managed Bean or MBean in short is a Java object that follows the design patterns
set forth in the instrumentation level of the JMX specification. MBeans expose
a management interface: a set of readable and/or writable attributes and
a set of invokable operations, along with a self-description.
ü What are the different types of MBeans?
JMX 1.0 specification defines four broad types of MBeans, namely Standard
MBeans, Dynamic MBeans, Model MBeans, and less standardized Open MBeans
MBeans can be of Standard or Dynamic, i.e., whose management interface will
not change (standard) or may change (dynamic). Model MBeans and Open MBeans
extend the Dynamic MBeans and provides additional features.
ü When should I go for Standard MBeans?
Managed applications can be instrumented as standard MBeans, if their management
interface is going to be static. As the management interface is static,
it is very easy to instrument it as standard MBeans
ü When should I go for Dynamic MBeans?
Dynamic MBeans are most suitable for instrumenting the managed applications
whose management interface is varying dynamically. Dynamic MBeans give
great flexibility in instrumenting the managed applications and also they
enable to wrap the existing application and exposing them as MBeans for management.
ü When should I go for Model MBeans?
Model MBeans are also Dynamic MBeans and it will be suitable for instrumenting
the managed applications which requires dynamic MBeans behavior and needs
to describe various run-time behavior for attributes, operations, etc.
Model MBeans enable describing attributes and operations through "Descriptors".
ü How do third-party applications exposed as manageable
applications?
Those applications which are third-party applications or whose source code
cannot be accessed or whose source should not be modified, etc. can be exposed
as MBeans using Dynamic MBeans The wrapper will implement the DynamicMBean
interface and actually wraps the application.
ü How do I make my MBean send notifications to interested
parties?
MBeans should implement NotificationBroadcaster interface to enable the notification
listeners to get registered with the MBean. JMX implementation provides
a default implementation of the notification broadcaster interface called
"NotificationBroadcasterSupport". MBeans can extend either the NotificationBroadcasterSupport
class or implement the NotificationBroadcaster interface.
ü What is the purpose of NotificationFilter?
NotificationFilter is used to filter the notifications emitted by the MBean
and receive only the interested types among them. The listener while
registering itself with MBeans as notification listener will have to supply
the NotificationFilter object which would have implemented the "isNotificationEnabled"
method of NotificationFilter to filter out the unwanted notifications. If
this NotificationFilter object is null, then all the emitted notifications
by the MBeans will be delivered to the listener.
ü What is the purpose of hand back object?
Hand back objects are the objects which are of no use to the Notification
mechanism and their use is purely depends on the listener. It can be any
object and will be supplied by listener during registration and will be handed
back to listener during sending notifications.
Advanced Dynamic Loading
ü What is an MLet service?
The MLet service is useful to load MBeans classes and resources inside an
MBean Server's JVM from a remote host and register the MBeans in a single
action. The MLet service loads an m-let text XML-like file which contains
information about the MBeans that have to be registered. The location
of the m-let file is specified by a URL.
ü Is a Web server required to use the MLet service?
No, you can also specify a file URL which points to a local file, when registering
MBeans with addMBeansFromURL().
Adaptors and Connectors
ü How do managers communicate with MBeanServer and manage
the applications?
The managers or managing applications, communicate with MBeanServer through
protocol adaptors and connectors depends on what protocol they can understand
and thus manages the application.
ü What are adaptors?
Protocol adaptors provide a management view of the JMX agent through a given
protocol. They adopt the operations of MBeans and the MBean server into a
representation in the given protocol and possibly into a different information
model, for example SNMP.
ü What are connectors?
Protocol connectors convey management operations transparently point-to-point
over a specific protocol. This kind of communication involves a connector
server in the agent and a connector client in the manager.
ü What is the difference between adaptors and connectors
?
Protocol adaptors usually have server part of the adaptor which converts
the JMX communications into protocol specific communications, whereas in
case of Connectors, communication involves a connector server in the
agent and a connector client in the manager. Management applications that
connect to a protocol adaptor are usually specific to the given protocol,
whereas management application which uses connectors are developed using
the distributed services of the JMX 1.0 specification.
ü What is HTML adaptor and how can I use it?
HTML adaptor is the adaptor for HTML protocol, using which an application
can be managed through any HTML3.2 compliant browser or application. In order
to use HTML adaptor, it has to be reigsted with MBeanServer (as all adaptors
are MBeans) from the Agent. For more details, refer the HTML Adaptor
topic in the help documentation.
ü What is RMI adaptor and how can I use it?
RMI adaptor/connector, is based on the client framework, which helps the managers
or managing applications, to communicate with MBeanServer through RMI. In
order to use RMI adaptor, it has to be reigsted with MBeanServer (as all
adaptors are MBeans) from the Agent. For more details, refer the RMI
Adaptor topic in the help documentation.
ü What I have to do to make the HTML adaptor work with some
other web-servers, say Tomcat, Resin etc.?
By default, the shipped HTML adaptor will use Jetty web server and servlet
and JSP container. To use any other servlet compatible containers, you
have to wrap that server and implement the "com.adventnet.adaptors.html.HttpServerInterface"
interface. For more details, refer the section Plugging in Your Own
Web Server in the HTML Adaptor topic in the Help documentation.
Deployment
ü What are the jars needed from XMOJO for deploying application
instrumented with JMX?
The xmojo.jar and xmojoutils.jar are needed. These JAR files are available
under lib directory.
|
 |
|

Network Monitoring Tool
|