Using the WebLogic Diagnostic Framework Console Extension
Working with Method Performance Charts and Graphs
Method performance charts and graphs plot method performance information that is based upon the real-time and historical views of method performance that can be captured through the WLDF instrumentation capabilities.
The following sections describe how to work with method performance charts and graphs:
For general information about working with metrics charts and graphs and with method performance charts and graphs, see Working with All Charts and Graphs.
Making Instrumentation Data Available for Method Performance Charts
You must configure WLDF instrumentation outside of the WLDF Console Extension to make instrumentation data available for creating method performance charts and graphs. The following criteria must be met:
A WLDF system resource must be created and targeted to the server. Create the system resource by creating a weblogic-diagnostics.xml descriptor. You can do that using the WebLogic Server Administration Console, using the WebLogic Scripting Tool (WLST), or by creating it directly in an editor.
Instrumentation in the targeted WLDF system resource must be enabled.
Application instrumentation must be enabled with a META-INF/weblogic-diagnostics.xml descriptor in the application
Application instrumentation descriptors must use TraceElapsedTimeAction diagnostic actions attached to "Around" type diagnostic monitors. For example, a descriptor could contain the following:
See “Diagnostic Monitor Library” in Configuring and Using the WebLogic Diagnostic Framework for a list of “Around” type monitors.
See “Configuring Instrumentation” in Configuring and Using the WebLogic Diagnostic Framework for more information about how to accomplish these tasks outside of the WLDF Console Extension.
If instrumentation is not configured and enabled for the selected server, no data will appear in the WLDF Console Extension Requests tab.
Selecting a Server
The Requests tab displays instrumented methods available for a single server at a time. The Server drop-down list displays all the servers in the domain. To select a different server:
Select the server from the Server drop-down list.
Click the Reload button. The metrics for the selected server are displayed. If, however, the selected server is not running (is currently shut down), the drop-down list reverts back to the previously selected server.
Creating Method Performance Charts and Graphs
To create and modify charts and graphs based on instrumented methods, you drag methods from the Requests tab to the View panel to create or modify a method performance chart. Each graph shows the elapsed invocation times of the selected method over time.
Figure 8-1 Requests Tree and a Method Performance Chart
Displaying Requests and Methods in the Requests Tab
The Requests tab shows information about requests that flow through instrumented code. When such requests execute instrumented methods, instrumentation events are generated at the start and end of the methods.
The Requests tab includes a tree of method calls for identified requests. At the top level, the tree shows all identified requests from the specified server within a specified interval, as shown in Figure 8-2.
Figure 8-2 Requests Listed in the Requests Tab
Requests are identified by:
A unique request ID
The name of the application
Information about the top level method executed by the request
The execution time of the request is shown by a horizontal bar, whose length is proportional to the relative weight of the node with respect to all its siblings at the same level in the method invocation tree.
Expanding a request node shows its top level instrumented method, as shown in Figure 8-3. Within the call tree, if a method calls other instrumented methods, they are shown as its children. A method node in the call tree shows the instrumented class and method name.
Figure 8-3 Expanded Request Node in the Requests Tab
Displaying Details About Requests
To display details about a request listed in the Requests tree, click the string that identifies the request, not the (Expand) or (Collapse) buttons. The information is displayed in the panel below the tree, as shown in Figure 8-4.
Figure 8-4 Details About a Request
The attributes listed in this panel are described in Table 8-1.
Table 8-1 Request Values Displayed in Request Panel
Attribute
Description
Class Name
A Java class containing a method that handled this request.
Method
The method that handled this request.
Count
The number of times this method handled this request.
Total Time (ms)
The total time taken by this method to handle this request, in milliseconds.
Average Time (ms)
The average time taken by this method to handle this request, in milliseconds.
Scope
The scope of the class containing the instrumented code.
Module
The application module containing this class.
Signature
The signature of the method.
Displaying Details About Instrumentation Events
To display details about the instrumentation event associated with a method invocation, click the method invocation node. The information is displayed in the panel below the call tree, as shown in Table 8-2.
Figure 8-5 Details About an Event
The attributes listed in this panel are described in Table 8-2.
Table 8-2 Event Values Displayed in Request Panel
Attribute
Description
Record ID
Unique identifier to identify this record in the log.
Timestamp
Date when this event was generated.
Context ID
Diagnostic context information to correlate messages coming from a specific request or application.
Transaction ID
The identifier for the transaction that initiated this diagnostic event. Present only for messages logged in the context of a transaction.
User
The user ID under which this diagnostic event was executed.
Type
Type of diagnostic action triggered by this diagnostic event.
Domain
Domain in which this event was generated.
Server
The name of the WebLogic Server instance on which this event was generated.
Scope
Server or application scope in which this diagnostic event was generated.
Module
Diagnostic module through which this diagnostic event was generated.
Monitor
Diagnostic monitor that triggered this diagnostic event.
File Name
Name of the Java file containing the instrumented method that generated this diagnostic event.
Line Number
Line in the source file where instrumented code exists.
Class Name
Name of the Java class containing the instrumented method.
Method Name
Name of the instrumented method that generated this diagnostic event.
Method signature
The signature of the method that generated this diagnostic event.
Payload
The payload.
Context Payload
The diagnostic context payload associated with diagnostic event.
Dyes
The diagnostic dyes associated with the method that initiated this event.
Displaying Details about Requests and Methods in the Requests Tab
You can display details about the requests and method calls by placing the mouse pointer over items in the tree of requests and methods displayed in the Requests tab:
Point to a request node to display the request ID, start time, and elapsed time.
Point to a method invocation node to display the method elapsed time, percentage with respect to the parent method, and application name.
Selecting a Time Interval for Obtaining Request Data
You can create a graph based on events executed during a specified time interval, as described in the following table:
To specify a predefined interval that ends in the present
From the Interval drop down list, select one of the following:
Last 5 minutes to display events data for the previous five minutes
Last 15 minutes to display events data for the previous fifteen minutes
Last 30 minutes to display events data for the previous 30 minutes
Last 1 hour to display events data for the previous hour
To specify a custom interval that ends in the present
From the Interval drop down list, select Last dd hh mm. The Duration (DD HH MM) text entryfield appears.
Enter a value for the interval, in the format DD HH MM, where
- DD is the number of previous days
- HH is the number of previous hours
- MM is the number of previous minutes
To specify a custom interval that may not end in the present:
From the Interval drop down list, select Custom. A set of fields for entering the duration appears.
Click the Start drop down control to display a calendar. Select a start date.
Specify a starting hour and minute by replacing HH MM in the text entry box with the starting hour and minutes.
Enter a duration by replacing DD HH MM in the Duration text entry box with the desired days, hours, and minutes.
Displaying Details About Method Performance Charts
You can display details about method performance charts and graphs displayed in the View panel:
Point to a data point in a graph to display the time the data point was plotted and its value when it was plotted, in nanoseconds.
Point to a chart’s scroll bar to display the beginning date and time and ending date and time for the visible interval. This tooltip also reports if the interval is the current interval.
Point to a chart’s legend to display the following for each entry in the legend: