Collector for SAP Enqueue Statistics for Locks
The technical name of the Collector for SAP Enqueue Statistics for Locks is /DVD/MON_CL_COL_ENQUEUE_STAT.
KPI Delta Overhaul
As of release 25.02, the majority of KPIs for Enqueue Server and Enqueue Server 2 have been overhauled and converted to delta monitoring instead of reporting the total cumulative numbers. Cumulative numbers in enqueue statistics are always increasing and can cause issues related to overflowing numeric values for default KPIs. Also, this provides a better overview of enqueue usage in the monitored time periods, and reported high delta values can indicate a potential issue on the monitored SAP system.
The KPIs that have been overhauled are no longer monitored by default monitoring profiles, but are still available in the customizing if they were previously monitored by any custom-defined monitoring profiles. You can find the list of KPIs that have been converted to delta monitoring in the chapter Obsolete KPIs for Enqueue Statistics.
This collector collects information about SAP enqueue statistics for locks. KPIs for enqueue statistics can help you to identify an enqueue lock table overflow or a bottleneck. These enqueue statistics can be collected for the following enqueue servers:
-
Enqueue Server: You can check the enqueue statistics for Enqueue Server in transaction SM12 by clicking Extras > Statistics.
-
Enqueue Server 2: You can check the enqueue statistics for Enqueue Server 2 in transaction SMENQ by clicking Server Administration and double-clicking Monitoring > Statistics.
Enqueue Server and Enqueue Server 2 provide different outputs for collected enqueue statistics. This collector automatically detects which enqueue server is installed and being used on the monitored system. Based on this detection, it collects only the KPIs that are relevant for a specific enqueue server:
Default KPIs Delivered with This Collector
The following default KPIs are delivered with this collector:
Enqueue statistics records can contain a larger value than the maximum value for INT4. In this scenario, the KPI value might not be collected as expected. You can handle these large number values by following the steps described in the chapter Troubleshooting Large KPI Values.
Default KPIs for Enqueue Server
If an old Enqueue Server is installed and being used on the monitored SAP system, the following default KPIs are collected:
KPI name |
Description |
Unit |
---|---|---|
DEQ_ALL_REQ_DLT | Number of releases of all locks of an LUW (logical unit of work) since the last run | Number |
DEQ_ERROR_DLT | Number of errors that occurred when releasing locks since last run | Number |
DEQ_REQUEST_DLT |
Number of release requests (DEQUEUE) since the last run |
Number |
ENQ_ARG_MAX_CNT |
Maximum number of different lock arguments that the lock table can contain |
Number |
ENQ_ARG_MAX_LVL |
Maximum number of different lock arguments stored simultaneously in the lock table |
Number |
ENQ_ARG_NOW_LVL |
Current number of different lock arguments in the lock table |
Number |
ENQ_BACKUP_REQ_DLT |
Number of update calls for which locks were forwarded since the last run |
Number |
ENQ_CLEAN_REQ_DLT |
Number of releases of all locks of an application server since the last run |
Number |
ENQ_COMPR_REQ_DLT |
Number of compress operations since the last run |
Number |
ENQ_ENTR_MAX_CNT |
Maximum number of elementary locks that the lock table can contain |
Number |
ENQ_ENTR_MAX_LVL |
Maximum number of elementary locks stored simultaneously in the lock table |
Number |
ENQ_ENTR_NOW_LVL |
Current number of elementary locks in the lock table |
Number |
ENQ_ENTR_P |
Usage of the SAP lock table |
% |
ENQ_ERROR_DLT |
Number of errors that occurred during lock requests since the last run |
Number |
ENQ_FILE_WRITE_DLT |
Number of write accesses to the file since the last run |
Number |
ENQ_FILE_WRT_BCK_DLT |
Number of write accesses to the backup file since the last run |
Number |
ENQ_OWN_MAX_CNT |
Maximum number of lock owner IDs that can be stored in the lock table |
Number |
ENQ_OWN_MAX_LVL |
Maximum number of lock owners stored simultaneously in the lock table |
Number |
ENQ_OWN_NOW_LVL |
Current number of lock owners in the lock table |
Number |
ENQ_REPORT_REQ_DLT | Number of operations for reading the lock table since the last run | Number |
ENQ_REQUEST_DLT | Number of lock requests since the last run |
Number |
ENQ_REQUEST_CNTD |
Number of lock requests per minute since the last run |
*/min |
ENQ_REQ_REJ_DLT | Number of rejected lock requests since the last run | Number |
ENQ_REQ_REJ_CNTD |
Number of rejected lock requests per minute since the last run |
*/min |
ENQ_TOTAL_TIME_DLT | Total time spent in the critical path of the lock table for lock operations since the last run | Sec |
ENQ_TOTAL_WAIT_DLT |
Total wait time of parallel processes before entering the critical path since the last run |
Sec |
ENQ_TOTAL_WAIT |
Total wait time of parallel processing before entering the critical path |
Sec |
ENQ_TOT_SER_TIME |
Total time spent in the enqueue server since the last run |
Sec |
ENQ_UPD_MAX_CNT |
Maximum number of open update requests with locks that have occurred so far |
Number |
ENQ_UPD_NOW_LVL |
Current number of open update requests with locks |
Number |
ENQ_VERIFY_REQ_DLT |
Number of verify operations since the last run |
Number |
Default KPIs for Enqueue Server 2
If a new Enqueue Server 2 is installed and used on the monitored SAP system, the following default KPIs are collected:
KPI name |
Description |
Unit |
---|---|---|
ENQ_SER2_ADMIN_REQUESTS_DLT |
Number of administration requests since the last run |
Number |
ENQ_SER2_AVG_NUM_SEARCH |
Average number in search results |
Number |
ENQ_SER2_AVG_NUM_TAKEOVER |
Average number in takeover replica |
Number |
ENQ_SER2_AVG_NUM_UPDATE |
Average number in update replica |
Number |
ENQ_SER2_BACK_REC_WRITTEN_DLT |
Number of backup records written since the last run |
Number |
ENQ_SER2_CPU_SER_TIME_DLT |
CPU time of enqueue server since the last run |
Sec |
ENQ_SER2_DATA_RECEIVED |
Received data |
GB |
ENQ_SER2_DATA_SENT |
Sent data |
GB |
ENQ_SER2_ERRORS_CONN_DLT |
Number of connection errors since the last run |
Number |
ENQ_SER2_ERRORS_SERVER_DLT |
Number of server errors since the last run |
Number |
ENQ_SER2_LOCKS_CONFIG |
Configured number of locks |
Number |
ENQ_SER2_LOCKS_CURRENT |
Current number of locks |
Number |
ENQ_SER2_LOCKS_PEAK |
Peak number of locks |
Number |
ENQ_SER2_LOCKS_TOTAL_DLT |
Total number of locks since the last run |
Number |
ENQ_SER2_LOCK_COLLISIONS |
Number of lock collisions |
Number |
ENQ_SER2_MAX_NUM_SEARCH |
Maximum number in search result |
Number |
ENQ_SER2_MAX_NUM_TAKEOVER |
Maximum number in takeover replica |
Number |
ENQ_SER2_MAX_NUM_UPDATE |
Maximum number in update replica |
Number |
ENQ_SER2_NETWORK_REQ_DLT |
Number of network requests since the last run |
Number |
ENQ_SER2_OP_ALL_DEQUEUE_DLT |
Number of dequeue all operations since the last run |
Number |
ENQ_SER2_OP_BACKUP_DLT |
Number of backup operations since the last run |
Number |
ENQ_SER2_OP_DEQUEUE_DLT |
Number of dequeue operations since the last run |
Number |
ENQ_SER2_OP_ENQUEUE_DLT |
Number of enqueue operations since the last run |
Number |
ENQ_SER2_OP_READ_DLT |
Number of read operations since the last run |
Number |
ENQ_SER2_OP_REMOVE_DLT |
Number of remove operations since the last run |
Number |
ENQ_SER2_OP_REM_ARG_PATT_DLT |
Number of remove argument pattern operations since the last run |
Number |
ENQ_SER2_OP_REM_OWN_PATT_DLT |
Number of remove owner pattern operations since the last run |
Number |
ENQ_SER2_OP_REPL_CONFIG_DLT |
Number of configure replica operations since the last run |
Number |
ENQ_SER2_OP_REPL_TAKEOVER_DLT |
Number of takeover replica operations since the last run |
Number |
ENQ_SER2_OP_REPL_UPDATE_DLT |
Number of update replica operations since the last run |
Number |
ENQ_SER2_OP_TOTAL_DLT |
Total number of lock operations since the last run |
Number |
ENQ_SER2_OVERFLOWS_LOCK_TAB_DLT |
Number of lock table overflows since the last run |
Number |
ENQ_SER2_OVERFLOWS_SESSION_DLT |
Number of session overflows since the last run |
Number |
ENQ_SER2_PROCESS_TIME_DLT |
Processing time for lock operations since the last run |
Sec |
ENQ_SER2_ROLL_IN_DLT |
Number of roll-ins of the connection since the last run |
Number |
ENQ_SER2_ROLL_OUT_DLT |
Number of roll-outs of the connection since the last run |
Number |
ENQ_SER2_TIMEOUTS_DLT |
Number of timeouts since the last run |
Number |
ENQ_SER2_WAIT_TIME_DLT |
Waiting time for lock operations since the last run |
Sec |
Parameters
The following parameters are used for this collector:
Parameter name |
Description |
Default value |
---|---|---|
BIG_NUMBER_DIVIDE_BY |
This parameter is used to divide the original values retrieved from the enqueue server (by default this value is set to 1 to keep the original values). If this value is increased to a value greater than 1, the original value is divided by this value. This is useful if the original value retrieved from the enqueue server is greater than the maximum integer value, as KPIs only support integer values. |
1 |
VALUE_OFFSET |
The offset value based on which the value from the relevant text row in the enqueue statistics is retrieved. |
23 |
Troubleshooting
Troubleshooting the Large Number Overflow Error for the KPI Value
-
In case the value of the enqueue statistics row is too large (greater than the maximum integer number), the following warning message is displayed: Overflow of big value for KPI '&1' (value divided by '&2').
-
To be able to handle and collect KPIs with the large values within this collector, you need to set a collector’s parameter BIG_NUMBER_DIVIDE_BY to a greater value than 1 (see the previous chapter for the parameter BIG_NUMBER_DIVIDE_BY ).
-
If this parameter value is increased and any KPI value is still greater than the maximum integer number, the following warning message is displayed: Unsupported calculated value for the KPI '&1'.
-
In this case, you must increase the parameter value to a higher value again to be able to calculate the KPIs.
-
For each warning message displayed by this collector, you can find additional details in the long text of this message, as mentioned in the chapter Additional details of the raised message.
Please keep in mind that after this division, the KPI value is lower than the real value.