Go to JSR:
On this page:
 
Print Format
JSRs: Java Specification Requests
JSR 174: Monitoring and Management Specification for the JavaTM Virtual Machine

A specification for APIs for monitoring and management of the JavaTM virtual machine.

  Status: Final              
  Stage       Start   Finish  
  Final Release   Download page   30 Sep, 2004      
  Final Approval Ballot   View results   31 Aug, 2004   13 Sep, 2004  
  Proposed Final Draft   Download page   09 Aug, 2004      
  Public Review   Download page   14 Oct, 2003   13 Nov, 2003  
  Community Draft Ballot   View results   22 Jul, 2003   28 Jul, 2003  
  Community Review   Login page   26 Jun, 2003   28 Jul, 2003  
  Expert Group Formation       02 Apr, 2002      
  JSR Review Ballot   View results   19 Mar, 2002   01 Apr, 2002  
   
JCP version in use: 2.1
Java Specification Participation Agreement version in use: 1.0
Please direct comments on this JSR to: jsr-174-comments@jcp.org
 
 
Specification Lead
Flavio Bergamaschi   IBM 
 
Expert Group
BEA Systems   Cyanea Systems Corp.   Hewlett-Packard
Hitachi, Ltd.   IBM   Intel Corp.
IONA Technologies PLC   Opnet Technologies, Inc   Oracle
Pramati Technologies   SAP AG   Sitraka
Sun Microsystems, Inc.   Wasler, David   Wily Technology, Inc.
 

Original Java Specification Request (JSR)

Identification | Request | Contributions

Section 1. Identification

Submitting Member: IBM and Sun Microsystems, Inc.

Name of Contact People: Flavio Bergamaschi & Mandy Chung

E-Mail Address: flavio@uk.ibm.com, mandy.chung@sun.com

Telephone Number: +44 1962 815853, +1 408 276 7045

Fax Number: +44 1962 818999, +1 408 276 7700


Specification Lead: Flavio Bergamaschi

E-Mail Address: flavio@uk.ibm.com

Telephone Number: +44 1962 815853

Fax Number: +44 1962 818999


Initial Expert Group Membership:

IBM
Sun Microsystems, Inc.
other JavaTM Licensees
other Tools Vendors

Supporting this JSR:

IBM
Sun Microsystems, Inc.



Section 2: Request

2.1 Please describe the proposed Specification:

A specification for APIs for monitoring and management of the JavaTM virtual machine. These APIs will provide Java applications, system management tools and RAS-related tools with the ability to monitor the health of the Java virtual machine as well as manage certain run-time controls such as:

  • Health Indicators
    • Class load/unload
    • Memory allocation statistics
    • Garbage collection statistics
    • Monitor info & statistics
    • Thread info & statistics
    • Just-in-Time statistics
    • Object info (show/count all objects in the Java heap)
    • Underlying OS and platform info
    • etc.

  • Run-Time Control
    • Minimum heap size
    • Verbose GC on demand
    • Garbage collection control
    • Thread creation control
    • Just-in-Time compilation control
    • etc.

The APIs will be designed with the following characteristics:

  • Very low performance impact, even when events are being monitored
  • Restricted to low frequency events
  • Interface should be self describing (i.e. interface should not be described statically)
  • Mandatory and optional set of events and control values

These characteristics suggest the need for Java APIs to support self monitoring of Java applications as well as native interfaces to support tools requiring minimal perturbation of the system.

Support for existing system management standards such as JMX and CIM/WBEM will also be considered.

A new JavaTM Platform Profiling Architecture is being developed (JSR-163) which appears to have some functional overlap with the health indicators. If conflicting requirements do not preclude a single interface, one will be developed in concert with the JSR-163 Expert Group.

2.2 What is the target Java platform? (i.e., desktop, server, personal, embedded, card, etc.)

Java 2 Standard Edition

2.3 What need of the Java community will be addressed by the proposed specification?

This specification is intended to provide the underlying support for JVMTM monitoring and management from within Java applications as well as remote access by system management applications and RAS-related tools.

2.4 Why isn't this need met by existing specifications?

The majority of the existing monitoring and management options and techniques are very limited, lack functionality, degrade performance, and are unreliable and non standard, leading to a multitude of disconnected solutions.

2.5 Please give a short description of the underlying technology or technologies:

See item 2.1 above.

2.6 Is there a proposed package name for the API Specification? (i.e., javapi.something, org.something, etc.)

Not yet.

2.7 Does the proposed specification have any dependencies on specific operating systems, CPUs, or I/O devices that you know of?

No.

2.8 Are there any security issues that cannot be addressed by the current security model?

No.

2.9 Are there any internationalization or localization issues?

No.

2.10 Are there any existing specifications that might be rendered obsolete, deprecated, or in need of revision as a result of this work?

No.

2.11 Please describe the anticipated schedule for the development of this specification.

Inclusion in the J2SE Tiger release.

2.12 Please describe the anticipated working model for the Expert Group working on developing this specification.

Primarily email communication. Teleconference and face to face meetings as required.





Section 3: Contributions

3.1 Please list any existing documents, specifications, or implementations that describe the technology. Please include links to the documents if they are publicly available.

None.

3.2 Explanation of how these items might be used as a starting point for the work.

N/A



 
Sun Microsystems
What's New
JSRs
JCP Procedures
Community Resources
Participation
Press & Success
What is the JCP