Thursday, October 28, 2010

Oracle Composite Application Monitor and Modeler (OCAMM - ADP) with EMGC11g


Started with name Acsera Manager , renamed as ClearApp, later named as OCAMM (Oracle Composite Application Monitor and Modeler) and now it's known as ADP (Application Dependency and Performance).

ADP (OCAMM) is a solution in Application Service Management(ASM) area. It understands the Java, J2EE, SOA, OSB and Portal applications. ADP(OCAMM) can:
- discover components
- analyze components in depth
- capture complex relationships between services, components & run-time environments (i.e. JVMs)
-dynamically adjust to relationship changes
- take into account required application services (i.e. SOA, BPEL, OSB, portal, web services etc.), facilities (i.e. performance monitoring, root-cause analysis, etc.) and platforms (i.e. WebLogic, Websphere, OC4J etc.)

ADP is supported on Windows, Linux, Solaris, HPUX and AIX platforms.

ADP needs database for repository. It supports Oracle and My SQL as its repository.

ADP has been integrated with EMGC 11g.

ADP in EMGC 11g has following components:
  1. UI - ADP Pages to display ADP data
  2. Manager - ADP Manager is the core analytical engine of the ADP ASM system. In real-time, ADP Manager performs complex mathematical modeling and statistical calculations with summarized data from all ADP Java Agents.
  3. Java Agent - ADP Java Agents are the data collectors of the ADP ASM system. ADP Java Agents are deployed to all managed application servers to perform a series of tasks including collecting performance managements, tracking contextual relationships, and summarizing data in real-time while introducing as little overhead as possible. At the expiration of the predefined aggregation interval, these agents forward the summarized data to ADP for additional analysis. For various Java EE platforms such as Oracle SOA Suite, Oracle WebLogic, and IBM WebSphere, ADP leverages their deployment infrastructures to quickly deploy the ADP Java Agents to all application servers.
  4.   Database - ADP stores its analyzed data and application models in the Management Repository. There is a separate schema for ADP in the Management Repository and this schema is external to the ADP installation.
One can learn more about ADP(OCAMM) at http://download.oracle.com/docs/cd/E11857_01/install.111/e17558/intro.htm

Tuesday, October 19, 2010

What is Cross Tier (xtier) functionality in JVM Diagnostics (AD4J)?

Using JVM Diagnostics(AD4J), one can diagnose an issue across 3 tiers i.e. Java application<-> JVM <-> Database. User can relate an application activity to database activity. As of now, only oracle database is supported.
If cross tier is configured correctly, in real time user can see DB Wait link for active JVM threads that are busy in db activity. While in monitoring data, data appears in Top DB States and Top SQLs. One can use filters on them. By looking at Database pages, one can see JVM activity inside db.
Cross tier configuration requires: 
  • Java application and JVM with jamagent running and registered with console
  • Database to be monitored needs to be registered with console
  • Dbagent needs to be running on machine where database is running as same user who is running oracle database.
To ensure that cross tier is configured correctly:
1.            Navigate to Targets->Middleware->JVM Diagnostics->Setup->Databases page and ensure that database to be monitored is registered correctly. Verify following:
•             OS User field should specify the user who installed the database
•             DB User field should specify the DB application user credentials (Should have access to GV$ and V$ views)
•             DB User (Explain Plan) field should specify DB system user credentials
2.            DB Agent should be running on the machine on which DB is installed with correct manager IP and port
./dbagent jamconshost=<ManagerIP> jamconsport=<ManagerPort>
Note: On aix, either dbagent needs to run as root user or set the suid to root for dbagent binary.
3.            To verify cross tier functionality, go to Targets->Middleware->JVM Diagnostics. Select JVM on left Panel and click JVM->Threads->Real Time Analysis page for the JVM if you encounter a thread that is in the DB Wait state, it should be a hyperlink so you can follow the thread into the Database pages and see its database session information including the SQL that it executes.
In addition, if monitoring is started, data would appear in Top DBStates and Top SQLs table and charts.

Tuesday, October 05, 2010

Real User Experience Insight (RUEI) - Moniforce

RUEI stands for Real User Experience Insight. RUEI can help organizations to understand the real end user experiences, identify issues and fix them before they cause losses.

RUEI works on Network Protocol Analysis (NPA) technology. It doesn't require any modification, changes or instrumentation in application. Because of it's passive monitoring approach, it's an ideal solution in production env.

RUEI is based on 3 layered architecture:
1. Data Collector
2. Data Processor
3. Data Presenter

1. Data collector
is responsible for collecting raw data and pass it as input to Data processor.  Data can be collected either via SPAN port or Network Tap.

2. Data Processor
is responsible for processing the raw data into proper OLAP datasets. It gets all URLs (webpages) and categorizes them based on application. These applications are defined and configured with RUEI.

3. Data Presenter
It's a J2EE based web application. That analyses and reports the data. Reports can be created on following criteria:
a. Time Period (year, month, week, day, hour, min)
b. client (country, provider, provider network, city, client IP)
c. server (IP address)
d. URL ( site, website, name, POST & GET arguments)
e. Page (application, group, page)
f. Customer name

RUEI 6.5 has been integrated with JVM Diagnostics(AD4J), Application Dependency and Performance (ADP/OCAMM) and Request Monitoring.