Use
You use this procedure to monitor AGate synchronization activity with the AGate lock monitor in ITS Administration.
The AGate lock monitor tracks synchronization objects and events (known as locks) by their location (source code file and line) and unique lock object ID.
The functions of the AGate lock monitor allow you to:
Before you can display any of these statistics, you must enable the AGate lock monitor explicitly in ITS Administration.
Procedure
You see a screen similar to the following:
Parameter |
Description |
|
PerfLckMonitoring |
0 |
Lock monitoring switched off (default). |
1 |
Lock monitoring switched on. |
You see several functions in an expanded directory structure.
Both the above functions display a table similar to the following:
This table contains the following information:
Column |
Description |
(First column) |
Enumerator. |
Line |
Line number in source code file where lock occurs. |
File |
Source code file name. |
Count |
Number of times lock has previously occurred with or without wait. |
Lock Object ID |
Unique identifier of lock. |
Wait Count |
Number of times lock has previously occurred with wait. |
Type |
Lock type (see table below). |
Wait Time |
Cumulative wait time (in seconds) for a lock in the past. |
Lock Time |
Current wait time (in seconds) for a lock which has been requested but is occupied by an other AGate workthread. |
Status |
Current lock status: If there is no value, the status is "not requested". |
LO Count |
Lock object count. This value specifies how many distinguishable locks are recorded for a particular line in a source code file. The AGate lock monitor can record up to five distinguishable locks for each line of a source code file in this table. If there are more than five distinguishable locks, the fifth lock and all subsequent locks are recorded cumulatively. |
The table below lists the possible values and names for lock types in the Type column:
Lock Type |
Lock Name |
Description |
0 |
Critical section object |
This lock type is mainly used for AGate workthread synchronization. |
1 |
Mutex object |
This lock type is used for AGate process and workthread synchronization. |
2 |
Semaphore object |
|
3 |
Event |
This lock type indicates a wait for an event to happen. Events usually have long wait times and are often in a locked (that is, waiting) state. |
4 |
External API |
This lock type indicates waiting for a response from an external API or component call. An example of this lock type is a call to an R/3 System. The time between sending a request to an external API and receiving a response is counted as wait time. Communication problems with R/3 could be caused by excessive lock times. Often, API code is linked to the AGate executable. |
5 |
Other |
|
6 |
Thread |
This lock type indicates waiting for an external application, which has nothing to do with the AGate. |
7 |
File |
This lock type indicates waiting for an I/O file operation. |
For more detailed information about the AGate lock monitor, see
ITS Installation Tuning.