Monitoring Performance
Prerequisites
The user account you use should be assigned to one of the Process Integration monitoring roles. For more information about which roles allow you to view monitoring information, see Monitoring Roles.
For the Adapter Engine: You can manage the collection of data using the following parameters of the XPI Service: AF Core service:
-
You can switch the data collection on and off using the profile.performance.runtime parameter.
-
The background job for data aggregation runs periodically. You can control the length of the period at which the system runs this job using the profile.runtime.interval parameter.
For more information, see the “Properties for XPI Service: AF Core” topic in the documentation for configuring Process Integration.
For the Integration Engine see Collecting Data on the Integration Server.
Context
When you want to obtain statistical data about the performance of message processing in the Adapter Engine and Integration Engine, you can use the performance monitor. Within this monitor, the performance is gauged by measuring the amount of bytes processed over a given time period.
The performance details provided by the monitor are useful for administrators who need to know the amount of time spent by messages at various points of their life cycle. These points (known as measuring points) are at the following stages of message processing:
-
Measuring Points of the Adapter Engine
-
MS:module:... (e.g. MS:module:CallSapAdapter, MS:module:sap.com/com.sap.aii.af.soapadapter/XISOAPAdapterBean) - processing time in the adapter module
- MS:stage:SI - Virus scan inbound
- MS:stage:BI - before Inbound XML Validation
- MS:stage:VI - after Inbound XML Validation
- MS:stage:MS - after Receiver Determination
- MS:Message_Put_In_Store - persist the message to the database
- MS:Message_Put_In_Disp_Queue - put the message in the dispatcher queue
- MS:Message_Wait_In_Disp_Queue - waiting time in the dispatcher queue
- MS:Message_Put_In_Queue - put the message in the processing queue
- MS:Message_Wait_In_Queue - waiting time in the processing queue
- MS:Message_Wait_Retry - waiting time between message retries.
- MS:Message_Update_Status - update the message status and persist the new status into the DB
- MS:stage:AM - after Mapping execution
- MS:stage:SO - Virus Scan Outbound
- MS:stage:VO - after Outbound XML Validation
- MS:stage:AT - end of transport processing block. End of messaging system processing and hand-over to adapter.
-
- Measuring Points of the Integration Engine
The Level describes the granularity of the time stamp collection. See transaction SXMS_IECONF, Category=PERF, F9, Parameter MEASUREMENT_LEVEL.
Central Integration Server Step Name
Level
Description
INTEGRATION_ENGINE_HTTP_ENTRY
1
Execution of HTTP Inbound Handler
PARSING_HTTP_ENTRY
2
Substep of INTEGRATION_ENGINE_HTTP_ENTRY: Parsing Incoming HTTP Request
MESSAGE_LEVEL_SECURITY_IN
2
Substep of INTEGRATION_ENGINE_HTTP_ENTRY: Decryption of Payload
INTEGRATION_ENGINE
1
PI Inbound handling Before Pipeline Processing
VIRUS_SCAN_INBOUND
1
Virus Check of Payload (Request, Inbound)
DB_ENTRY_QUEUING
1
Queuing Step (Inbound)
PERSIST_ENTRY_READ_MESSAGE
2
Read Data Streams from Database after step DB_ENTRY_QUEUING
PERSIST_ENTRY_BUILD_MESSAGE
2
Instantiate Message Object from Data Streams
PLSRV_XML_VALIDATION_RQ_XMS
1
XML Validation of Payload (Request, Inbound Handler)
LMS_EXTRACTION
1
Extraction of data from Payload (Lean Message Search)
LMS_EXTRACTION_GET_VALUES
2
Substep of LMS_EXTRACTION: Evaluation of Payload
LMS_EXTRACTION_ADJUST_VALUES
2
Substep of LMS_EXTRACTION: Execution of Badi for Adjustment of Extracted Values
PLSRV_XML_VALIDATION_RQ_INB
1
Pipeline Service: XML Validation of Payload (Request, Inbound)
PERSIST_INSERT_MESSAGE_LOG
2
Write Log Version to Database
PLSRV_RECEIVER_DETERMINATION
1
Pipeline Service: Receiver Determination
PLSRV_INTERFACE_DETERMINATION
1
Pipeline Service: Interface Determination
PLSRV_RECEIVER_MESSAGE_SPLIT
1
Pipeline Service: Message Branch According to Receiver List
DB_SPLITTER_QUEUING
1
Queuing Step (Outbound)
PERSIST_SPLITTER_READ_MESSAGE
2
Read Data Streams from Database after step DB_SPLITTER_QUEUING
PERSIST_SPLITTER_BUILD_MESSAGE
2
Instantiate Message Object from Data Streams
PLSRV_MAPPING_REQUEST
1
Pipeline Service: Mapping of Request
PLSRV_OUTBOUND_BINDING
1
Pipeline Service:
PLSRV_VIRUS_SCAN_RQ_OUT
1
Pipeline Service: Virus Check of Payload (Request, Outbound)
PLSRV_XML_VALIDATION_RQ_OUT
1
Pipeline Service: XML Validation of Payload (Request, Outbound)
PLSRV_CALL_ADAPTER
1
Pipeline Service: Call Outbound Adapter
MESSAGE_LEVEL_SECURITY_OUT
2
Sub Step of PLSRV_CALL_ADAPTER: Encryption of Payload
SAI_IS_DETAILS_GET
2
Sub Step of PLSRV_CALL_ADAPTER: Read Adapter Engine Properties
HTTP_SEND
1
Sub Step of PLSRV_CALL_ADAPTER: Encapsulation of HTTP Call (Kernel)
HTTP_POST_PROCESS
2
Sub Step of PLSRV_CALL_ADAPTER: Process Response
PERSIST_INSERT_MESSAGE_PROCESSED
2
Write final Message Version to Database
IDOC_OUTBOUND_CONVERSION
2
Get Payload from Message (IDoc Adapter)
PLSRV_VIRUS_SCAN_RS_INB
1
Pipeline Service: Virus Check of Payload (Response, Inbound)
PLSRV_XML_VALIDATION_RS_INB
1
Pipeline Service: XML Validation of Payload (Response, Inbound)
PLSRV_MAPPING_RESPONSE
1
Pipeline Service: Mapping of Response
PLSRV_VIRUS_SCAN_RS_OUT
1
Pipeline Service: Virus Check of Payload (Response, Outbound)
PLSRV_XML_VALIDATION_RS_OUT
1
Pipeline Service: XML Validation of Payload (Response, Outbound)
IS_COMPLETE
1
Execution of Integration Server Complete (Not Part of Performance Header, Visible in Database and Runtime Workbench)
Local Integration Engine (Sender) Step Name
Level
Description
PROXY_OUTBOUND_CREATE
1
Creation of Proxy Framework instance, begin of Outbound Call
PROXY_OUTBOUND_METHOD
1
Execution of Outbound Proxy Method
PROXY_OUTBOUND_RENDER
1
Process Payload of Outbound Request
PROXY_OUTBOUND_XMBCALL
1
Call Local Integration
PROXY_OUTBOUND_PARSE
1
Process Payload of Outbound Response
PROXY_OUTBOUND_COMPLETE
1
Execution of Outbound Proxy Complete (Not Part of Performance Header, Visible in Database and Runtime Workbench)
PLSRV_CALL_INTEGRATION_SERVER
1
Pipeline Service: Call Central Integration Server
IE_COMPLETE
1
Execution of Integration Engine Complete (Not Part of Performance Header, Visible in Database and Runtime Workbench)
Local Integration Engine (Receiver) Step Name
Level
Description
PLSRV_CALL_INBOUND_PROXY
1 Pipeline Service: Call Inbound Proxy
PROXY_INBOUND_METHOD
1
Execution of Inbound Proxy Method
PROXY_INBOUND_PARSE
1
Process Payload of Inbound Request
PROXY_INBOUND_APPLMETH
1
Execution of Application Coding
PROXY_INBOUND_RENDER
1
Process Payload of Inbound Response
The performance monitor allows you to choose the time period for which you want to measure the message processing. You can also choose whether you want to see information for all processed messages, or only for messages with common parameters such as the sender or receiver component, interface, or quality of service.You can also download this data as an Excel sheet and save it locally.
-
Launch the URL http://[host]:[port]/pimon.
- To start the performance monitoring, choose
-
for the Adapter Engine:
- for the Integration Engine:
You can change the component in the Monitored Component field anytime.
-
- Choose the period of time for which you want to see the performance data.
-
Choose the aggregation interval.
If you want to obtain larger amount of details about the performance of message processing in the Adapter Engine you should choose longer aggregation interval.
-
Optionally, choose Advanced Selection and enter the parameters of the messages for which you want to see the performance data.
The parameters you can specify are inbound and outbound channel, sender and receiver party and component, interface and interface namespace, server node, quality of service, and direction.
-
Choose Go .
- To download the data to an Excel sheet, perform the following substeps.
- Choose Export.
-
To download the overview of messages in the aggregation intervals, select Overview from the dropdown list.
In the Export to Excel popup screen, click the link and choose the local path and save the Excel sheet.
Choose Save.
-
To download the detailed information of messages in a particular aggregation interval, select an interval in the topmost table, and choose Detailed Data from the dropdown list.
In the Export to Excel popup screen, click the link and choose the local path and save the Excel sheet.
Results
The system analyses the message processing data and displays the results in a table. The results are grouped into aggregation entities that are displayed in rows. Each entity contains data about message processing performance in a particular aggregation interval within the specified time period. The system displays only aggregation entities where there is data for at least one message.
When you select an entity, the system displays information for the messages in the selected aggregation interval in the Message Scenarios table. The messages in this table are grouped by common parameters; each group is displayed in a separate row. In addition to the basic message parameters, for each group you can see information about the processing time, average processing time, average message size, total message size, and total processing time.
You can select a group to see additional performance details in the Message Processing Details screen area as follows:
-
Choose the Module Information tab to see the amount of time spent by the messages in the selected group at the measuring points.
-
Choose the Message Information tab to see the statistical data for the minimum, average, and maximum message size and number of retries.
When you export the overview, the Excel sheet contains data pertaining to the intervals (topmost table).
When you export the detailed data, the Excel sheet contains the data from the Message Scenarios table and the module data corresponding to the particular aggregation interval.

