The Common Monitoring Model (CMM) is an extension of the Common Information Model (CIM) implemented in the Java programming language. CIM is embodied in Java interfaces of the com.sun.cmm.cim.* packages. CMM is embodied in the interfaces of the com.sun.cmm.* packages that extend the CIM interfaces. Monitored objects are represented in the node agents by classes that implement the CMM interfaces. The following tables show what attributes can be monitored for each class of object.
CMM is based upon a limited set of core interfaces that define which attributes a monitored object of that type can expose. The following list shows the classes that represent the broad types of monitored objects defined by CMM, and gives some of their key attributes:
A Java ES component product, taken as a whole. For example, Java ES Directory Server.
An installed and configured instance of a Java ES component product. This instance can be either running or not running. Typical attributes of this object would be the contact information for the administrator, the operational status of the system, and startup or stopping time of the application.
A specific function of a component product, for example, the Java ES Directory Server authentication service. A typical attribute would be the service's operational status.
A representation of software entities in the environment, such as a cache, thread pool, and so on. A typical attribute would be a cache size.
An entity which is manipulated by a Service and which is visible to the end user, but which does not represent an actual physical re source or a software feature. For example, a set of configuration parameters for a software instance, rather than the instance itself.
The point at which a Service is made available to be used. Typical attributes would be a port number or Uniform Resource Identifier (URI).
Access and addressing information for a remote connection. Typical attributes would be a URI, or the operational status of the connection (open or closed).
A single instance of a running program. Typical attributes would be memory or CPU usage.
A single host used by the Java ES deployment, for example a desktop machine or a server. Typical attributes could be the number of available processors, or the amount of physical memory.
The software or firmware that makes a host machine's hardware usable. A typical attribute could be the amount of available virtual memory on the system.
The Java Virtual Machine used by a Java ES server. An example attribute could be the version number of the Java Virtual Machine.
A task performed on behalf of a database, for example providing user access. A typical attribute could be the maximum permitted number of connections to the database.
Properties that are common across a given type of database. A typical attribute could be the date of the most recent back up.