BEAWebLogic. Server. Monitoring and Managing with the J2EE Management APIs

Similar documents
BEAWebLogic. Server. Monitoring and Managing with the J2EE Management APIs

BEAWebLogic Server. Monitoring and Managing with the Java EE Management APIs

1 Introduction and Roadmap

1 Introduction and Roadmap

Developing Java EE Management Applications for Oracle WebLogic Server c (12.1.3)

Oracle Fusion Middleware Developing Java EE Management Applications for Oracle WebLogic Server. 12c ( )

BEAWebLogic RFID. Edge Server. Supported Configurations

BEA AquaLogic Commerce Services. Release Notes

BEAWebLogic RFID. Edge Server. Release Notes

Mainframe Adapter for OSI TP

Portlets for Groupware Integration

BEAJRockit Mission Control. JRockit Memory Leak Detector User Guide

BEAWebLogic RFID. Enterprise Server. Using the Serial Number Assignment Service

BEAWebLogic. Server. Deploying Applications to WebLogic Server

Interaction JSR-168 Container

BEAWebLogic RFID. Enterprise Server. Using the Telemetry Console Extension

Interaction Development Kit (IDK) Version 5.4

BEAWebLogic. Platform. 8.1 Supported Configurations: Red Hat Enterprise Linux 4.0 AS, ES on IBM pseries

BEAWebLogic RFID. Edge Server. Using the Reader Simulator

BEAWebLogic. Portal. Cache Reference

BEATuxedo Mainframe Adapter for SNA. Release Notes

BEA WebLogic Mobility Server Installation Guide

BEAWebLogic. Platform. 8.1 Supported Configurations: Microsoft Windows 2000 Professional on x86

BEAWebLogic. Portal. Customizing the Portal Administration Console

BEAWebLogic. Platform. 8.1 Supported Configurations: Red Hat Enterprise Linux 4.0 AS, ES on Itanium

Portlets for Groupware Integration

BEAWebLogic. Portal. Simplifying Portal URLs

BEAWebLogic RFID. Edge Server. Installing WebLogic RFID Edge Server

BEAWebLogic. Platform. 8.1 Supported Configurations: Microsoft Windows x64

BEAWebLogic. Integration. Tips and Tricks

BEAWebLogic. Server. Developing Manageable Applications with JMX

BEAWebLogic. Portal. Tutorials Getting Started with WebLogic Portal

BEAProducts. ISV Partners Guide

Server and WebLogic Express

BEAAquaLogic. Service Bus. Upgrade Guide

BEAWebLogic. Portal. Getting Started with Autonomy Search

Contents. BEA WebLogic Mobility Server Mobilize Your Portal Guide

BEAWebLogic. Server. Timer and Work Manager API (CommonJ) Programmer s Guide

BEAProducts. ISV Partners Guide

BEATuxedo Mainframe Adapter for OSI TP. User Guide

BEAWebLogic. Platform. Introducing WebLogic Platform. Version 8.1 Document Date: July 2003 Part Number:

CollabraSuite BEA Edition

BEAWebLogic. Platform. ISV Partners Guide

BEAWebLogic. Enterprise Security. WebLogic Server v8.1 Installation

BEAWebLogic. Platform. 8.1 Supported Configurations: Red Hat Enterprise Linux WS on AMD64 and EM64T

BEAWebLogic. SIP Server. Configuring Security for WebLogic SIP Server

BEAAquaLogic BPM. Installation Guide for AquaLogic BPM

BEAWebLogic. Platform. 8.1 Supported Configurations: Novell SUSE LINUX Enterprise Server 8 on PowerPC

BEAWebLogic. Server. WebLogic SNMP Management Guide

Interaction Analytics

BPM Workspace Extensions

BEAAquaLogic. Enterprise Security. Introduction

BEAWebLogic SIP. Server. Installing BEA WebLogic SIP Server

BEAWebLogic. SIP Server. Configuring and Managing WebLogic SIP Server

BEAWebLogic SIP Server. Configuring Network Resources

BEAWebLogic. Portal. Integrating Search

BEAWebLogic. Server. Programming WebLogic Management Services with JMX

BEATuxedo. Using the Tuxedo.NET Workstation Client

