This OBE describes how to monitor application performance,
diagnose application performance problems and find the root cause of a problem
using Grid Control 10g Release 2.
It also describes how to seamlessly monitor a complex middleware deployment
with multiple Application Server Farms, each Farm with many clusters, High Availability
Groups and Applications.
Approximately 1 Hour
This OBE covers the following topics:
Place
the cursor over this icon to load and view all the screenshots for this tutorial.
(Caution: Because this action loads all screenshots simultaneously, response
time may be slow depending on your Internet connection.)
Note: Alternatively, you can place the cursor over each individual icon in the following steps to load and view only the screenshot associated with that step.
The screenshots will not reflect the specific environment you are using. They are provided to give you an idea of where to locate specific functionality in the Oracle Enterprise Manager 10g Grid Control console.
Web-based applications running in production in general are deployed on a set of middleware components and databases. Most of the time, application performance problems are identified and reported by end-users accessing the application. Diagnosing and resolving problems in these complex environments are time consuming tasks. End-users continue to experience poor performance until the problem is resolved.
Grid Control 10g Release 2 allows administrators to model applications and their relationships with the system components running the application. This allows administrators to monitor applications and correlate application performance with underlying system components performance. Comprehensive modeling and monitoring of an application with its system components help administrators to quickly identify and resolve any performance problems.
Grid Control's Application Server Diagnostics solution
allows application administrators to proactively monitor end-user performance.
Administrators are aware of end-user performance problems even before end-users
report them. The Application Server Diagnostics solution enables administrators
to quickly isolate performance problems to a specific tier. They will be able
to diagnose the cause of the performance problems to the right application component,
down to the offending JSP, Servlet, EJB method or SQL.
Grid Control 10g Release 2 allows administrators to monitor Application Servers
in a scalable manner, comprehensively, and cost-effectively. Statistical roll-ups
of monitoring metrics enable administrators to significantly reduce the time
spent on monitoring the Grid environment, while increasing the speed of resolution.
Before performing the tasks mentioned in the OBE, you should have already discovered at least one Oracle Application Server farm, cluster and an instance. You should have also deployed the PetStore Web Application to the Oracle Application Server instance.
Linda is responsible for monitoring one of her company's production
web-based applications. Her production deployments have complex configurations
with multiple Application Server Farms and databases. Each Farm has multiple
clusters, high availability groups and applications. Many users all over the
world are accessing this production application. She has to make sure that all
users of this application are experiencing good performance, especially users
accessing from the UK office. She has to proactively monitor application, identify
performance problems and quickly resolve them.
This section covers the following topics:
|
|
Monitoring End-User Performance |
|
|
Monitoring Page Watch List and Regions |
|
|
Diagnosing Request Performance |
|
|
Playing Interactive Transaction Trace |
End-User Performance monitoring/Page Performance monitors end-user performance. This will help administrators determine the slowest URLs, slowest domain, slowest visitor and slowest web servers. Administrators can perform complex analysis using "Analyze" feature Perform the following steps to monitor the end-user performance and find the slowest visitor in the domain:
|
1. |
Open the browser and enter the following URL: http://<management service hostname>.<domain>:<port>/em/ The default port value on a clean machine is 7777. However, if there are other instances running on the machine, then the port may be different. The login page will be displayed. Enter the User Name and Password, and then click the Login button.
|
|
2. |
Click the Targets tab.
|
| 3. |
Click the Web Applications subtab.
|
| 4. |
Click the Pet Store Web Application.
|
| 5. |
Click the Page Performance subtab.
|
| 6. |
You will see some data in the 'Slowest Response Times' section. Select Visitor from the View By drop-down list.
Note: If you do not see any Page Performance data, go to the 'Monitoring Configuration' page and click on the 'Manage Web Server Data Collection' link. Make sure that there is a Web Server configured and the 'Collection Enabled' box is checked. If there are no Web Servers on this page, click on the Related Link 'System Configuration' and make sure you are using a Petstore system and the Web Cache component is checked as a 'key component'.
|
| 7. |
You will the slowest response times based on the visitors that accessed your application. Select URL from the View By drop-down list.
|
| 8. |
Click the slowest URL from the list to drill-down further and see its performance.
|
| 9. |
Here you get to see additional details about the performance of a particular
page you are monitoring. The performance of a particular page can vary
depending upon the system load, the number of open connections, or the
performance of supporting components, such as the Web server or the backend
database. Reviewing the response time over a longer period of time can
help you identify trends and regular time periods when there is a performance
bottleneck. Click the Analyze button.
|
| 10. |
Analyze URL page will help you scope the performance of a URL within a combination of any of the axis such as URL, domain, region, or Web server.
|
Page Watch List allow you to monitor the most important pages
regardless of their performance. You can create a Page Watch List with the URL
to that page. Regions are group of domains and subnets. You can focus on end-users
performance for particular geographical locations by defining the region as
a group of domains or subnets. Perform the following steps to define a page
watch list item and monitor them:
|
1. |
Click the Web Application locator link to return to the Page Performance page.
|
|
2. |
Click the Monitoring Configuration subtab.
|
| 3. |
Click the Manage Watch List link under the Web Application Tasks section.
|
| 4. |
Click the Add button to add the watch list URL.
|
| 5. |
Specify the name as Verify and URL as /petstore/control/verifysignin. Click the Submit button.
|
| 6. |
You can see that the URL is added to the watch list. Click the Web Application locator link to return to the Monitor Configuration page.
|
| 7. |
Click the Manage Regions link under the Web Application Tasks
section.
|
| 8. |
Click the Add button to add the region.
|
| 9. |
Specify the name as USA Oracle and specify the domain name as us.oracle.com. Click the OK button.
|
| 10. |
You can see that the Region and the domain is added. Click the Web Application locator link to return to the Monitor Configuration page.
|
| 11. |
Click the Page Performance subtab.
|
| 12. |
On this page now you can see the URL you specified in the Page Watch List. You can also view the Slowest Response Times based on the Region. Select Region from the View By drop-down list.
|
| 13. |
You can see the Slowest Response Time based on the region Oracle USA defined by you.
|
Request Performance provides in-depth historical details about the performance of all URLs accessed by all users. It will help you diagnose page performance problems identified using End-User Performance monitoring or beacon monitoring. You can perform following tasks to isolate and pinpoint to the cause of the problem:
Perform the following steps to monitor request performance:
|
1. |
Click the Request Performance subtab.
|
|
2. |
You will see the data for the 'Slowest Requests by Application Server Average Time' section. Click the slowest request from the list.
Note: If you do not see any data, go to the 'Monitoring Configuration' page and click on the 'Manage OC4J Data Collection' link. Make sure that there is an OC4J configured and the 'Collection Enabled' box is checked. If there are no OC4Js on this page, click on the Related Link 'System Configuration' and make sure you have are using a Petstore system and the OC4J component is checked as a 'key component'.
|
| 3. |
Click the link for J2EE TIme (ms) to drill down on the slowest request to view a breakout of servlet, JSP, EJB times.
|
| 4. |
This page can be used to review the performance of a J2EE component for
a specific request. The specific request is listed in the request field
just below the page title. The data in this page can be compared with
Request Performance Monitoring data to obtain a complete, end-to-end view
of your application performance. Use the Request Processing Time and Load
chart to investigate the impact of server activity on the request response
time. Note the number of hits versus the time spent processing each of
the J2EE subsystem components.
Use the Processing Time Breakdown chart to analyze the middle tier at the subcomponent level. This allows you to make informed and accurate decisions in order to tune or repair the appropriate elements of a Web application. Analyze each J2EE subsystem component further by drilling down on the servlet, JSP, or EJB time to view invocation details. Click the Correlate Performance link to correlate performance of this URL with other system component metrics
|
| 5. |
From this page you can correlate performance of this URL with other system component metrics to see if there are other system-related factors that may have affected the performance of this URL. Click the URL Performance in J2EE locator link to switch back to the J2EE performance page.
|
| 6. |
Click the Processing Calling Stack link under the Performance Details Links section to view the full call processing stack for a request.
|
| 7. |
Use this page to review performance data for all the J2EE subsystem components
called by the selected URL. By understanding the relationship between
the components and order in which components are called, you can isolate
specific performance issues and make better decisions about where to focus
your application tuning efforts. This page is part of the Middle-Tier
Request Performance Monitoring features of Oracle Enterprise Manager.
Click the Web Application locator link to return to the Request Performance
page.
|
| 8. |
Select Database Server Average Time from the Slowest Requests By drop-down list to determine the slowest URL by Database time.
|
| 9. |
Click on most expensive Database time in Database Server Average column.
|
| 10. |
Select Last 7 Days from the View Data drop-down list.
|
| 11. |
Click the Database time link under Processing Time Breakdown section to view all SQLs executed.
|
| 12. |
Click on most expensive SQL Statement.
|
| 13. |
Use this page to view details about a specific invocation of a Database component, such as a JDBC connection, or for a specific SQL statement executed by a JDBC connection.
Click the SQL Statement Analysis link.
|
| 14. |
Select the database that is storing the petstore schema and click the Select button.
|
| 15. |
Specify the credentials for the SYS user and click the Login button.
|
| 16. |
Use the SQL Details Statistics page to:
There may be times when the statistics are not available because the statement has aged out of the shared pool.
|
A beacon transaction has performance problems and the problems were identified as server side problems. In this case, you can go to the Transaction homepage, interactively play the transaction from browser and get the detailed server side diagnostics of that particular run. Following diagnostics tasks can be performed on transaction trace results:
Perform the following steps to manage interactive transaction tracing:
|
1. |
Click the Web Application locator link to return to the Request Performance page.
|
|
2. |
Click the Test Performance subtab to view the performance of your transactions.
|
| 3. |
Go to the home page of one of Web transactions/tests by clicking on the name of transaction.
|
| 4. |
Click the Play With Trace button. This will replay your transaction
interactively
|
| 5. |
Click the Show Results button to see the trace results.
|
| 6. |
Specify the ias_admin password and click the OK button.
|
| 7. |
This page displays the performance and trace information for the transaction you just played using the Play with Trace button on the Web Transaction Home page. For each transaction you trace, the Trace Results - Overview page provides you with a high-level view of the time spent processing server-side components. Click the URL with most EJB time and find the EJBs taking more time.
|
| 8. |
Use this page to analyze the time spent processing a particular server-side component type. The types of server-side components include Servlet/JSP components, EJB components, and JDBC/SQL components. Click the Trace Results locator link.
|
| 9. |
Click the URL with most database time and find the SQLs taking most time.
|
| 10. |
For JDBC/SQL components, Enterprise Manager lists all the SQL components that were processed by the current transaction or by the specific URL you selected from the Trace Results - Overview page. For each SQL statement, the table provides performance metrics that you can review to compare the performance with other SQL statements to identify SQL statements that may be acting as performance bottlenecks.
|
The previous section describes the performance monitoring and diagnostics flow from the end-users' perspective. There may be cases where the system components are experiencing problems but have not yet affected the end-users. This section describes application monitoring and diagnostics from the system components perspective. This section covers the following topics:
|
|
Monitoring Farms |
|
|
Monitoring Cluster |
|
|
Viewing Cluster Topology |
|
|
Monitoring J2EE Applications |
In this topic you will see how to monitor many as one approach to monitor Application Server Farm. You will view overall health of Server Farm. Aggregated metrics presented at the Farm are good representatives of performance of the Farm. Perform the following steps to monitor your farm:
|
1. |
Click the Targets tab.
|
|
2. |
Click the Application Server subtab.
|
| 3. |
Click the Oracle Application Server Farm link from the list.
|
| 4. |
Use the Oracle Application Server Farm Home page to view a summary of
the most critical information pertaining to OracleAS Farm and its members.
This page helps you monitor the overall health of your OracleAS Farm by
providing information about the generated alerts, policy violations, configuration
changes, and so on. From the Oracle Application Server Farm Home page,
you can navigate to other pages in Enterprise Manager that might be helpful
in accomplishing your given task. Click the Metrics subtab.
|
| 5. |
Use the Oracle Application Server Farm Metrics page to quickly assess the performance of OracleAS Farm. The key pre-defined metrics help you analyze the HTTP response time and its throughput, the servlet's response time and its throughput, the Web Cache hit rate per second, and the active sessions. Click the Members subtab.
|
| 6. |
Use the Oracle Application Server Farm Members page to examine the health of the members of OracleAS Farm. You can view a list of members available in the OracleAS Farm; check their status; and start, stop, or restart each of them. You can check the status of the target members by scanning the Status column. Note that the OracleAS Farm does not have a status of its own; its status depends upon the status of its member targets. You can control the member targets by starting, stopping, or restarting them. Select the member target from the table and click Start, Stop, or Restart according to the purpose.
|
In this topic you will view overall health of the cluster. Aggregated metrics presented at the cluster are good representatives of performance of the cluster components. Perform the following steps to monitor your cluster:
|
1. |
Click the Oracle Application Server DCM Managed Cluster link from the list.
|
|
2. |
Use the Oracle Application Server DCM Managed Cluster Home page to view a summary of the most critical information pertaining to Oracle Application Server DCM Managed Cluster (OracleAS DCM Managed Cluster) and its members. This page helps you monitor the overall health of your OracleAS DCM Managed Cluster by providing information about the generated alerts, policy violations, configuration changes, and so on. Click the J2EE Applications subtab.
|
| 3. |
Here you see all J2EE Applications deployed and their OC4J instances.
Check if the load is properly distributed across all J2EE Application
instances of cluster by viewing the metric "Servlet/JSP Requests
Processed".
|
The Topology page helps you to know what application servers and components are running on which hosts, how these components are related to each other, and how requests are routed through different layers of the system. View the topology page to identify the routing associations between the components of the farm. You can find if there are any configuration problems in routing requests by looking at routing details view of the topology. To view the cluster topology, perform the following steps:
|
1. |
Click the Topology Subtab.
|
|
2. |
This page displays a view across the cluster. Select Routing Details from the View drop-down list, and click the indicated area to zoom in the current view. Routing Details shows the protocol and port used by various components to route requests to other components in the topology. Routing Details views enable the administrator to immediately fix various topology configuration problems. You can use the overview section to zoom in or zoom out the current view.
|
| 3. |
The Selection Details section is used to display the information about the selected target. When no target is selected, this section is empty. Click any of the HTTP Server targets to get more information about the target.
|
| 4. |
The Selection Details now displays details such as Name, Type, and Host.
It also shows both critical and warning alerts and the status of the target.
Select the Show all targets connected to this OracleAS Cluster
check box.
|
| 5. |
By selecting this check box, you can see all other targets connected to this cluster. Select Host from the View drop-down list.
|
| 6. |
The Host view displays the application server components grouped by host. It provides all different hosts of the farm with visual representation of all the components running on the host.
|
J2EE Application Monitoring features can be used to monitoring and find any potential problems. While monitoring the J2EE applications following tasks can be performed.
Follow the steps described below to perform above listed tasks.
|
1. |
Click the Members subtab.
|
| 2. |
Click the Application Server instance.
|
| 3. |
Click the Top J2EE Applications subtab to see the most active J2EE Applications across the J2EE servers (OC4J instances) in this Oracle Application Server.
|
| 4. |
Use this page to view a list of the top 25 OC4J applications running on the application server instance. This page can help you quickly assess which applications are most active and which are using the most system resources. Click the Petstore application to get a more detailed view of its performance and usage.
|
| 5. |
Use this page to monitor the performance of your application. The response performance charts are displayed on this page. You may click on each chart to view metric details. From the Application: Performance page, you can navigate to other pages in Enterprise Manager that may be helpful in accomplishing your given task. This section contains links to related application performance information: top servlets, top JSPs, and top EJB methods. d) Click the Top JSPs link at the bottom of the page
|
| 6. |
Use this page to view the top JSPs (those most requested or slowest to process). From this page you can find the JSPs that has:
Similar analysis can be done for Top EJB Methods and Top Servlets. Click the Application Servers tab.
|
| 7. |
Click the Application Server 10.1.0.3 target as1013.stacc04.us.oracle.com from the list to view the JVM Metrics. View advanced JVM Metrics to get detailed memory and garbage collection metrics. This is only supported on Oracle Application Server 10.1.3 and above.
|
| 8. |
Click the OC4J_edge OC4J component .
|
| 9. |
Click the Performance property page.
|
| 10. |
Click the JVM Metrics link from the Performance Links section.
|
| 11. |
Click the first JVM ID.
|
| 12. |
Use the OC4J JVM Performance page to monitor the performance of your
OC4J JVM instance. Resource Usage
Response section contains response metric information for servlets and JSPs, and EJBs for the OC4J JVM instance. Memory Pools table provides metric information about the memory pool. It provides the names of the different memory pools, and for each of the pools, it provides the amount of memory used and the maximum amount of memory used since the JVM was started. The Garbage Collectors table provides metric information about the garbage collectors. It provides the names of the different garbage collectors, the number of collections each of it has had, and the total time taken by each of the collectors to complete the collection process.
|
In this lesson, you learned how to:
|
Diagnose Oracle Application Server
|
||
|
Monitor Middleware
|
||
Place the cursor over this icon to hide all screenshots.