wM Integration Server Service ProfilerOnline Help |
![]() |
This page contains information about the current release of the Service Profiler.
This page contains information about Wrightia and additional documentation complementary to the Service Profiler.
This page contains the editing of settings that affect the overall tool behavior:
Setting | Description |
Freeze Snapshot |
Take a snapshot of the current profiling data and hold it in memory, using it as cached value for the next snapshot requests. This setting allows performing all the Data Analysis over the same snapshot, in opposition to always getting a new snapshot every time an operation is performed or a refresh is requested. If activated, the Profiler continues to gather profiling information about the running Services, but when a snapshot is requested the one cached (aka, frozen) is returned.
When the tool is stopped, this option is automatically set ON
to allow the analysis to continue working over the last know snapshot before the
Stop action.
When this setting is ON, an |
Field/Item | Description |
New Pattern |
New Regular Expression Pattern to add or test. When the [Save Changes] button is clicked this expression is added to the list. |
Check |
Click on the ![]() |
Remove |
Indicate which Name Patterns are to be removed from the list by checking the corresponding checkbox. When the [Save Changes] button is clicked all checked expressions are removed from the list. |
This functionality is only accessible to users associated with the Administrators ACL.
The entry page shows the current licensing information (Expiration Date, Status, etc.) and can be used to set a new valid License Key.
The functionality option is Set New License Key and not Edit License Key. There is a difference: for the first, the current License Key is never shown.
This is a sample Analysis Tool viewing the generated hierarchical snapshot in a flat representation, accumulating per Service.
The source gathered data is an invocation tree where the same Service may be called from different parents, but this particular view disregards the service interrelations and sums all values for each individually identified Service into a single accumulator set.
All detail columns can be sorted by clicking on the corresponding column header. Clicking multiple time toggles between Ascending and Descending. Default (first click) sorting order depends on the Data Type: numeric and time columns are sorted Descending while the others are Ascending.
Snapshot Header | Description |
Sample Key | A key that identifies the current snapshot. |
Server Name | The net name of the Integration Server host. |
Begin Time | The timestamp of when the profiling was started. |
End Time | The timestamp of when the snapshot was requested. |
Snapshot Details | Description |
Package | The name of the Package where the profiled Service is defined. |
Service | The fully-qualified runtime name of the profiled Service. |
Type |
The Service Type:
The service type icon is also a link to the BrowseSnapshot page, where the occurrences of the corresponding service will be automatically highlighted. The link is made on the icon, and not on the Service column, to save horizontal space on the page: due to webMethods styling for links, their text appears as bold and this would widen considerably the Service table column. |
Call Count |
The accumulated number of times the Service has been invoked. The Service can be called from a number of other Services and has a Call Count for each of those calling nodes. However, this value sums all those counters. |
Error Count |
The accumulated number of exceptions the Service has raised. The Service can be called from a number of other Services and has an Exception Count for each of those calling nodes. However, this value sums all those counters. |
Own Code | Timings for the profiled Service Own Code. This means that is does not include the time spent in Services it calls, only the time it took executing its own functionality code. |
With Child Code |
Timings for the profiled Service Own Code plus the time spent in Services it calls. The With Child... columns have defined a tip label showing the minimum and maximum timing values the corresponding Service took on a single call. Just place the mouse cursor over the table cell and the tip will appear for a short while. |
Elapsed | Clock time passed from the beginning of the call until it ends. |
Spent | Actual time spend in the CPU doing work. |
Additionally, there are filtering options that further limits the amount of data when the page is refreshed, by means of clicking on the [Refresh] button. These options are:
This is a sample Analysis Tool that, based solely on the number of Services for each package present in the snapshot against the universe of services defined in those packages, calculates a percentage of services used per package.
The Package and the % columns can be sorted, by clicking on the corresponding column header. Clicking multiple time toggles between Ascending and Descending.
Each package name (that contains Services defined) is presented as a link to a new page where the complete list of Services from that package is presented, together with an indication on whether is has been used/invoked or not while the profiler was Active.
Additionally, there is a filtering option that changes the amount of data when the page is refreshed, by means of clicking on the [Refresh] button. The option is:
This Analysis Tool simply shows the tree of called Services.
Placing the mouse cursor over the node name will show a tip with context summarized information.
By clicking on the node name, contextual detail information is shown in the panel on the right:
There are no sorting options: the root nodes are always ordered ascending.
The Package Exclusion Patterns and the Minimum Elapsed Time filtering options are only applied to the root nodes.
Option | Description |
![]() |
Expand all tree nodes. |
![]() |
Collapse all tree nodes. |
Service Name |
Locates all occurrences of a service name in the call tree.
Enter a fully qualified service name and press |
![]() |
Clear all highlighted tree nodes (does not deselect any currently selected tree node). |
Minimum Elapsed Time |
Applied only to root services. Only shows root nodes for which the Elapsed Time is above the stated value. The filter is applied by pressing the [Refresh] button. |
On the tree nodes, which represent Service Calls, there may appear some visual hints overlaid to the node icon that give it some extra meaning. These tree node visual hints are explained in the table below.
Tree Node Hint | Description |
![]() |
False root. This can only occur on the node that is representing a Top Level Service or Root Service, i.e., a Service at the top of the tree. A False root occurs when the Service Profiler is started, a service running path is already on the run and the first collected data happens in the middle of the call stack: for the Service Profiler this is a root because its has no recollection of the services up in the call stack. However, it is recognizably not a true Top Level Service because its parent is not null. |
![]() |
This hint indicates that the Service has raised exceptions. Select it to view its details, where an exception count is also presented. |
Note: | The View Per Service reports accumulated timings per service independently from its position in the calling tree. This may induce timing differences for a specific node by comparison because that service may be called by different parents which may even be currently filtered out. |
Note: |
Some service nodes that are presented in the root may in fact not be top-level services.
They may happen to be on the root node just because they were first scanned after the time when the profiler was started. These are called false roots are visually hinted. |
The information on the Service Counters snapshots is only for top-level
services that have already finished running.
While the top-level service is still running in some thread, its call path gathered timing and counts information is
kept internally and only merged to the Service Counters when it finally returns.
This analysis page shows the threads that are currently running Services and also allows some insight over what services are currently running on the Integrations Server.
This analysis page is particularly interesting if there are top-level services that are taking a considerable amount of time to run from-end-to-end.
The detail information about each node is very similar to the one presented by Browse Snapshot with some differences:
Option | Description |
![]() |
Expand all tree nodes. |
![]() |
Collapse all tree nodes. |
Service Name |
Locates all occurrences of a service name in the call tree.
Enter a fully qualified service name and press |
![]() |
Clear all highlighted tree nodes (does not deselect any currently selected tree node). |
On the tree nodes, which represent all Service Calls made in the context of the top-level service in that thread, there may appear some visual hints overlaid to the node icon that give it some extra meaning. These tree node visual hints are explained in the table below.
Tree Node Hint | description |
![]() |
False root. This can only occur on the node that is representing a Top Level Service or Root Service, i.e., a Service at the top of the tree. A False root occurs when the Service Profiler is started, a service running path is already on the run and the first collected data happens in the middle of the call stack: for the Service Profiler this is a root because its has no recollection of the services up in the call stack. However, it is recognizably not a true Top Level Service because its parent is not null. |
![]() |
This hint indicates that the Service has raised exceptions. Select it to view its details, where an exception count is also presented. |
![]() |
This hint indicates that the Service is part of the thread call-stack. It is not the service currently running but it is on the call path and has itself called another service. |
![]() |
The node with this hint is the Service actually running within the thread.
|
Note: |
Service call count of 0 (zero).
The service call count is only incremented when the call is completed and returns the control back to the caller. This is also true for the timings and other counts. So, the displayed call count value, exception count, elapsed time, etc., for each service is only for calls that have already finished. When the service is first called, and is still on the thread call-stack, its call count is 0 (zero). |
Note: | The Package Exclusion Patterns is only applied to the root nodes. |
Note: | This dashboard snapshot is not affected by the Freeze Snapshot setting. So, everytime the page is loaded, or the Refresh button is clicked, a fresh snapshot of the threads is taken. |
Note: |
Some service nodes that are presented in the root may in fact not be top-level services.
They may happen to be on the root node just because they were first scanned after the time when the profiler was started. These are called false roots are visually hinted. |
This functionality allows exporting the current snapshot to a file.
When you choose the file format/type, adequate options are shown corresponding to the file format/type.
When the [Generate File] button is clicked, the file generation process is started. Upon completion, and on success, you are presented with a new page with a file name link.
The link is intended to be used as a Save As... option to save it to your local disk.
Note: |
The snapshot used by the Export, is not affected by the
Package Exclusion Patterns.
So, all the collected Services are included in the exported data. |
Note: |
This dashboard snapshot is affected by the Freeze Snapshot
setting.
So, if a snapshot is frozen, the Freeze Snapshot icon is visible and the exported data relates to it. |