BEA WebLogic Mobility Server Sample Mobility Portal Guide

BEAWebLogic RFID. Enterprise Server. Release Notes

Interaction SharePoint Console

BEAWebLogic. Server. Configuring and Managing WebLogic JDBC

BEAAquaLogic. Enterprise Security. Release Notes

BEAWebLogic. Adapter for HIPAA. Installation and Configuration Guide

BEA WebLogic Mobility Server Device Repository Guide

Adapter for Mainframe

QuickClip Portlet, BEA WebLogic Edition Developer Guide

BEAAquaLogic BPM Designer

CollabraSuite, BEA Edition

AquaLogic Data Services Platform Tutorial: Part I

BEA WebLogic Integration Installing BEA WebLogic Integration

BEAWebLogic. Adapter for RDBMS. Installation and Configuration Guide

BEAWebLogic. Portal. MobileAware Interaction Server Installation Guide

BEAWebLogic. Adapter for RDBMS. Installation and Configuration Guide

BEAAquaLogic. Enterprise Security. Programming Security for Web Services

BEAJRockit SDK. Using the Monitoring and Management APIs

BEAWebLogic. Server. Extending the Administration Console

Copyright. Restricted Rights Legend. Trademarks or Service Marks. Copyright 2003 BEA Systems, Inc. All Rights Reserved.

BEAWebLogic. Platform. 8.1 Supported Configurations: HP-UX 11i on Itanium

BEAWorkshop. Product Family. Release Notes

BEA WebLogic. Platform. Configuration Wizard Template Reference

BEA Adapter for. ClarifyCRM. Release Notes

BEA WebLogic. Server. Programming WebLogic JNDI

BEA WebLogic. Adapter for . Installation and Configuration Guide for WebLogic Integration 7.0

Adapter for Manugistics

Portal. BEAWebLogic. White Paper: Integrating Content Into the BEA Virtual Content Repository

BEA WebLogic. Server. MedRec Clustering Tutorial

BEA WebLogic Mobility Server Sample Workshop Mobility Project Guide

BEA Liquid Data for. WebLogic. Deploying Liquid Data

BEAAquaLogic. SOA Management. Installation Guide

Developing Manageable Applications Using JMX for Oracle WebLogic Server c (12.1.3)

BEA WebLogic. Adapter for HL7. Installation and Configuration Guide for WebLogic Integration 7.0

Oracle WebLogic Server

BEAWebLogic. Network Gatekeeper. SDK User Guide

BEAWebLogic SIP Server. Release Notes

CollabraSuite, BEA Edition

BEA WebLogic. Integration. Samples

BEAWebLogic Server. Introduction to BEA WebLogic Server and BEA WebLogic Express

Developing Manageable Applications With JMX for Oracle WebLogic Server 11g Release 1 (10.3.6)

Mainframe Adapter for TCP

Transcription:

BEAWebLogic Server Monitoring and Managing with the J2EE Management APIs Version 9.2 Revised: August 1, 2006

Copyright Copyright 1995-2006 BEA Systems, Inc. All Rights Reserved. Restricted Rights Legend This software is protected by copyright, and may be protected by patent laws. No copying or other use of this software is permitted unless you have entered into a license agreement with BEA authorizing such use. This document is protected by copyright and may not be copied photocopied, reproduced, translated, or reduced to any electronic medium or machine readable form, in whole or in part, without prior consent, in writing, from BEA Systems, Inc. Information in this document is subject to change without notice and does not represent a commitment on the part of BEA Systems. THE DOCUMENTATION IS PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. FURTHER, BEA SYSTEMS DOES NOT WARRANT, GUARANTEE, OR MAKE ANY REPRESENTATIONS REGARDING THE USE, OR THE RESULTS OF THE USE, OF THE DOCUMENT IN TERMS OF CORRECTNESS, ACCURACY, RELIABILITY, OR OTHERWISE. Trademarks and Service Marks Copyright 1995-2006 BEA Systems, Inc. All Rights Reserved. BEA, BEA JRockit, BEA WebLogic Portal, BEA WebLogic Server, BEA WebLogic Workshop, Built on BEA, Jolt, JoltBeans, SteelThread, Top End, Tuxedo, and WebLogic are registered trademarks of BEA Systems, Inc. BEA AquaLogic, BEA AquaLogic Data Services Platform, BEA AquaLogic Enterprise Security, BEA AquaLogic Interaction, BEA AquaLogic Interaction Analytics, BEA AquaLogic Interaction Collaboration, BEA AquaLogic Interaction Content Services, BEA AquaLogic Interaction Data Services, BEA AquaLogic Interaction Integration Services, BEA AquaLogic Interaction Process, BEA AquaLogic Interaction Publisher, BEA AquaLogic Interaction Studio, BEA AquaLogic Service Bus, BEA AquaLogic Service Registry, BEA Builder, BEA Campaign Manager for WebLogic, BEA elink, BEA Kodo, BEA Liquid Data for WebLogic, BEA Manager, BEA MessageQ, BEA SALT, BEA Service Architecture Leveraging Tuxedo, BEA WebLogic Commerce Server, BEA WebLogic Communications Platform, BEA WebLogic Enterprise, BEA WebLogic Enterprise Platform, BEA WebLogic Enterprise Security, BEA WebLogic Express, BEA WebLogic Integration, BEA WebLogic Java Adapter for Mainframe, BEA WebLogic JDriver, BEA WebLogic Log Central, BEA WebLogic Mobility Server, BEA WebLogic Network Gatekeeper, BEA WebLogic Personalization Server, BEA WebLogic Personal Messaging API, BEA WebLogic Platform, BEA WebLogic Portlets for Groupware Integration, BEA WebLogic Real Time, BEA WebLogic RFID Compliance Express, BEA WebLogic RFID Edge Server, BEA WebLogic RFID Enterprise Server, BEA WebLogic Server Process Edition, BEA WebLogic SIP Server, BEA WebLogic WorkGroup Edition, BEA Workshop for WebLogic Platform, BEA Workshop JSP, BEA Workshop JSP Editor, BEA Workshop Struts, BEA Workshop Studio, Dev2Dev, Liquid Computing, and Think Liquid are trademarks of BEA Systems, Inc. Accelerated Knowledge Transfer, AKT, BEA Mission Critical Support, BEA Mission Critical Support Continuum, and BEA SOA Self Assessment are service marks of BEA Systems, Inc. All other names and marks are property of their respective owners.

Contents 1. Introduction and Roadmap Document Scope and Audience............................................. 1-1 Guide to This Document.................................................. 1-2 Related Documentation................................................... 1-2 2. Using the J2EE Management APIs on WebLogic Server Understanding the J2EE Management Model and APIs.......................... 2-1 JMO Hierarchy...................................................... 2-2 JMO Object Names................................................... 2-2 Optional Features of JMOs............................................. 2-2 Accessing JMOs..................................................... 2-3 The J2EE Management Model on WebLogic Server............................ 2-3 Accessing the MEJB on WebLogic Server.................................... 2-3 Example: Querying Names of JMOs..................................... 2-4 Monitoring and Managing with the J2EE Management APIs iv

v Monitoring and Managing with the J2EE Management APIs

CHAPTER 1 Introduction and Roadmap The J2EE Management specification describes a standard data model for monitoring and managing the runtime state of any J2EE Web application server and its resources. It includes standard mappings of the model through a J2EE Management EJB Component (MEJB). The following sections describe the contents and organization of this guide Monitoring and Managing with the J2EE Management APIs: Document Scope and Audience on page 1-1 Guide to This Document on page 1-2 Related Documentation on page 1-2 Document Scope and Audience This document is a resource for software developers who develop management services for J2EE applications and for software vendors who develop JMX-compatible management systems. It also contains information that is useful for business analysts and system architects who are evaluating WebLogic Server or considering the use of JMX for a particular application. The information in this document is relevant during the design and development phases of a software project. The document does not address production phase administration, monitoring, or performance tuning topics. For links to WebLogic Server documentation and resources for these topics, see Related Documentation on page 1-2. It is assumed that the reader is familiar with J2EE and general application management concepts. This document emphasizes a hands-on approach to developing a limited but useful set of JMX Monitoring and Managing with the J2EE Management APIs 1-1

