When moving from SAP PI to SAP Process Orchestration we should be careful about the settings for staging and logging which is maintained on iFlow / Integrated Configuration (ICO) level. The standard settings (Staging: MS=store, Logging: all=None) are not always the first choice when it comes to a transparent overview of your messages.
Recommendation for Asynchronous Messages:
- Staging
- Message Preparation (BI): Store on error
This makes sure we accept messages before routing takes place. If no receiver is found it can happen that the message remains at the sending system (e.g. IDoc: SM58 or SXI_MONITOR)
- Mapping (AM): Store
This makes sure we store the Inbound (target) Message (after routing & mapping took place) and allows us to see the inbound messages in PIMON which is useful in case a message split took place. Also the payload after the mapping is stored.
- Message Preparation (BI): Store on error
- Logging
- Receiver Determination (MS): Log
This makes sure to log the payload before the mapping took place.
- Receiver Determination (MS): Log
Exceptions:
- In case no mapping is being used, remove the Logging completely (Receiver Determination-MS = None), there is no need for it.
- If you define a routing where you want to ignore certain messages but also show the ignored ones in PIMON, you should activate Message Preparation (BI): Store
- In case of EOIO, please activate Message Preparation (BI): Store as there can be issues with the serialization context
UPDATE: Managing Exceptions can sometimes lead to headache and simplification is preferred where ever possible. So if you look for ONE RULE without exceptions you can follow this settings:
- Staging
- Message Preparation (BI): Store
This makes sure we accept messages before routing takes place. If no receiver is found it can happen that the message remains at the sending system (e.g. IDoc: SM58 or SXI_MONITOR). EOIO and Split Mappings are handled well with this setting. - Mapping (AM): Store
This makes sure we store the Inbound (target) Message again (after routing & mapping took place) and allows us to see the inbound messages in PIMON which is useful in case a message split took place. Also the payload after the mapping is stored. - There will be only one message visible in PIMON (for 1:1 mappings) even to though we have selected two staging steps.
- A Copy of Messages (Successful Retry) can be performed for both staging versions.
- Message Preparation (BI): Store
- Logging
- No need for additional logging as we have both payload versions (before and after mapping persisted through staging)
Recommendation for Synchronous Messages:
(in case you need to log them for test purposes)
- Staging
- There is no staging for synchronous messages. Whatever you configure will be ignored anyway.
- Logging
- Message Preparation (BI): Log
This stores the request source and response target messages - Mapping (AM): Log
This stores the request target and response source messages
- Message Preparation (BI): Log
Background Information (from SAP Help) to highlight at which point of the pipeline processing a message is being staged/logged:
- Staged versions are restartable entities
and can affect only asynchronous messages (EO, EOIO). You can have stages on all important stages per scenario. - Logged versions are non-restartable entities,
generally aimed to keep the payload for monitoring purposes. You cannot restart a message from a logged version, cannot edit the payload etc.; you can just check the payload at a certain step.