In addition to discovering business components, Business Transaction Management can discover how components relate or depend on one another by observing message traffic as it flows from one component to the next. Dependency information provides an accurate picture of how your composite application is really behaving. It might alert you to the fact that certain components are not being called, and it provides a basis for defining business transactions.
You can view dependencies between services, endpoints, (service instances), or operations. Each dependency map provides information appropriate to the element selected.
You can also delete dependencies if dependency graphs show out-of-date dependencies.
No matter what type of dependency it is showing, a dependency diagram is rooted in the selected object and displays all the links that lead out from and into that starting point. Anything that is not directly upstream or downstream of the root object is not shown. To display these additional elements, click on the wrench icon to display the Layout and Show-Related controls.
The default value for Show Related is None, meaning that only elements directly linked to the root object are shown.
Select One to show the next level of objects indirectly linked to the root object, or select All to show all objects linked to the root object.
To view service dependencies
Select the Services To Endpoints view or the Services to Operations view in the Navigator.
Double click on the service of interest to open the tab area if it is not already open. If it is open, just select the service of interest.
Select the Dependency tab. Business Transaction Management displays the dependencies between the selected service and the other services with which it interacts. Arrows display traffic flow; their thickness indicates relative throughput size.
You can move the cursor over the services displayed to have Business Transaction Management display their component type.
Select the Services To Endpoints view in the Navigator.
Expand the service of interest to display its corresponding endpoints. A (logical) service might have several corresponding endpoints if the service has been replicated or if different endpoints are used for secure/unsecure communication.
Double click on the endpoint of interest to open the Tab area. If it is already open, just select the endpoint of interest.
Select the Dependency tab. Business Transaction Management displays the dependencies between the selected endpoint and the other endpoints with which it interacts. Arrows display the direction of traffic flow and relative throughput. For each endpoint, the host name and port for the container where the endpoint resides are also displayed. The means by which the endpoint is discovered is shown in parenthesis; the following table describes the possible types.
|Means of discovery||Meaning|
|observer||The endpoint was discovered by an observer|
|router||The endpoint was discovered by a router. (The existence of a hardware router was inferred based on discrepancies between the HTTP Host header and the physical address of the observed container(s).)|
|registered||The endpoint was manually registered|
|DTA||The existence of the endpoint was inferred based on outbound traffic addressed to it from an observed endpoint.|
As you pass the cursor over individual endpoints, Business Transaction Management displays the endpoint name, the container's host and port, and the service and component type of which the endpoint is an instance. Core measurements are also given.
Select the Services to Operations view in the Navigator. You can view dependencies between logical or physical operations. Logical operations are listed immediately under the service; physical operations are listed under logical operations. The name of a physical operation takes the form
endpointName on containerName
checkCredit.CreditServiceSOAP on uitest20:7011
Double click the operation of interest to open the tab area. If it is already open, select the desired operation.
Click the Dependency tab if it is not already selected.
The call chain containing the operation is shown.
Pass the cursor over the operation to display additional float-over help.
You might need to delete all dependencies if your application has changed and the dependency graph does not reflect these changes. Dependency data does not age out, so in those cases where the graph includes obsolete data, you might want to clear all dependencies and regenerate the graph by running more traffic.
To delete dependencies:
Select Delete Dependencies from the Admin menu
To regenerate dependencies, run more traffic.