Introduction and Roadmap management services. For information on applying JMX to a broader set of management problems, refer to the JMX specification or other documents listed in Related Documentation on page 1-2. Guide to This Document This document is organized as follows: This chapter, Introduction and Roadmap, describes the scope and organization of this guide. Chapter 2, Using the J2EE Management APIs on WebLogic Server, introduces JMX and describes common ways to use it in conjunction with other WebLogic Server management features. Related Documentation The Sun Developer Network includes a Web site that provides links to books, white papers, and additional information on JMX: http://java.sun.com/products/javamanagement/. To view the JMX 1.2 specification and API documentation, download it from http://jcp.org/aboutjava/communityprocess/final/jsr003/index3.html. To view the JMX Remote API 1.0 specification and API documentation, download it from http://jcp.org/aboutjava/communityprocess/final/jsr160/index.html. For guidelines on developing other types of management services for WebLogic Server applications, see the following documents: Using WebLogic Logging Services for Application Logging describes WebLogic support for internationalization and localization of log messages, and shows you how to use the templates and tools provided with WebLogic Server to create or edit message catalogs that are locale-specific. Configuring and Using the WebLogic Diagnostic Framework describes how system administrators can collect application monitoring data that has not been exposed through JMX, logging, or other management facilities. For guidelines on developing and tuning WebLogic Server applications, see the following documents: Developing WebLogic Server Applications is a guide to developing WebLogic Server applications. 1-2 Monitoring and Managing with the J2EE Management APIs

Related Documentation Developing Manageable Applications with JMX describes how to create and register custom MBeans. Monitoring and Managing with the J2EE Management APIs 1-3

Introduction and Roadmap 1-4 Monitoring and Managing with the J2EE Management APIs

CHAPTER 2 Using the J2EE Management APIs on WebLogic Server The J2EE Management APIs enable a software developer to create a single Java program that can discover and browse resources, such as JDBC connection pools and deployed applications, on any J2EE Web application server. The APIs are part of the J2EE Management Specification, which requires all J2EE Web application servers to describe their resources in a standard data model. The following sections describe how to use the J2EE Management APIs on WebLogic Server : Understanding the J2EE Management Model and APIs on page 2-1 The J2EE Management Model on WebLogic Server on page 2-3 Accessing the MEJB on WebLogic Server on page 2-3 Understanding the J2EE Management Model and APIs In the J2EE Management data model, each instance of a Web application server resource type is represented by a J2EE Managed Object (JMO). The J2EE Management Specification describes exactly which types of resources must be represented by a JMO. JMOs themselves contain only a limited set of attributes, which are used to describe the location of the object in the data model. Download the J2EE Management Specification from http://jcp.org/aboutjava/communityprocess/final/jsr077/index.html. Monitoring and Managing with the J2EE Management APIs 2-1

Using the J2EE Management APIs on WebLogic Server JMO Hierarchy The data model organizes JMOs hierarchically in a tree structure. The root JMO is J2EEDomain, which represents a collection of Web application server instances that are logically related. J2EEDomain contains the object names for all instances of the J2EEServer JMO, each of which represents a server instance in the collection. Java applications can browse the hierarchy of JMOs, recursively querying for object names and looking up the JMOs that are named by the query results. JMO Object Names Each JMO instance is identified by a unique object name of type javax.management.objectname. The names follow this pattern: domain:name=j2eetype=value,name=value,parent-j2eetype[,property=value]* For example, mydomain:j2eetype=j2eedomain,name=mydomain The J2EE Management Specification describes exactly which name/value pairs must be in the object names for each JMO type. The object name for each child JMO contains name/value pairs from its parent JMO s object name. For example, if the JMO for a server instance is named mydomain:j2eetype=j2eeserver,name=myserver then the JMO for a servlet that is part of an application deployed on that server instance would be named: mydomain:j2eeapplication=myapplication,j2eeserver=myserver,webmodule=myapp _mywebmodule,j2eetype=servlet,name=myservlet_name The name/value pairs can appear in any order. Optional Features of JMOs The J2EE Management Specification, version 1.0, requires only that Web application servers implement JMOs and provide API access to the JMOs. Optionally, you can implement the JMOs to provide performance statistics, management operations, and to emit notifications when specified events occur. 2-2 Monitoring and Managing with the J2EE Management APIs

The J2EE Management Model on WebLogic Server Accessing JMOs A Java application accesses the JMOs through javax.management.j2ee.management, which is the remote interface for the Management Enterprise Java Bean (MEJB). The J2EE Management Specification requires that the MEJB s home interface be registered in a server s JNIDI tree as ejb.mgmt.mejb. See the API Reference for the javax.management.j2ee package: http://java.sun.com/j2ee/1.4/docs/api/javax/management/j2ee/package-summary.html. The J2EE Management Model on WebLogic Server WebLogic Server 9.0 implements only the required features of the J2EE Management Specification, version 1.0. Therefore, the following limitations are in place: None of the JMOs provide performance statistics, management operations, or emit notifications. There are no mappings to the Common Information Model (CIM). There are no mappings to an SNMP Management Information Base (MIB). The MEJB and JMOs are available only on the Administration Server. This is consistent with the J2EE Management Model, which assumes that most J2EE Web servers exist within some logically connected collection and that there is a central point within the collection for accessing or managing the server instances. From the Administration Server, a Java application can browse to the JMO that represents any resource on any server instance in the WebLogic Server domain. Because WebLogic Server implements its JMOs as a wrapper for its MBeans, any changes in a WebLogic Server MBean that corresponds to a JMO is immediately available through the J2EE Management APIs. For all JMO object names on WebLogic Server, the domain: portion of the object name corresponds to the name of the WebLogic Server domain. Accessing the MEJB on WebLogic Server To retrieve monitoring data through the MEJB: 1. Look up the javax.management.j2ee.managementhome interface through the Administration Servers JNDI tree under the name ejb.mgmt.mejb. Monitoring and Managing with the J2EE Management APIs 2-3

Using the J2EE Management APIs on WebLogic Server 2. Use ManagementHome to construct an instance of javax.management.j2ee.management, which is the MEJB s remote interface. Example: Querying Names of JMOs The example class in accesses the MEJB for a WebLogic Server domain and invokes javax.management.j2ee.management.querynames method. This method returns the object name for all JMOs in the domain. Listing 2-1 Querying Names of JMOs import java.io.ioexception; import java.net.malformedurlexception; import java.util.iterator; import java.util.set; import java.util.properties; import javax.management.j2ee.management; import javax.management.j2ee.managementhome; import javax.management.attributenotfoundexception; import javax.management.instancenotfoundexception; import javax.management.objectname; import javax.management.queryexp; import javax.naming.context; import javax.naming.initialcontext; import javax.naming.namingexception; import javax.ejb.createexception; public class GetJMONames { static String url = "t3://localhost:7001"; static String user = "weblogic"; static String password = "weblogic"; public static void main(string[] args) { try { getalljmonames(); catch(exception e){ System.out.println(e); 2-4 Monitoring and Managing with the J2EE Management APIs

Accessing the MEJB on WebLogic Server public static Management getmejbremote() throws IOException, MalformedURLException, NamingException,CreateException { Context context = getinitialcontext(); ManagementHome home = (ManagementHome) context.lookup("ejb.mgmt.mejb"); Management bean = home.create(); return bean; public static Context getinitialcontext() throws NamingException { Properties p = new Properties(); p.put(context.initial_context_factory, "weblogic.jndi.wlinitialcontextfactory"); p.put(context.provider_url, url); if (user!= null) { p.put(context.security_principal, user); if (password == null) password = ""; p.put(context.security_credentials, password); return new InitialContext(p); public static void getalljmonames() { try { Management rhome = getmejbremote(); String string = ""; ObjectName name = new ObjectName(string); QueryExp query = null; Set allnames = rhome.querynames(name, query); Iterator nameiterator = allnames.iterator(); Monitoring and Managing with the J2EE Management APIs 2-5

Using the J2EE Management APIs on WebLogic Server while(nameiterator.hasnext()) { ObjectName on = (ObjectName)nameIterator.next(); System.out.println(on.getCanonicalName() + "\n"); catch (Exception ex) { ex.printstacktrace(); 2-6 Monitoring and Managing with the J2EE Management APIs